gnomint-1.3.0/0000775000175000017500000000000012672104244010173 500000000000000gnomint-1.3.0/src/0000775000175000017500000000000012672104243010761 500000000000000gnomint-1.3.0/src/new_cert.c0000664000175000017500000012430112672054062012657 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef GNOMINTCLI #include #include #endif #include #include #include #include "ca_file.h" #include "tls.h" #include "dialog.h" #include "pkey_manage.h" #include "preferences-gui.h" #include "new_cert.h" #ifndef GNOMINTCLI GtkBuilder * new_cert_window_gtkb = NULL; GtkTreeStore * new_cert_ca_list_model = NULL; enum {NEW_CERT_CA_MODEL_COLUMN_ID=0, NEW_CERT_CA_MODEL_COLUMN_SERIAL=1, NEW_CERT_CA_MODEL_COLUMN_SUBJECT=2, NEW_CERT_CA_MODEL_COLUMN_DN=3, NEW_CERT_CA_MODEL_COLUMN_PARENT_DN=4, NEW_CERT_CA_MODEL_COLUMN_PEM=5, NEW_CERT_CA_MODEL_COLUMN_NUMBER=6} NewCertCaListModelColumns; typedef struct { GtkTreeStore * new_model; GtkTreeIter * last_parent_iter; GtkTreeIter * last_ca_iter; } __NewCertWindowRefreshModelAddCaUserData; typedef struct { gboolean found; GtkTreeIter * iter; const gchar *ca_id; } __NewCertWindowFindCaUserData; int __new_cert_window_refresh_model_add_ca (void *pArg, int argc, char **argv, char **columnNames); void __new_cert_populate_ca_treeview (GtkTreeView *treeview); gboolean __new_cert_window_find_ca (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data); int __new_cert_window_refresh_model_add_ca (void *pArg, int argc, char **argv, char **columnNames) { GValue *last_dn_value = g_new0 (GValue, 1); GValue *last_parent_dn_value = g_new0 (GValue, 1); GtkTreeIter iter; __NewCertWindowRefreshModelAddCaUserData *pdata = (__NewCertWindowRefreshModelAddCaUserData *) pArg; GtkTreeStore * new_model = pdata->new_model; const gchar * string_value; // First we check if this is the first CA, or is a self-signed certificate if (! pdata->last_ca_iter || (! strcmp (argv[NEW_CERT_CA_MODEL_COLUMN_DN],argv[NEW_CERT_CA_MODEL_COLUMN_PARENT_DN])) ) { if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = NULL; } else { // If not, then we must find the parent of the current nod gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), pdata->last_ca_iter, NEW_CERT_CA_MODEL_COLUMN_DN, last_dn_value); gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), pdata->last_ca_iter, NEW_CERT_CA_MODEL_COLUMN_PARENT_DN, last_parent_dn_value); string_value = g_value_get_string (last_dn_value); g_assert (string_value); if (! strcmp (argv[NEW_CERT_CA_MODEL_COLUMN_PARENT_DN], string_value)) { // Last node is parent of the current node if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = gtk_tree_iter_copy (pdata->last_ca_iter); } else { // We go back in the hierarchical tree, starting in the current parent, until we find the parent of the // current certificate. while (pdata->last_parent_iter && strcmp (argv[NEW_CERT_CA_MODEL_COLUMN_PARENT_DN], g_value_get_string(last_parent_dn_value))) { if (! gtk_tree_model_iter_parent(GTK_TREE_MODEL(new_model), &iter, pdata->last_parent_iter)) { // Last ca iter is a top_level if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = NULL; } else { if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = gtk_tree_iter_copy (&iter); } g_value_unset (last_parent_dn_value); gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), pdata->last_parent_iter, NEW_CERT_CA_MODEL_COLUMN_DN, last_parent_dn_value); } } } gtk_tree_store_append (new_model, &iter, pdata->last_parent_iter); gtk_tree_store_set (new_model, &iter, 0, atoll(argv[NEW_CERT_CA_MODEL_COLUMN_ID]), 1, atoll(argv[NEW_CERT_CA_MODEL_COLUMN_SERIAL]), 2, argv[NEW_CERT_CA_MODEL_COLUMN_SUBJECT], 3, argv[NEW_CERT_CA_MODEL_COLUMN_DN], 4, argv[NEW_CERT_CA_MODEL_COLUMN_PARENT_DN], 5, argv[NEW_CERT_CA_MODEL_COLUMN_PEM], -1); if (pdata->last_ca_iter) gtk_tree_iter_free (pdata->last_ca_iter); pdata->last_ca_iter = gtk_tree_iter_copy (&iter); g_free (last_dn_value); g_free (last_parent_dn_value); return 0; } void __new_cert_populate_ca_treeview (GtkTreeView *treeview) { GtkCellRenderer * renderer = NULL; __NewCertWindowRefreshModelAddCaUserData pdata; new_cert_ca_list_model = gtk_tree_store_new (NEW_CERT_CA_MODEL_COLUMN_NUMBER, G_TYPE_UINT64, G_TYPE_UINT64, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); pdata.new_model = new_cert_ca_list_model; pdata.last_parent_iter = NULL; pdata.last_ca_iter = NULL; ca_file_foreach_ca (__new_cert_window_refresh_model_add_ca, &pdata); if (pdata.last_parent_iter) gtk_tree_iter_free (pdata.last_parent_iter); if (pdata.last_ca_iter) gtk_tree_iter_free (pdata.last_ca_iter); g_dataset_destroy (new_cert_ca_list_model); renderer = GTK_CELL_RENDERER (gtk_cell_renderer_text_new()); gtk_tree_view_insert_column_with_attributes (treeview, -1, _("Subject"), renderer, "markup", NEW_CERT_CA_MODEL_COLUMN_SUBJECT, NULL); gtk_tree_view_set_model (treeview, GTK_TREE_MODEL(new_cert_ca_list_model)); gtk_tree_view_expand_all (treeview); return; } G_MODULE_EXPORT void new_cert_signing_ca_treeview_cursor_changed (GtkTreeView *treeview, gpointer userdata) { GtkTreeSelection *selection = gtk_tree_view_get_selection (treeview); if (gtk_tree_selection_count_selected_rows(selection) == 0) gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (new_cert_window_gtkb, "new_cert_next2")), FALSE); else gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (new_cert_window_gtkb, "new_cert_next2")), TRUE); } gboolean __new_cert_window_find_ca (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data) { __NewCertWindowFindCaUserData *userdata = (__NewCertWindowFindCaUserData *) data; guint64 ca_id; gtk_tree_model_get (model, iter, NEW_CERT_CA_MODEL_COLUMN_ID, &ca_id, -1); if (ca_id == atoll(userdata->ca_id)) { userdata->found = TRUE; *(userdata->iter) = (*iter); return TRUE; } return FALSE; } void new_cert_window_display(const guint64 csr_id, const gchar *csr_pem, const gchar *csr_parent_id) { GObject * object; TlsCsr * csr_info = NULL; csr_info = tls_parse_csr_pem (csr_pem); new_cert_window_gtkb = gtk_builder_new(); gtk_builder_add_from_file (new_cert_window_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "new_cert_window.ui", NULL ), NULL); gtk_builder_connect_signals (new_cert_window_gtkb, NULL); object = gtk_builder_get_object (new_cert_window_gtkb, "new_cert_window"); g_object_set_data_full (G_OBJECT(object), "csr_info", csr_info, (GDestroyNotify) tls_csr_free); g_object_set_data (G_OBJECT(object), "csr_id", g_strdup_printf ("%" G_GUINT64_FORMAT, csr_id)); object = gtk_builder_get_object (new_cert_window_gtkb, "c_label"); gtk_label_set_text (GTK_LABEL(object), csr_info->c); object = gtk_builder_get_object (new_cert_window_gtkb, "st_label"); gtk_label_set_text (GTK_LABEL(object), csr_info->st); object = gtk_builder_get_object (new_cert_window_gtkb, "l_label"); gtk_label_set_text (GTK_LABEL(object), csr_info->l); object = gtk_builder_get_object (new_cert_window_gtkb, "o_label"); gtk_label_set_text (GTK_LABEL(object), csr_info->o); object = gtk_builder_get_object (new_cert_window_gtkb, "ou_label"); gtk_label_set_text (GTK_LABEL(object), csr_info->ou); object = gtk_builder_get_object (new_cert_window_gtkb, "cn_label"); gtk_label_set_text (GTK_LABEL(object), csr_info->cn); object = gtk_builder_get_object (new_cert_window_gtkb, "signing_ca_treeview"); __new_cert_populate_ca_treeview (GTK_TREE_VIEW(object)); if (csr_parent_id) { GtkTreeIter iter; GtkTreeModel *model = gtk_tree_view_get_model (GTK_TREE_VIEW(object)); __NewCertWindowFindCaUserData *userdata = g_new0 (__NewCertWindowFindCaUserData, 1); userdata->iter = &iter; userdata->ca_id = csr_parent_id; gtk_tree_model_foreach (model, __new_cert_window_find_ca, userdata); if (userdata->found) { GtkTreeSelection *selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(object)); gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE); gtk_tree_selection_select_iter (selection, &iter); } g_free (userdata); } } void new_cert_tab_activate (int tab_number) { GtkNotebook *notebook = GTK_NOTEBOOK(gtk_builder_get_object (new_cert_window_gtkb, "new_cert_notebook")); gtk_notebook_set_current_page (notebook, tab_number); } G_MODULE_EXPORT void on_new_cert_next2_clicked (GtkButton *button, gpointer user_data) { // Whenever gnoMint support more than one CA, here we will // have to select the CA for signing the CSR. // Meanwhile, we choose the unique CA, and determine its policy. GtkTreeView *treeview = GTK_TREE_VIEW(gtk_builder_get_object(new_cert_window_gtkb, "signing_ca_treeview")); GtkTreeSelection *selection = gtk_tree_view_get_selection (treeview); GValue *value = g_new0(GValue, 1); GtkTreeModel *model; GtkTreeIter iter; GObject * object; guint i_value; guint64 ca_id; const gchar *ca_pem; TlsCert *tls_ca_cert = NULL; TlsCsr * tls_csr = g_object_get_data (G_OBJECT(gtk_builder_get_object(new_cert_window_gtkb, "new_cert_window")), "csr_info"); gtk_tree_selection_get_selected (selection, &model, &iter); gtk_tree_model_get_value (model, &iter, NEW_CERT_CA_MODEL_COLUMN_ID, value); ca_id = g_value_get_uint64(value); g_value_unset (value); gtk_tree_model_get_value (model, &iter, NEW_CERT_CA_MODEL_COLUMN_PEM, value); ca_pem = g_value_get_string(value); tls_ca_cert = tls_parse_cert_pem (ca_pem); g_free (value); /* Check for differences in fields that must be equal according to the CA policy */ if (ca_file_policy_get_int (ca_id, "C_FORCE_SAME") && (tls_ca_cert->c != tls_csr->c) && // If they are the same, they both are NULL, so it is OK (tls_ca_cert->c == NULL || tls_csr->c == NULL || strcmp(tls_ca_cert->c, tls_csr->c))) { dialog_error (_("The policy of this CA obligue the country field of the certificates to be the same as the one in the CA cert.")); return; } if (ca_file_policy_get_int (ca_id, "ST_FORCE_SAME") && (tls_ca_cert->st != tls_csr->st) && // If they are the same, they both are NULL, so it is OK (tls_ca_cert->st == NULL || tls_csr->st == NULL || strcmp(tls_ca_cert->st, tls_csr->st))) { dialog_error (_("The policy of this CA obligue the state/province field of the certificates to be the same as the one in the CA cert.")); return; } if (ca_file_policy_get_int (ca_id, "L_FORCE_SAME") && (tls_ca_cert->l != tls_csr->l) && // If they are the same, they both are NULL, so it is OK (tls_ca_cert->l == NULL || tls_csr->st == NULL || strcmp(tls_ca_cert->l, tls_csr->l))) { dialog_error (_("The policy of this CA obligue the locality/city field of the certificates to be the same as the one in the CA cert.")); return; } if (ca_file_policy_get_int (ca_id, "O_FORCE_SAME") && (tls_ca_cert->o != tls_csr->o) && // If they are the same, they both are NULL, so it is OK (tls_ca_cert->o == NULL || tls_csr->o == NULL || strcmp(tls_ca_cert->o, tls_csr->o))) { dialog_error (_("The policy of this CA obligue the organization field of the certificates to be the same as the one in the CA cert.")); return; } if (ca_file_policy_get_int (ca_id, "OU_FORCE_SAME") && (tls_ca_cert->ou != tls_csr->ou) && // If they are the same, they both are NULL, so it is OK (tls_ca_cert->ou == NULL || tls_csr->ou == NULL || strcmp(tls_ca_cert->ou, tls_csr->ou))) { dialog_error (_("The policy of this CA obligue the organizational unit field of the certificates to be the same as the one in the CA cert.")); return; } tls_cert_free (tls_ca_cert); i_value = ca_file_policy_get_int (ca_id, "MONTHS_TO_EXPIRE"); object = gtk_builder_get_object (new_cert_window_gtkb, "months_before_expiration_spinbutton1"); gtk_spin_button_set_range (GTK_SPIN_BUTTON(object), 1, i_value); gtk_spin_button_set_value (GTK_SPIN_BUTTON(object), i_value); i_value = ca_file_policy_get_int (ca_id, "CA"); object = gtk_builder_get_object (new_cert_window_gtkb, "ca_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); /* i_value = ca_file_policy_get_int (ca_id, "CERT_SIGN")); */ /* object = gtk_builder_get_object (new_cert_window_gtkb, "cert_signing_check2"); */ /* gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); */ i_value = ca_file_policy_get_int (ca_id, "CRL_SIGN"); object = gtk_builder_get_object (new_cert_window_gtkb, "crl_signing_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); i_value = ca_file_policy_get_int (ca_id, "NON_REPUDIATION"); object = gtk_builder_get_object (new_cert_window_gtkb, "non_repudiation_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); i_value = ca_file_policy_get_int (ca_id, "DIGITAL_SIGNATURE"); object = gtk_builder_get_object (new_cert_window_gtkb, "digital_signature_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); i_value = ca_file_policy_get_int (ca_id, "KEY_ENCIPHERMENT"); object = gtk_builder_get_object (new_cert_window_gtkb, "key_encipherment_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); i_value = ca_file_policy_get_int (ca_id, "KEY_AGREEMENT"); object = gtk_builder_get_object (new_cert_window_gtkb, "key_agreement_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); i_value = ca_file_policy_get_int (ca_id, "DATA_ENCIPHERMENT"); object = gtk_builder_get_object (new_cert_window_gtkb, "data_encipherment_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); i_value = ca_file_policy_get_int (ca_id, "TLS_WEB_SERVER"); object = gtk_builder_get_object (new_cert_window_gtkb, "webserver_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); i_value = ca_file_policy_get_int (ca_id, "TLS_WEB_CLIENT"); object = gtk_builder_get_object (new_cert_window_gtkb, "webclient_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); i_value = ca_file_policy_get_int (ca_id, "TIME_STAMPING"); object = gtk_builder_get_object (new_cert_window_gtkb, "time_stamping_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); i_value = ca_file_policy_get_int (ca_id, "CODE_SIGNING"); object = gtk_builder_get_object (new_cert_window_gtkb, "code_signing_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); i_value = ca_file_policy_get_int (ca_id, "EMAIL_PROTECTION"); object = gtk_builder_get_object (new_cert_window_gtkb, "email_protection_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); i_value = ca_file_policy_get_int (ca_id, "OCSP_SIGNING"); object = gtk_builder_get_object (new_cert_window_gtkb, "ocsp_signing_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); i_value = ca_file_policy_get_int (ca_id, "ANY_PURPOSE"); object = gtk_builder_get_object (new_cert_window_gtkb, "any_purpose_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(object), i_value); gtk_widget_set_sensitive (GTK_WIDGET(object), i_value); new_cert_tab_activate (2); } G_MODULE_EXPORT void on_new_cert_previous2_clicked (GtkButton *widget, gpointer user_data) { new_cert_tab_activate (0); } G_MODULE_EXPORT void on_new_cert_next1_clicked (GtkButton *button, gpointer user_data) { new_cert_tab_activate (1); } G_MODULE_EXPORT void on_new_cert_previous3_clicked (GtkButton *widget, gpointer user_data) { new_cert_tab_activate (1); } G_MODULE_EXPORT void on_new_cert_cancel_clicked (GtkButton *widget, gpointer user_data) { GtkWidget * window = GTK_WIDGET(gtk_builder_get_object (new_cert_window_gtkb, "new_cert_window")); gtk_object_destroy(GTK_OBJECT(window)); } G_MODULE_EXPORT void on_new_cert_property_toggled (GtkWidget *button, gpointer user_data) { gboolean is_active; if (! button) return; is_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(button)); if (! strcmp(gtk_widget_get_name (button), "non_repudiation_check")) { if (! is_active) { // TIME_STAMPING cannot be inactive gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "time_stamping_check")), FALSE); // We must check if EMAIL_PROTECTION can be active if (! gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"digital_signature_check"))) && ! gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_encipherment_check"))) && ! gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_agreement_check")))) { // If none is active, we must deactivate EMAIL_PROTECTION gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "email_protection_check")), FALSE); } // We must check if OCSP_SIGNING can be active if (! gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"digital_signature_check")))) { // If is not active, we must deactivate OCSP_SIGNING gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "ocsp_signing_check")), FALSE); } } } if (! strcmp(gtk_widget_get_name (button), "digital_signature_check")) { if (! is_active) { // We must check if TLS_WEB_SERVER can be active if (! gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_encipherment_check"))) && ! gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_agreement_check")))) { // If none is active, we must deactivate TLS_WEB_SERVER gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "webserver_check")), FALSE); } // We must check if TLS_WEB_CLIENT can be active if (! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_agreement_check")))) { // If none is active, we must deactivate TLS_WEB_CLIENT gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "webclient_check")), FALSE); } // TIME_STAMPING and CODE_SIGNING cannot be active if digital signature is deactivated gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb, "time_stamping_check")), FALSE); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb, "code_signing_check")), FALSE); // We must check if EMAIL_PROTECTION can be active if (! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"non_repudiation_check"))) && ! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_encipherment_check"))) && ! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_agreement_check")))) { // If none is active, we must deactivate EMAIL_PROTECTION gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "email_protection_check")), FALSE); } // We must check if OCSP_SIGNING can be active if (! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"non_repudiation_check")))) { // If none is active, we must deactivate OCSP_SIGNING gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "ocsp_signing_check")), FALSE); } } } if (! strcmp(gtk_widget_get_name (button), "key_encipherment_check")) { if (! is_active) { // We must check if TLS_WEB_SERVER can be active if (! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb, "digital_signature_check"))) && ! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_agreement_check")))) { // If none is active, we must deactivate TLS_WEB_SERVER gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "webserver_check")), FALSE); } // We must check if EMAIL_PROTECTION can be active if (! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"digital_signature_check"))) && ! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"non_repudiation_check"))) && ! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_agreement_check")))) { // If none is active, we must deactivate EMAIL_PROTECTION gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "email_protection_check")), FALSE); } } } if (! strcmp(gtk_widget_get_name (button), "key_agreement_check")) { if (! is_active) { // We must check if TLS_WEB_SERVER can be active if (! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"digital_signature_check"))) && ! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_encipherment_check")))) { // If none is active, we must deactivate TLS_WEB_SERVER gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "webserver_check")), FALSE); } // We must check if TLS_WEB_CLIENT can be active if (! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"digital_signature_check")))) { // If none is active, we must deactivate TLS_WEB_CLIENT gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "webclient_check")), FALSE); } // We must check if EMAIL_PROTECTION can be active if (! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"digital_signature_check"))) && ! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"non_repudiation_check"))) && ! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_encipherment_check")))) { // If none is active, we must deactivate EMAIL_PROTECTION gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "email_protection_check")), FALSE); } } } // Purposes if (! strcmp(gtk_widget_get_name (button), "webserver_check")) { if (is_active) { // We must check digitalSignature || keyEncipherment || keyAgreement if (!( gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"digital_signature_check"))) || gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_encipherment_check"))) || gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_agreement_check"))))) { // If none is active, we activate key encipherment gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "key_encipherment_check")), TRUE); } } } if (! strcmp(gtk_widget_get_name (button), "webclient_check")) { if (is_active) { // We must check digitalSignature || keyEncipherment || keyAgreement if (!( gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"digital_signature_check"))) || gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_agreement_check"))))) { // If none is active, we activate digital signature gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "digital_signature_check")), TRUE); } } } if (! strcmp(gtk_widget_get_name (button), "time_stamping_check")){ if (is_active) { // We must check digitalSignature && nonRepudiation if (!( gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"digital_signature_check"))) && gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"non_repudiation_check"))))) { // If none is active, we activate them both gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "digital_signature_check")), TRUE); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "non_repudiation_check")), TRUE); } } } if (! strcmp(gtk_widget_get_name (button), "code_signing_check")) { if (is_active) { gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "digital_signature_check")), TRUE); } } if (! strcmp(gtk_widget_get_name (button), "email_protection_check")) { if (is_active) { // We must check digitalSignature || nonRepudiation || (keyEncipherment || keyAgreement) if (!( gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"digital_signature_check"))) || gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"non_repudiation_check"))) || gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_encipherment_check"))) || gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"key_agreement_check"))))) { // If none is active, we activate key encipherment gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "digital_signature_check")), TRUE); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "key_encipherment_check")), TRUE); } } } if (! strcmp(gtk_widget_get_name (button), "ocsp_signing_check")) { if (is_active) { // We must check digitalSignature || nonRepudiation if (!( gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"digital_signature_check"))) || gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_cert_window_gtkb,"non_repudiation"))))) { // If none is active, we activate digital signature gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_cert_window_gtkb, "digital_signature_check")), TRUE); } } } } G_MODULE_EXPORT void on_new_cert_commit_clicked (GtkButton *widg, gpointer user_data) { GtkTreeView *treeview = GTK_TREE_VIEW(gtk_builder_get_object(new_cert_window_gtkb, "signing_ca_treeview")); GtkTreeSelection *selection = gtk_tree_view_get_selection (treeview); GValue *value = g_new0(GValue, 1); GtkTreeModel *model; GtkTreeIter iter; TlsCertCreationData *cert_creation_data = NULL; GObject *widget = NULL; gint active = -1; guint64 ca_id; gchar * csr_id_str = g_object_get_data (G_OBJECT(gtk_builder_get_object(new_cert_window_gtkb, "new_cert_window")), "csr_id"); guint64 csr_id = atoll(csr_id_str); const gchar *strerror = NULL; gtk_tree_selection_get_selected (selection, &model, &iter); gtk_tree_model_get_value (model, &iter, NEW_CERT_CA_MODEL_COLUMN_ID, value); ca_id = g_value_get_uint64(value); cert_creation_data = g_new0 (TlsCertCreationData, 1); widget = gtk_builder_get_object (new_cert_window_gtkb, "months_before_expiration_spinbutton1"); active = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON(widget)); cert_creation_data->key_months_before_expiration = active; widget = gtk_builder_get_object (new_cert_window_gtkb, "ca_check"); cert_creation_data->ca = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "crl_signing_check"); cert_creation_data->crl_signing = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "digital_signature_check"); cert_creation_data->digital_signature = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "data_encipherment_check"); cert_creation_data->data_encipherment = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "key_encipherment_check"); cert_creation_data->key_encipherment = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "non_repudiation_check"); cert_creation_data->non_repudiation = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "key_agreement_check"); cert_creation_data->key_agreement = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "email_protection_check"); cert_creation_data->email_protection = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "code_signing_check"); cert_creation_data->code_signing = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "webclient_check"); cert_creation_data->web_client = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "webserver_check"); cert_creation_data->web_server = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "time_stamping_check"); cert_creation_data->time_stamping = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "ocsp_signing_check"); cert_creation_data->ocsp_signing = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); widget = gtk_builder_get_object (new_cert_window_gtkb, "any_purpose_check"); cert_creation_data->any_purpose = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); cert_creation_data->crl_distribution_point = ca_file_policy_get (ca_id, "CRL_DISTRIBUTION_POINT"); strerror = new_cert_sign_csr (csr_id, ca_id, cert_creation_data); if (strerror) { dialog_error ((gchar *) strerror); } widget = G_OBJECT(gtk_builder_get_object (new_cert_window_gtkb, "new_cert_window")); gtk_object_destroy(GTK_OBJECT(widget)); dialog_refresh_list(); } #endif const gchar *new_cert_sign_csr (guint64 csr_id, guint64 ca_id, TlsCertCreationData *cert_creation_data) { gchar *csr_pem = NULL; gchar *certificate; gchar *error = NULL; gchar *pem; gchar *dn; gchar *pkey_pem; PkeyManageData *crypted_pkey; time_t tmp; struct tm * expiration_time; tmp = time (NULL); cert_creation_data->activation = tmp; #ifndef WIN32 expiration_time = g_new (struct tm,1); localtime_r (&tmp, expiration_time); #else expiration_time = localtime(&tmp); #endif expiration_time->tm_mon = expiration_time->tm_mon + cert_creation_data->key_months_before_expiration; expiration_time->tm_year = expiration_time->tm_year + (expiration_time->tm_mon / 12); expiration_time->tm_mon = expiration_time->tm_mon % 12; cert_creation_data->expiration = mktime(expiration_time); #ifndef WIN32 g_free (expiration_time); #endif ca_file_get_next_serial (&cert_creation_data->serial, ca_id); csr_pem = ca_file_get_public_pem_from_id (CA_FILE_ELEMENT_TYPE_CSR, csr_id); pem = ca_file_get_public_pem_from_id (CA_FILE_ELEMENT_TYPE_CERT, ca_id); crypted_pkey = pkey_manage_get_certificate_pkey (ca_id); dn = ca_file_get_dn_from_id (CA_FILE_ELEMENT_TYPE_CERT, ca_id); if (pem && crypted_pkey && dn) { TlsCert * ca_cert = tls_parse_cert_pem (pem); /* Check if expiration of the new cert is due after the expiration of the CA certificate. In that case, we reset the expiration date to the CA certificate expiration date, and show a info message. */ if (cert_creation_data->expiration > ca_cert->expiration_time) { dialog_info (_("The expiration date of the new certificate is after the expiration date of the CA certificate.\n\n" "According to the current standards, this is not allowed. The new certificate will be created with the same " "expiration date as the CA certificate.")); cert_creation_data->expiration = ca_cert->expiration_time; } tls_cert_free (ca_cert); PkeyManageData *csr_pkey = NULL; pkey_pem = pkey_manage_uncrypt (crypted_pkey, dn); if (! pkey_pem) { g_free (pem); pkey_manage_data_free (crypted_pkey); g_free (dn); return (_("Error while signing CSR.")); } error = tls_generate_certificate (cert_creation_data, csr_pem, pem, pkey_pem, &certificate); g_free (pkey_pem); if (! error) { csr_pkey = pkey_manage_get_csr_pkey (csr_id); if (csr_pkey) if (csr_pkey->is_in_db) error = ca_file_insert_cert (cert_creation_data->ca, 1, csr_pkey->pkey_data, certificate); else error = ca_file_insert_cert (cert_creation_data->ca, 0, csr_pkey->external_file, certificate); else error = ca_file_insert_cert (cert_creation_data->ca, 0, NULL, certificate); if (!error) ca_file_remove_csr (csr_id); else dialog_error (error); pkey_manage_data_free (csr_pkey); } } if (!error && preferences_get_gnome_keyring_export()) { TlsCert * cert = NULL; gchar *filename = NULL; gchar *directory = NULL; gchar *aux = NULL; cert = tls_parse_cert_pem (certificate); // We must calculate the name of the file. // Basically, it will be the subject DN + issuer DN + sha1 fingerprint // with substitution of non-valid filename characters aux = g_strdup_printf ("%s_%s_%s.pem", cert->dn, cert->i_dn, cert->sha1); aux = g_strcanon (aux, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.", '_'); directory = g_build_filename (g_get_home_dir(), ".gnome2", "keystore", NULL); filename = g_build_filename (g_get_home_dir(), ".gnome2", "keystore", aux, NULL); if (! g_mkdir_with_parents (directory, 0700)) { g_file_set_contents (filename, certificate, strlen(certificate), NULL); } } g_free (pem); pkey_manage_data_free (crypted_pkey); g_free (dn); return error; } gnomint-1.3.0/src/export.h0000664000175000017500000000235712672052326012406 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _EXPORT_H_ #define _EXPORT_H_ #include #include gchar *export_dh_param (guint dh_size, gchar *filename); gchar * export_private_pkcs8 (guint64 id, gint type, gchar *filename); gchar * export_private_pem (guint64 id, gint type, gchar *filename); gchar * export_pkcs12 (guint64 id, gint type, gchar *filename); #endif gnomint-1.3.0/src/import.c0000664000175000017500000013426412672052326012375 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef GNOMINTCLI #include #endif #include #include #include #include "import.h" #include "tls.h" #include "dialog.h" #include "ca_file.h" gchar * __import_ask_password (const gchar *crypted_part_description); gint __import_csr (gnutls_x509_crq_t *crq, gchar ** csr_dn, guint64 *id); gint __import_cert (gnutls_x509_crt_t *cert, gchar ** cert_dn, guint64 *id); gchar * __import_ask_password (const gchar *crypted_part_description) { #ifndef GNOMINTCLI gchar *password; GObject * widget = NULL, * password_widget = NULL, *description_widget = NULL; GtkBuilder * dialog_gtkb = NULL; gchar * label = NULL; gint response = 0; dialog_gtkb = gtk_builder_new(); gtk_builder_add_from_file (dialog_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "import_password_dialog.ui", NULL), NULL); gtk_builder_connect_signals (dialog_gtkb, NULL); password_widget = gtk_builder_get_object (dialog_gtkb, "import_password_entry"); description_widget = gtk_builder_get_object (dialog_gtkb, "import_crypted_part_description"); label = g_strdup_printf ("%s", crypted_part_description); gtk_label_set_markup (GTK_LABEL(description_widget), (const gchar *) label); g_free (label); gtk_widget_grab_focus (GTK_WIDGET(password_widget)); widget = gtk_builder_get_object (dialog_gtkb, "import_password_dialog"); response = gtk_dialog_run(GTK_DIALOG(widget)); if (!response) { gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return NULL; } else { password = g_strdup ((gchar *) gtk_entry_get_text (GTK_ENTRY(password_widget))); } widget = gtk_builder_get_object (dialog_gtkb, "import_password_dialog"); gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return password; #else gchar *password = NULL; gchar *prompt = NULL; printf (_("The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n")); prompt = g_strdup_printf (_("Please introduce password for `%s'"), crypted_part_description); password = dialog_ask_for_password (prompt); g_free (prompt); return password; #endif } gint __import_csr (gnutls_x509_crq_t *crq, gchar ** csr_dn, guint64 *id) { gchar * pem_csr=NULL; size_t size; gchar * error_msg; gint result = -1; gchar *aux = NULL; if (csr_dn) { size = 0; gnutls_x509_crq_get_dn (*crq, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crq_get_dn (*crq, aux, &size); *csr_dn = g_strdup (aux); g_free (aux); aux = NULL; } } size = 0; gnutls_x509_crq_export (*crq, GNUTLS_X509_FMT_PEM, pem_csr, &size) ; if (size) { pem_csr = g_new0(gchar, size); gnutls_x509_crq_export (*crq, GNUTLS_X509_FMT_PEM, pem_csr, &size); } error_msg = ca_file_insert_csr (NULL, pem_csr, NULL, id); if (error_msg) { gchar *message = g_strdup_printf (_("Couldn't import the certificate request. \n" "The database returned this error: \n\n'%s'"), error_msg); dialog_error (message); g_free (message); } else { result = 1; } return result; } gint __import_cert (gnutls_x509_crt_t *cert, gchar **cert_dn, guint64 *id) { guchar *serial_str = NULL; UInt160 serial; gchar * pem_cert=NULL; size_t size; gchar * error_msg; gboolean is_ca; guint is_critical; gchar *aux = NULL; gint result = -1; // For inserting the cert into the database we must get: // - if the certificate is a CA certificate // - serial // - activation time // - expiration time // Is_CA? is_ca = gnutls_x509_crt_get_ca_status (*cert, &is_critical); if (is_ca == GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE) is_ca = FALSE; // Serial size = 0; gnutls_x509_crt_get_serial (*cert, aux, &size); aux = NULL; if (size) { serial_str = g_new0(guchar, size); gnutls_x509_crt_get_serial (*cert, serial_str, &size); uint160_read (&serial, serial_str, size); g_free (serial_str); aux = NULL; } if (cert_dn) { size = 0; gnutls_x509_crt_get_dn (*cert, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_dn (*cert, aux, &size); *cert_dn = g_strdup (aux); g_free (aux); aux = NULL; } } // Now we re-export the PEM (as the original PEM can be a list of certs) size = 0; gnutls_x509_crt_export (*cert, GNUTLS_X509_FMT_PEM, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_export (*cert, GNUTLS_X509_FMT_PEM, aux, &size); pem_cert = g_strdup (aux); g_free (aux); aux = NULL; } error_msg = ca_file_insert_imported_cert (is_ca, serial, pem_cert, id); if (pem_cert) g_free (pem_cert); if (error_msg) { gchar *message = g_strdup_printf (_("Couldn't import the certificate. \n" "The database returned this error: \n\n'%s'"), error_msg); dialog_error (message); g_free (message); } else { result = 1; } return result; } gint __import_crl (gnutls_x509_crl_t *crl) { gint result = -1; gnutls_x509_crt_t issuer_crt; gsize size = 0; gchar *issuer_dn = NULL; gchar *cert_pem = NULL; guint64 issuer_id; gnutls_datum_t file_datum; size = 0; gnutls_x509_crl_get_issuer_dn (*crl, issuer_dn, &size) ; if (size) { issuer_dn = g_new0(gchar, size); gnutls_x509_crl_get_issuer_dn (*crl, issuer_dn, &size); } // First, we search the issuer in the database, using DN if (ca_file_get_id_from_dn (CA_FILE_ELEMENT_TYPE_CERT, issuer_dn, &issuer_id)) { // We check if the supposed issuer is the actual issuer cert_pem = ca_file_get_public_pem_from_id (CA_FILE_ELEMENT_TYPE_CERT, issuer_id); if (gnutls_x509_crt_init (&issuer_crt) < 0) { g_free (issuer_dn); g_free (cert_pem); return result; } file_datum.data = (guchar *) cert_pem; file_datum.size = strlen(cert_pem); if (gnutls_x509_crt_import (issuer_crt, &file_datum, GNUTLS_X509_FMT_PEM) == GNUTLS_E_SUCCESS) { if (gnutls_x509_crl_check_issuer (*crl, issuer_crt)) { int number_of_certs; int i; // If it is, we recover all the certificates number_of_certs = gnutls_x509_crl_get_crt_count(*crl); for (i=0; i 0) { int i; // We go through all the certificates in inverse // order, as it's usual having a list of certificates conforming a // certification path, with the root CA certificate as the last // certificate result = -1; for (i = num_certs - 1; i>=0; i--) { if (cert_dn && *cert_dn) { g_free (*cert_dn); *cert_dn = NULL; } if (__import_cert (&certs[i], cert_dn, id) > 0) result = 1; } g_free (certs); return result; } // Trying to import a single certificate in DER format if (gnutls_x509_crt_init (&cert) < 0) return 0; if (gnutls_x509_crt_import (cert, &file_datum, GNUTLS_X509_FMT_DER) == 0) { result = __import_cert (&cert, cert_dn, id); } gnutls_x509_crt_deinit (cert); return result; } gint import_pkey_wo_passwd (guchar *file_contents, gsize file_contents_size) { gint result = 0; gnutls_x509_privkey_t privkey; gnutls_datum_t file_datum; gchar *result_import; file_datum.data = file_contents; file_datum.size = file_contents_size; // Trying to import a Private Key in PEM format if (gnutls_x509_privkey_init (&privkey) < 0) return 0; // Trying to import a Private Key in DER format if (gnutls_x509_privkey_import (privkey, &file_datum, GNUTLS_X509_FMT_PEM) == 0 || gnutls_x509_privkey_import (privkey, &file_datum, GNUTLS_X509_FMT_DER) == 0) { gchar * pem_privkey=NULL; size_t size; result = -1; size = 0; gnutls_x509_privkey_export (privkey, GNUTLS_X509_FMT_PEM, pem_privkey, &size) ; if (size) { pem_privkey = g_new0(gchar, size); gnutls_x509_privkey_export (privkey, GNUTLS_X509_FMT_PEM, pem_privkey, &size); } result_import = ca_file_insert_imported_privkey (pem_privkey); if (result_import) { dialog_error (result_import); } else { result = 1; } g_free (pem_privkey); } gnutls_x509_privkey_deinit (privkey); return result; } gint import_crl (guchar *file_contents, gsize file_contents_size) { gint result = 0; gnutls_x509_crl_t crl; gnutls_datum_t file_datum; file_datum.data = file_contents; file_datum.size = file_contents_size; // Trying to import a Certificate Revocation List in PEM format if (gnutls_x509_crl_init (&crl) < 0) return 0; if (gnutls_x509_crl_import (crl, &file_datum, GNUTLS_X509_FMT_PEM) != 0 && gnutls_x509_crl_import (crl, &file_datum, GNUTLS_X509_FMT_DER) != 0) { // The given file is not a DER-coded CRL, neither a PEM-coded CRL gnutls_x509_crl_deinit (crl); return 0; } result = __import_crl (&crl); gnutls_x509_crl_deinit (crl); return result; } /* PKCS#7 importing was removed in libgnutls 2.6.0 */ /* gint import_pkcs7 (guchar *file_contents, gsize file_contents_size) */ /* { */ /* gboolean successful_import = FALSE; */ /* gnutls_pkcs7_t pkcs7; */ /* gnutls_datum_t file_datum; */ /* file_datum.data = file_contents; */ /* file_datum.size = file_contents_size; */ /* // Trying to import a Private Key in PEM format */ /* if (gnutls_pkcs7_init (&pkcs7) < 0) */ /* return FALSE; */ /* // Trying to import a Private Key in DER format */ /* if (gnutls_pkcs7_import (pkcs7, &file_datum, GNUTLS_X509_FMT_PEM) == 0 || */ /* gnutls_pkcs7_import (pkcs7, &file_datum, GNUTLS_X509_FMT_DER) == 0) { */ /* int i; */ /* int certs_no = gnutls_pkcs7_get_crt_count (pkcs7); */ /* int crl_no = gnutls_pkcs7_get_crl_count (pkcs7); */ /* for (i=0; i < certs_no; i++) { */ /* guchar *raw_cert = NULL; */ /* gsize raw_cert_size = 0; */ /* gnutls_pkcs7_get_crt_raw (pkcs7, i, raw_cert, &raw_cert_size); */ /* raw_cert = g_new0(guchar, raw_cert_size); */ /* gnutls_pkcs7_get_crt_raw (pkcs7, i, raw_cert, &raw_cert_size); */ /* import_certlist (raw_cert, raw_cert_size); */ /* g_free (raw_cert); */ /* } */ /* for (i=0; i < crl_no; i++) { */ /* guchar *raw_crl = NULL; */ /* gsize raw_crl_size = 0; */ /* gnutls_pkcs7_get_crl_raw (pkcs7, i, raw_crl, &raw_crl_size); */ /* raw_crl = g_new0(guchar, raw_crl_size); */ /* gnutls_pkcs7_get_crl_raw (pkcs7, i, raw_crl, &raw_crl_size); */ /* import_crl (raw_crl, raw_crl_size); */ /* g_free (raw_crl); */ /* } */ /* successful_import = TRUE; */ /* } */ /* gnutls_pkcs7_deinit (pkcs7); */ /* return successful_import; */ /* } */ gint import_pkcs8 (guchar *file_contents, gsize file_contents_size) { gint result = 0; gnutls_x509_privkey_t privkey; gnutls_datum_t file_datum; file_datum.data = file_contents; file_datum.size = file_contents_size; // Trying to import a Private Key in PEM format if (gnutls_x509_privkey_init (&privkey) < 0) return 0; // Trying to import a Private Key in DER format if (gnutls_x509_privkey_import_pkcs8 (privkey, &file_datum, GNUTLS_X509_FMT_PEM, NULL, GNUTLS_PKCS_PLAIN) == 0 || gnutls_x509_privkey_import_pkcs8 (privkey, &file_datum, GNUTLS_X509_FMT_DER, NULL, GNUTLS_PKCS_PLAIN) == 0) { result = -1; gchar * pem_privkey=NULL; gchar * error_msg = NULL; size_t size; size = 0; gnutls_x509_privkey_export (privkey, GNUTLS_X509_FMT_PEM, pem_privkey, &size) ; if (size) { pem_privkey = g_new0(gchar, size); gnutls_x509_privkey_export (privkey, GNUTLS_X509_FMT_PEM, pem_privkey, &size); } error_msg = ca_file_insert_imported_privkey (pem_privkey); if (error_msg) { dialog_error (error_msg); } else { result = 1; } g_free (pem_privkey); } else { // Now we check if the given file is a PEM codified encrypted private key: while trying to import, // the password won't be correct. gint result_decryption = gnutls_x509_privkey_import_pkcs8 (privkey, &file_datum, GNUTLS_X509_FMT_PEM, NULL, 0); while (result_decryption==GNUTLS_E_DECRYPTION_FAILED) { // We mark a successful import, as it is a PKCS#8 cyphered file: it must not be probed with other formats. result = -1; // We launch a window for asking the password. gchar * password = __import_ask_password (_("PKCS#8 crypted private key")); if (! password) { gnutls_x509_privkey_deinit (privkey); return result; } result_decryption = gnutls_x509_privkey_import_pkcs8 (privkey, &file_datum, GNUTLS_X509_FMT_PEM, password, 0); g_free (password); if (result_decryption == GNUTLS_E_DECRYPTION_FAILED) { dialog_error (_("The given password doesn't match the one used for crypting this part")); } } if (result_decryption == GNUTLS_E_SUCCESS) { gchar * pem_privkey=NULL; size_t size; gchar * error_msg = NULL; result = -1; size = 0; gnutls_x509_privkey_export (privkey, GNUTLS_X509_FMT_PEM, pem_privkey, &size) ; if (size) { pem_privkey = g_new0(gchar, size); gnutls_x509_privkey_export (privkey, GNUTLS_X509_FMT_PEM, pem_privkey, &size); } error_msg = ca_file_insert_imported_privkey (pem_privkey); if (error_msg) { dialog_error (error_msg); } else { result = 1; } g_free (pem_privkey); } // Importing DER-codified encrypted private keys is not supported, as they cannot be probed without // a password. } gnutls_x509_privkey_deinit (privkey); return result; } gint import_pkcs12 (guchar *file_contents, gsize file_contents_size) { gint result = 0; gnutls_pkcs12_t pkcs12; gnutls_datum_t file_datum; file_datum.data = file_contents; file_datum.size = file_contents_size; // Trying to import a Private Key in PEM format if (gnutls_pkcs12_init (&pkcs12) < 0) return result; // Trying to import a PKCS#12 in PEM or DER format if (gnutls_pkcs12_import (pkcs12, &file_datum, GNUTLS_X509_FMT_PEM, 0) == 0 || gnutls_pkcs12_import (pkcs12, &file_datum, GNUTLS_X509_FMT_DER, 0) == 0) { guint n_bags = 0; gnutls_pkcs12_bag_t *pkcs12_aux_bag = NULL; GArray *pkcs_bag_array = g_array_new (FALSE, TRUE, sizeof(gnutls_pkcs12_bag_t)); gint get_bag_status; gchar *password = NULL; guint i; result = -1; // Now, we walk through all the bags in the PKCS12 structure // inserting them into an array for walking through them afterwards do { pkcs12_aux_bag = g_new0 (gnutls_pkcs12_bag_t, 1); gnutls_pkcs12_bag_init (pkcs12_aux_bag); get_bag_status = gnutls_pkcs12_get_bag (pkcs12, n_bags, *pkcs12_aux_bag); if (get_bag_status == GNUTLS_E_SUCCESS) { g_array_append_val (pkcs_bag_array, pkcs12_aux_bag); n_bags ++; } else { gnutls_pkcs12_bag_deinit (*pkcs12_aux_bag); g_free (pkcs12_aux_bag); } } while (get_bag_status == GNUTLS_E_SUCCESS); if (n_bags == 0) { // Couldn't get any bag. // Exiting with error gnutls_pkcs12_deinit (pkcs12); return result; } // Now, we first uncrypt all crypted bags for (i=0; imessage)); return FALSE; } file_contents_size = g_mapped_file_get_length (mapped_file); file_contents = g_new0 (guchar, file_contents_size); memcpy (file_contents, g_mapped_file_get_contents (mapped_file), file_contents_size); g_mapped_file_unref(mapped_file); // We start to check each type of file, in PEM and DER // formats, for see if some of them matches with the actual file // Certificate request successful_import = import_csr (file_contents, file_contents_size, dn, id); // Certificate list (or single certificate) if (! successful_import) successful_import = import_certlist (file_contents, file_contents_size, dn, id); // Private key without password if (! successful_import) successful_import = import_pkey_wo_passwd (file_contents, file_contents_size); // Certificate revocation list if (! successful_import) successful_import = import_crl (file_contents, file_contents_size); /* PKCS7 importing was removed in libgnutls 2.6.0 */ /* // PKCS7 structure */ /* if (! successful_import) */ /* successful_import = import_pkcs7 (file_contents, file_contents_size); */ // PKCS12 structure if (! successful_import) successful_import = import_pkcs12 (file_contents, file_contents_size); // PKCS8 privkey structure if (! successful_import) successful_import = import_pkcs8 (file_contents, file_contents_size); g_free (file_contents); if (successful_import) { dialog_refresh_list(); } else { dialog_error (_("Couldn't find any supported format in the given file")); } return TRUE; } gint import_openssl_private_key (const gchar *filename, gchar **last_password, gchar *file_description) { guint result = 0; gchar *filecontents = NULL; if (! g_file_get_contents (filename, &filecontents, NULL, NULL)) { gchar *message = g_strdup_printf(_("Couldn't open %s file. Check permissions."), filename); dialog_error (message); g_free (message); return result; } if (g_strrstr (filecontents, "Proc-Type") && g_strrstr (filecontents, "DEK-Info")) { // The file is codified with a proprietary OpenSSL format // so we call openssl for decoding it gchar *keytype = NULL; gchar *uncyphered_cakey = NULL; gchar *error_message = NULL; gchar *temp_pwd = NULL; gint exit_status = 0; GError *gerror = NULL; gchar *opensslargv[7]; gboolean first_time = TRUE; if (g_strrstr (filecontents, "BEGIN RSA")) { keytype = "rsa"; } if (g_strrstr (filecontents, "BEGIN DSA")) { keytype = "dsa"; } if (!keytype) { gchar * message = g_strdup_printf(_("Couldn't recognize the file %s as a RSA or DSA private key."), filename); dialog_error (message); g_free (message); g_free (filecontents); return result; } do { gchar *description; gchar *dirname = NULL; if (! first_time || ! *last_password) { // We ask for a password only if there is no current password // or if the current password has already failed. if (file_description) description = g_strdup_printf (_("Private key for %s"),file_description); else description = g_strdup_printf (_("Private key %s"), filename); *last_password = __import_ask_password (description); g_free (description); if (*last_password == NULL) { g_free (filecontents); break; } } temp_pwd = g_strdup_printf ("pass:%s", *last_password); opensslargv[0] = "openssl"; opensslargv[1] = keytype; opensslargv[2] = "-in"; opensslargv[3] = (gchar *) filename; opensslargv[4] = "-passin"; opensslargv[5] = temp_pwd; opensslargv[6] = NULL; dirname = g_path_get_dirname (filename); if (! g_spawn_sync (dirname, opensslargv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, &uncyphered_cakey, &error_message, &exit_status, &gerror)) { // Problem while launching openssl... g_free (filecontents); g_free (temp_pwd); g_free (dirname); dialog_error (_("Problem while calling to openssl for decyphering private key.")); break; } g_free (dirname); g_free (temp_pwd); if (exit_status != 0) { gchar *error_to_show = g_strdup_printf (_("OpenSSL has returned the following error " "while trying to decypher the private key:\n\n%s"), error_message); dialog_error (error_to_show); g_free (error_to_show); first_time = FALSE; } } while (exit_status != 0); if (* last_password == NULL || gerror) { return result; } g_free (filecontents); if (error_message) g_free (error_message); filecontents = uncyphered_cakey; } // Now, we import the uncyphered private key: result = import_pkey_wo_passwd ((guchar *) filecontents, strlen(filecontents)); if (result == 1) dialog_refresh_list(); g_free (filecontents); return result; } gchar * import_whole_dir (gchar *dirname) { gchar *result = NULL; gchar *filename = NULL; const gchar *int_filename = NULL; guint CA_directory_type = 0; gboolean error = FALSE; gchar *ca_password = NULL; GError *gerror = NULL; GDir * dir = NULL; GList * problematic_files = NULL, *cursor = NULL; GHashTable *descriptions = NULL; guint64 ca_root_id; gchar *filecontents = NULL; UInt160 next_serial; // First, we try to probe if this is really a CA-containing directory // * Try to detect OpenSSL CA.pl or TinyCA { filename = g_build_filename (dirname, "cacert.pem", NULL); if (! g_file_test(filename, G_FILE_TEST_IS_REGULAR)) { error = TRUE; } g_free (filename); filename = g_build_filename (dirname, "serial", NULL); if (! g_file_test(filename, G_FILE_TEST_IS_REGULAR)) { error = TRUE; } g_free (filename); filename = g_build_filename (dirname, "certs", NULL); if (! g_file_test(filename, G_FILE_TEST_IS_DIR)) { error = TRUE; } g_free (filename); filename = g_build_filename (dirname, "crl", NULL); if (! g_file_test(filename, G_FILE_TEST_IS_DIR)) { error = TRUE; } g_free (filename); filename = g_build_filename (dirname, "cacert.key", NULL); if (! g_file_test(filename, G_FILE_TEST_IS_REGULAR)) { g_free (filename); filename = g_build_filename (dirname, "private", "cakey.pem", NULL); if (! g_file_test(filename, G_FILE_TEST_IS_REGULAR)) { error = TRUE; } else { if (! error) CA_directory_type = 2; // OpenSSL CA.pl } } g_free (filename); if (! error && ! CA_directory_type) { CA_directory_type = 1; //TinyCA } if (error) { CA_directory_type = 0; } } // * Other formats... (?) switch (CA_directory_type) { case 1: case 2: descriptions = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); // First we import the public CA root certificate filename = g_build_filename (dirname, "cacert.pem", NULL); if (import_single_file (filename, NULL, &ca_root_id) == FALSE) { g_free (filename); result = _("There was a problem while importing the public CA root certificate"); break; } g_free (filename); // Now we import the private CA root-certificate private key // Usually, it is crypted in a OpenSSL proprietary format. // Let's check it: if (CA_directory_type == 1 /* TinyCA */) { filename = g_build_filename (dirname, "cacert.key", NULL); } else { /* CA_directory_type == 2 (OpenSSL's CA.pl) */ filename = g_build_filename (dirname, "private", "cakey.pem", NULL); } if (import_openssl_private_key (filename, &ca_password, _("CA Root certificate")) == 0) { g_free (filename); result = _("There was a problem while importing the private key corresponding to CA root certificate"); break; } g_free (filename); // Now we import all the certificates emitted by the CA filename = g_build_filename (dirname, "certs", NULL); dir = g_dir_open (filename, 0, &gerror); if (! dir) { g_free (filename); result = _("There was a problem while opening the directory certs/."); } else { g_free (filename); while ((int_filename = g_dir_read_name (dir))) { if (g_strrstr (int_filename, ".pem")) { gchar *description = NULL; filename = g_build_filename (dirname, "certs", int_filename, NULL); if (import_single_file ((gchar *) filename, &description, NULL) == 0) { problematic_files = g_list_append (problematic_files, g_strdup(filename)); } else { if (description && ! g_hash_table_lookup (descriptions, int_filename)) g_hash_table_insert (descriptions, g_strdup(int_filename), description); } g_free (filename); } } g_dir_close (dir); } filename = g_build_filename (dirname, "newcerts", NULL); if (g_file_test(filename, G_FILE_TEST_IS_DIR)) { dir = g_dir_open (filename, 0, &gerror); if (! dir) { g_free (filename); result = _("There was a problem while opening the directory newcerts/."); } else { g_free (filename); while ((int_filename = g_dir_read_name (dir))) { if (g_strrstr (int_filename, ".pem")) { gchar *description = NULL; filename = g_build_filename (dirname, "newcerts", int_filename, NULL); if (import_single_file ((gchar *) filename, &description, NULL) == 0) { problematic_files = g_list_append (problematic_files, g_strdup(filename)); } else { if (description && ! g_hash_table_lookup (descriptions, int_filename)) g_hash_table_insert (descriptions, g_strdup(int_filename), description); } g_free (filename); } } g_dir_close (dir); } } // Now we import all the CSRs of the CA filename = g_build_filename (dirname, "req", NULL); if (g_file_test(filename, G_FILE_TEST_IS_DIR)) { dir = g_dir_open (filename, 0, &gerror); if (! dir) { g_free (filename); result = _("There was a problem while opening the directory req."); break; } g_free (filename); while ((int_filename = g_dir_read_name (dir))) { if (g_strrstr (int_filename, ".pem")) { gchar *description = NULL; filename = g_build_filename (dirname, "req", int_filename, NULL); if (import_single_file ((gchar *) filename, &description, NULL) == 0) { problematic_files = g_list_append (problematic_files, g_strdup(filename)); } else { if (description && ! g_hash_table_lookup (descriptions, int_filename)) g_hash_table_insert (descriptions, g_strdup(int_filename), description); } g_free (filename); } } g_dir_close (dir); } // Now we import all the CRLs of the CA filename = g_build_filename (dirname, "crl", NULL); dir = g_dir_open (filename, 0, &gerror); if (! dir) { g_free (filename); result = _("There was a problem while opening the directory crl/."); break; } g_free (filename); while ((int_filename = g_dir_read_name (dir))) { if (g_strrstr (int_filename, ".pem")) { filename = g_build_filename (dirname, "crl", int_filename, NULL); if (import_single_file ((gchar *) filename, NULL, NULL) == 0) { problematic_files = g_list_append (problematic_files, g_strdup(filename)); } g_free (filename); } } g_dir_close (dir); // Now we import all the private keys of the CA filename = g_build_filename (dirname, "keys", NULL); if (g_file_test(filename, G_FILE_TEST_IS_DIR)) { dir = g_dir_open (filename, 0, &gerror); if (! dir) { g_free (filename); result = _("There was a problem while opening the directory keys/."); break; } g_free (filename); while ((int_filename = g_dir_read_name (dir))) { if (g_strrstr (int_filename, ".pem")) { gchar *description = NULL; filename = g_build_filename (dirname, "keys", int_filename, NULL); description = g_hash_table_lookup (descriptions, int_filename); if (! description) description = filename; if (import_openssl_private_key (filename, &ca_password, description) == 0) { problematic_files = g_list_append (problematic_files, g_strdup(filename)); } g_free (filename); } } g_dir_close (dir); } // Now we import the last serial number filename = g_build_filename (dirname, "serial", NULL); if (! g_file_get_contents (filename, &filecontents, NULL, NULL)) { gchar *message = g_strdup_printf(_("Couldn't open %s file. Check permissions."), filename); dialog_error (message); g_free (message); return result; } g_free (filename); if (! uint160_assign_hexstr (&next_serial, filecontents)) uint160_assign (&next_serial, 1); g_free (filecontents); ca_file_set_next_serial (&next_serial, ca_root_id); // We must show the problematic files. // TO DO cursor = g_list_first (problematic_files); while (cursor) { g_free (cursor->data); cursor->data = NULL; cursor = cursor->next; } g_list_free (problematic_files); g_hash_table_destroy (descriptions); break; case 0: default: result = _("Files in the directory don't belong to any supported CA format."); break; } return result; } gnomint-1.3.0/src/ca.h0000664000175000017500000000534312672052326011446 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _CA_H_ #define _CA_H_ #include #include #ifndef GNOMINTCLI #include gboolean ca_refresh_model_callback (); gboolean ca_treeview_row_activated (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); gboolean ca_treeview_selection_change (GtkTreeView *tree_view, gpointer user_data); void ca_on_export1_activate (GtkMenuItem *menuitem, gpointer user_data); void ca_on_extractprivatekey1_activate (GtkMenuItem *menuitem, gpointer user_data); void ca_on_revoke_activate (GtkMenuItem *menuitem, gpointer user_data); void ca_on_delete2_activate (GtkMenuItem *menuitem, gpointer user_data); void ca_on_sign1_activate (GtkMenuItem *menuitem, gpointer user_data); gboolean ca_open (gchar *filename, gboolean create); guint64 ca_get_selected_row_id (void); gchar * ca_get_selected_row_pem (void); void ca_update_csr_view (gboolean new_value, gboolean refresh); gboolean ca_csr_view_toggled (GtkCheckMenuItem *button, gpointer user_data); void ca_update_revoked_view (gboolean new_value, gboolean refresh); gboolean ca_rcrt_view_toggled (GtkCheckMenuItem *button, gpointer user_data); void ca_generate_crl (GtkCheckMenuItem *button, gpointer user_data); gboolean ca_treeview_popup_timeout_program_cb (gpointer data); void ca_treeview_popup_timeout_program (GdkEventButton *event); gboolean ca_treeview_popup_handler (GtkTreeView *tree_view, GdkEvent *event, gpointer user_data); void ca_on_change_pwd_menuitem_activate (GtkMenuItem *menuitem, gpointer user_data); gboolean ca_changepwd_newpwd_entry_changed (GtkWidget *entry, gpointer user_data); gboolean ca_changepwd_pwd_protect_radiobutton_toggled (GtkWidget *button, gpointer user_data); void ca_generate_dh_param_show (GtkWidget *menuitem, gpointer user_data); #else #include "ca-cli.h" #endif #endif gnomint-1.3.0/src/ca-cli.h0000664000175000017500000000256112672052326012212 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _CA_CLI_H_ #define _CA_CLI_H_ #include #include typedef int (* CaCommandCallback) (int argc, char **argv); typedef struct _CaCommand { const gchar *command; guint mandatory_params; guint optional_params; gchar *syntax; gchar *help; CaCommandCallback callback; } CaCommand; gboolean ca_refresh_model (void); gboolean ca_open (gchar *filename, gboolean create); void ca_command_line (); #endif gnomint-1.3.0/src/main.h0000664000175000017500000000406312672052326012005 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef __MAIN_H_ #define __MAIN_H_ #include #include #include void on_open_recent_activate (GtkRecentChooser *chooser, gpointer user_data); gboolean on_main_window1_delete (GtkWidget *widget, GdkEvent *event, gpointer user_data); void on_add_self_signed_ca_activate (GtkMenuItem *menuitem, gpointer user_data); void on_add_csr_activate (GtkMenuItem *menuitem, gpointer user_data); void on_new1_activate (GtkMenuItem *menuitem, gpointer user_data); void on_open1_activate (GtkMenuItem *menuitem, gpointer user_data); void on_open_recent_activate (GtkRecentChooser *chooser, gpointer user_data); void on_save_as1_activate (GtkMenuItem *menuitem, gpointer user_data); void on_import1_activate (GtkMenuItem *menuitem, gpointer user_data); void on_quit1_activate (GtkMenuItem *menuitem, gpointer user_data); void on_clear1_activate (GtkMenuItem *menuitem, gpointer user_data); void on_properties1_activate (GtkMenuItem *menuitem, gpointer user_data); void on_preferences1_activate (GtkMenuItem *menuitem, gpointer user_data); void on_about1_activate (GtkMenuItem *menuitem, gpointer user_data); #endif gnomint-1.3.0/src/pkey_manage.c0000664000175000017500000005511512672052326013340 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef GNOMINTCLI #include #include #include #endif #include #include #include #include #include #include #include "tls.h" #include "ca_file.h" #include "dialog.h" #include "pkey_manage.h" #include #define PKEY_MANAGE_ENCRYPTED_PKCS8_HEADER "-----BEGIN ENCRYPTED PRIVATE KEY-----" #define PKEY_MANAGE_UNCRYPTED_PKCS8_HEADER "-----BEGIN PRIVATE KEY-----" gchar * __pkey_manage_ask_external_file_password (const gchar *cert_dn); gchar * __pkey_retrieve_from_file (gchar **fn, gchar *cert_pem); gchar * __pkey_manage_to_hex (const guchar *buffer, size_t len); guchar * __pkey_manage_from_hex (const gchar *input); guchar *__pkey_manage_create_key(const gchar *password); gchar * __pkey_manage_aes_encrypt (const gchar *in, const gchar *password); gchar * __pkey_manage_aes_decrypt (const gchar *string, const gchar *password); gchar * __pkey_manage_aes_encrypt_aux (const gchar *in, const gchar *password, const guchar *iv, const guchar *ctr); gchar * __pkey_manage_aes_decrypt_aux (const gchar *string, const gchar *password, const guchar *iv, const guchar *ctr); #ifndef GNOMINTCLI // CALLBACKS G_MODULE_EXPORT gboolean pkey_manage_filechooser_file_set_cb (GtkFileChooserButton *widget, gpointer user_data); gchar * __pkey_manage_ask_external_file_password (const gchar *cert_dn) { gchar *password; GObject * widget = NULL, * password_widget = NULL, *remember_password_widget = NULL; GtkBuilder * dialog_gtkb = NULL; gint response = 0; gchar *message = NULL; dialog_gtkb = gtk_builder_new(); gtk_builder_add_from_file (dialog_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "get_db_password_dialog.ui", NULL), NULL); gtk_builder_connect_signals(dialog_gtkb, NULL); password_widget = gtk_builder_get_object (dialog_gtkb, "cadb_password_entry"); remember_password_widget = gtk_builder_get_object (dialog_gtkb, "remember_password_checkbutton"); g_object_set (G_OBJECT(remember_password_widget), "visible", FALSE, NULL); widget = gtk_builder_get_object (dialog_gtkb, "get_passwd_msg_label"); message = g_strdup_printf (_("The file that holds private key for certificate '%s' is password-protected.\n\n" "Please, insert the password corresponding to this file."), cert_dn); gtk_label_set_text (GTK_LABEL(widget), message); gtk_widget_grab_focus (GTK_WIDGET(password_widget)); widget = gtk_builder_get_object (dialog_gtkb, "get_db_password_dialog"); response = gtk_dialog_run(GTK_DIALOG(widget)); if (!response) { gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); g_free (message); return NULL; } else { password = g_strdup ((gchar *) gtk_entry_get_text (GTK_ENTRY(password_widget))); } widget = gtk_builder_get_object (dialog_gtkb, "get_db_password_dialog"); gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); g_free (message); return password; } gboolean pkey_manage_filechooser_file_set_cb (GtkFileChooserButton *widget, gpointer user_data) { GtkWidget *remember_filepath_widget = NULL; remember_filepath_widget = g_object_get_data (G_OBJECT(widget), "save_filename_checkbutton"); g_object_set (G_OBJECT(remember_filepath_widget), "visible", TRUE, NULL); return FALSE; } #else gchar * __pkey_manage_ask_external_file_password (const gchar *cert_dn) { gchar *password; gchar *aux = NULL; printf (_("The file that holds private key for certificate\n'%s' is password-protected.\n\n"), cert_dn); aux = getpass ("Please, insert the password corresponding to this file:"); if (!aux || aux[0] == '\0') { return NULL; } else { password = g_strdup (aux); memset (aux, 0, strlen(aux)); } return password; } #endif gchar * __pkey_retrieve_from_file (gchar **fn, gchar *cert_pem) { gsize file_length = 0; GError *error = NULL; gboolean cancel = FALSE; gboolean save_new_filename = FALSE; gchar *file_name = g_strdup(* fn); gchar *file_contents = NULL; gchar *pem_pkey = NULL; gint tls_error = 0; gchar *password = NULL; TlsCert *cert = tls_parse_cert_pem (cert_pem); do { if (g_file_test(file_name, G_FILE_TEST_EXISTS)) { GIOChannel *gc = g_io_channel_new_file (file_name, "r", &error); if (gc) { g_io_channel_read_to_end (gc, &file_contents, &file_length, &error); g_io_channel_shutdown (gc, TRUE, NULL); do { pem_pkey = tls_load_pkcs8_private_key (file_contents, password, cert->key_id, &tls_error); if (tls_error == TLS_INVALID_PASSWORD) { if (password) dialog_error (_("The given password doesn't match with the one used while crypting the file.")); // We ask for a password password = __pkey_manage_ask_external_file_password (cert->dn); if (! password) cancel = TRUE; } } while (tls_error == TLS_INVALID_PASSWORD && ! cancel); g_free (password); if (! pem_pkey) { if (tls_error == TLS_NON_MATCHING_PRIVATE_KEY) { // The file could be opened, but it didn't contain any recognized private key dialog_error (_("The file designated in database contains a private key, but it " "is not the private key corresponding to the certificate.")); } else { // The file could be opened, but it didn't contain any recognized private key dialog_error (_("The file designated in database doesn't contain any recognized private key.")); } } } else { // The file cannot be opened dialog_error (_("The file designated in database couldn't be opened.")); } } else { // The file doesn't exist dialog_error (_("The file designated in database doesn't exist.")); } if (! pem_pkey && ! cancel) { #ifndef GNOMINTCLI // Show file open dialog GObject * widget = NULL, * filepath_widget = NULL, *remember_filepath_widget = NULL; GtkBuilder * dialog_gtkb = NULL; gint response = 0; dialog_gtkb = gtk_builder_new(); gtk_builder_add_from_file (dialog_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "get_pkey_dialog.ui", NULL), NULL); gtk_builder_connect_signals (dialog_gtkb, NULL); filepath_widget = gtk_builder_get_object (dialog_gtkb, "pkey_filechooser"); remember_filepath_widget = gtk_builder_get_object (dialog_gtkb, "save_filename_checkbutton"); g_object_set (G_OBJECT(remember_filepath_widget), "visible", FALSE, NULL); gtk_widget_grab_focus (GTK_WIDGET(filepath_widget)); gtk_file_chooser_set_filename (GTK_FILE_CHOOSER(filepath_widget), file_name); g_object_set_data (G_OBJECT(filepath_widget), "save_filename_checkbutton", remember_filepath_widget); widget = gtk_builder_get_object (dialog_gtkb, "cert_dn_label"); gtk_label_set_text (GTK_LABEL(widget), cert->dn); widget = gtk_builder_get_object (dialog_gtkb, "get_pkey_dialog"); response = gtk_dialog_run(GTK_DIALOG(widget)); if (! response) { cancel = TRUE; } else { g_free (file_name); file_name = g_strdup ((gchar *) gtk_file_chooser_get_filename (GTK_FILE_CHOOSER(filepath_widget))); save_new_filename = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(remember_filepath_widget)); } widget = gtk_builder_get_object (dialog_gtkb, "get_pkey_dialog"); gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); #else cancel = TRUE; #endif } } while (! pem_pkey && ! cancel); tls_cert_free (cert); g_free (file_contents); if (error) g_error_free (error); if (cancel) { g_free (file_name); return NULL; } if (save_new_filename) { g_free (*fn); (* fn) = file_name; } return pem_pkey; } PkeyManageData * pkey_manage_get_certificate_pkey (guint64 id) { PkeyManageData *res = NULL; res = g_new0 (PkeyManageData, 1); if (ca_file_get_pkey_in_db_from_id (CA_FILE_ELEMENT_TYPE_CERT, id)) { res->pkey_data = ca_file_get_pkey_field_from_id (CA_FILE_ELEMENT_TYPE_CERT, id); res->is_in_db = TRUE; res->is_ciphered_with_db_pwd = ca_file_is_password_protected(); } else { gchar *cert_pem = ca_file_get_public_pem_from_id (CA_FILE_ELEMENT_TYPE_CERT, id); gchar *file_name = ca_file_get_pkey_field_from_id (CA_FILE_ELEMENT_TYPE_CERT, id); gchar *old_filename = g_strdup (file_name); gchar *file_contents = __pkey_retrieve_from_file (&file_name, cert_pem); if (strcmp (file_name, old_filename)) { /* The private key location has changed, and the user wants us to remember it */ ca_file_set_pkey_field_for_id (CA_FILE_ELEMENT_TYPE_CERT, file_name, id); } if (file_contents) { res->pkey_data = file_contents; res->is_in_db = FALSE; res->external_file = file_name; } else { g_free (file_name); g_free (res); res = NULL; } g_free (old_filename); g_free (cert_pem); } return res; } PkeyManageData * pkey_manage_get_csr_pkey (guint64 id) { PkeyManageData *res = NULL; res = g_new0 (PkeyManageData, 1); if (ca_file_get_pkey_in_db_from_id (CA_FILE_ELEMENT_TYPE_CSR, id)) { res->pkey_data = ca_file_get_pkey_field_from_id (CA_FILE_ELEMENT_TYPE_CSR, id); res->is_in_db = TRUE; res->is_ciphered_with_db_pwd = ca_file_is_password_protected(); } else { // Retrieving external private keys for CSRs is not supported, as it is impossible to check if // a private key corresponds to a public key/CSR. // However, we fill the structure with enough data for recovering the private key. res->pkey_data = NULL; res->is_in_db = FALSE; res->external_file = ca_file_get_pkey_field_from_id (CA_FILE_ELEMENT_TYPE_CSR, id); } return res; } void pkey_manage_data_free (PkeyManageData *pkeydata) { if (! pkeydata) return; g_free (pkeydata->pkey_data); g_free (pkeydata->external_file); } guchar old_iv[16] = { 'a', 'g', 'z', 'e', 'Q', '5', 'E', '7', 'c', '+', '*', 'G', '1', 'D', 'u', '=' }; guchar old_ctr[16] = { 'd', 'g', '4', 'e', 'J', '5', '3', 'l', 'c', '-', '!', 'G', 'z', 'A', 'z', '=' }; gchar *saved_password = NULL; gchar * __pkey_manage_to_hex (const guchar *buffer, size_t len) { gchar *res = g_new0 (gchar, len*2+1); guint i; for (i=0; i= '0' && input[i] <= '9') { res[i/2] += (input[i] - '0'); } if (input[i] >='A' && input[i] <= 'F') { res[i/2] += 10 + (input[i] - 'A'); } } return res; } guchar *__pkey_manage_create_key(const gchar *password) { guchar *key = g_new0 (guchar, 33); guint i, j; if (strlen(password) <= 32) { for (i=0; i<32; i=i+strlen(password)) { snprintf ((gchar *) &key[i], 32 - i, "%s", password); } } else { i = 0; do { for (j=0; j<32 && j random_data for (i=0; idn, password); tls_cert_free (tls_cert); *pem_private_key = res; g_free (clean_private_key); return; } #ifndef GNOMINTCLI gchar * pkey_manage_ask_password () { gchar *password = NULL; gboolean is_key_ok; gboolean remember = 0; GObject * widget = NULL, * password_widget = NULL, *remember_password_widget = NULL; GtkBuilder * dialog_gtkb = NULL; gint response = 0; if (! ca_file_is_password_protected()) return NULL; dialog_gtkb = gtk_builder_new(); gtk_builder_add_from_file (dialog_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "get_db_password_dialog.ui", NULL), NULL); gtk_builder_connect_signals (dialog_gtkb, NULL); password_widget = gtk_builder_get_object (dialog_gtkb, "cadb_password_entry"); remember_password_widget = gtk_builder_get_object (dialog_gtkb, "remember_password_checkbutton"); widget = gtk_builder_get_object (dialog_gtkb, "cadb_password_dialog_ok_button"); is_key_ok = FALSE; if (saved_password && ca_file_check_password (saved_password)) { is_key_ok = TRUE; password = g_strdup (saved_password); } while (! is_key_ok) { gtk_widget_grab_focus (GTK_WIDGET(password_widget)); if (password) { g_free (password); password = NULL; } widget = gtk_builder_get_object (dialog_gtkb, "get_db_password_dialog"); response = gtk_dialog_run(GTK_DIALOG(widget)); if (!response) { gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return NULL; } else { password = g_strdup ((gchar *) gtk_entry_get_text (GTK_ENTRY(password_widget))); remember = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(remember_password_widget)); } is_key_ok = ca_file_check_password (password); if (! is_key_ok) { dialog_error (_("The given password doesn't match the one used in the database")); } } if (remember) { if (saved_password) g_free (saved_password); saved_password = g_strdup(password); } widget = gtk_builder_get_object (dialog_gtkb, "get_db_password_dialog"); gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return password; } #else gchar * pkey_manage_ask_password () { gchar *password = NULL; gchar *pass; gboolean is_key_ok; if (! ca_file_is_password_protected()) return NULL; is_key_ok = FALSE; while (! is_key_ok) { if (password) { g_free (password); password = NULL; } printf (_("This action requires using one or more private keys saved in the database.\n")); pass = getpass (_("Please insert the database password:")); if (! pass || pass[0] == '\0') { return NULL; } else { password = g_strdup (pass); memset (pass, 0, strlen(pass)); } is_key_ok = ca_file_check_password (password); if (! is_key_ok) { dialog_error (_("The given password doesn't match the one used in the database")); } } return password; } #endif gchar * pkey_manage_crypt (const gchar *pem_private_key, const gchar *dn) { gchar *res; gchar *password; password = pkey_manage_ask_password(); res = pkey_manage_crypt_w_pwd (pem_private_key, dn, password); g_free (password); return res; } gchar * pkey_manage_crypt_w_pwd (const gchar *pem_private_key, const gchar *dn, const gchar *pwd) { gchar *res; gchar *password; if (! ca_file_is_password_protected()) return g_strdup(pem_private_key); password = g_strdup_printf ("gnoMintPrivateKey%s%s", pwd, dn); res = __pkey_manage_aes_encrypt (pem_private_key, password); g_free (password); return res; } gchar * pkey_manage_uncrypt (PkeyManageData *pem_private_key, const gchar *dn) { gchar *res = NULL; gchar *password = NULL; if (pem_private_key->is_in_db) { if (pem_private_key->is_ciphered_with_db_pwd) { password = pkey_manage_ask_password(); if (password) { res = pkey_manage_uncrypt_w_pwd (pem_private_key, dn, password); g_free (password); } } else { res = g_strdup (pem_private_key->pkey_data); } } else { res = g_strdup (pem_private_key->pkey_data); } return res; } gchar * pkey_manage_uncrypt_w_pwd (PkeyManageData *pem_private_key, const gchar *dn, const gchar *pwd) { gchar *res; gchar *password; if (! pem_private_key->is_in_db || ! pem_private_key->is_ciphered_with_db_pwd) return g_strdup(pem_private_key->pkey_data); password = g_strdup_printf ("gnoMintPrivateKey%s%s", pwd, dn); res = __pkey_manage_aes_decrypt (pem_private_key->pkey_data, password); g_free (password); return res; } gnomint-1.3.0/src/main.c0000664000175000017500000003647212672052326012011 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include "main.h" #include "ca.h" #include "dialog.h" #include "tls.h" #include "ca_file.h" #include "preferences-gui.h" #define GNOMINT_MIME_TYPE "application/x-gnomint" GtkBuilder * main_window_gtkb = NULL; GtkBuilder * csr_popup_menu_gtkb = NULL; GtkBuilder * cert_popup_menu_gtkb = NULL; gchar * gnomint_current_opened_file = NULL; static GtkRecentManager *recent_manager; void __recent_add_utf8_filename (const gchar *utf8_filename); void __disable_widget (gchar *widget_name); void __enable_widget (gchar *widget_name); GtkWidget * __recent_create_menu (void); void __recent_add_utf8_filename (const gchar *utf8_filename); void __disable_widget (gchar *widget_name) { GtkWidget * widget = NULL; widget = GTK_WIDGET(gtk_builder_get_object (main_window_gtkb, widget_name)); gtk_widget_set_sensitive (widget, FALSE); } void __enable_widget (gchar *widget_name) { GtkWidget * widget = NULL; widget = GTK_WIDGET(gtk_builder_get_object (main_window_gtkb, widget_name)); gtk_widget_set_sensitive (widget, TRUE); } /*****************************************************************************/ /* Create a menu of recent files. */ /*****************************************************************************/ GtkWidget * __recent_create_menu (void) { GtkWidget *recent_menu; GtkRecentFilter *recent_filter; recent_menu = gtk_recent_chooser_menu_new_for_manager (recent_manager); gtk_recent_chooser_menu_set_show_numbers (GTK_RECENT_CHOOSER_MENU (recent_menu), FALSE); gtk_recent_chooser_set_show_icons (GTK_RECENT_CHOOSER (recent_menu), TRUE); gtk_recent_chooser_set_limit (GTK_RECENT_CHOOSER (recent_menu), 4); gtk_recent_chooser_set_sort_type (GTK_RECENT_CHOOSER (recent_menu), GTK_RECENT_SORT_MRU); gtk_recent_chooser_set_local_only (GTK_RECENT_CHOOSER (recent_menu), TRUE); recent_filter = gtk_recent_filter_new (); gtk_recent_filter_add_mime_type (recent_filter, GNOMINT_MIME_TYPE); gtk_recent_chooser_set_filter (GTK_RECENT_CHOOSER (recent_menu), recent_filter); return recent_menu; } int main (int argc, char *argv[]) { gchar *defaultfile = NULL; GOptionContext *ctx; GError *err = NULL; GOptionEntry entries[] = { { NULL } }; GtkWidget * recent_menu = NULL; gchar * size_str = NULL; #ifdef ENABLE_NLS bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); #endif g_set_application_name (PACKAGE); g_set_prgname (PACKAGE); tls_init (); gtk_init (&argc, &argv); preferences_gui_set_csr_visible_callback (ca_update_csr_view); preferences_gui_set_revoked_visible_callback (ca_update_revoked_view); preferences_init (argc, argv); ctx = g_option_context_new (_("- A graphical Certification Authority manager")); g_option_context_add_main_entries (ctx, entries, GETTEXT_PACKAGE); if (!g_option_context_parse (ctx, &argc, &argv, &err)) { g_print (_("Failed to initialize: %s\n"), err->message); g_error_free (err); return 1; } main_window_gtkb = gtk_builder_new(); gtk_builder_add_from_file (main_window_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "main_window.ui", NULL), NULL); csr_popup_menu_gtkb = gtk_builder_new(); gtk_builder_add_from_file (csr_popup_menu_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "csr_popup_menu.ui", NULL), NULL); cert_popup_menu_gtkb = gtk_builder_new(); gtk_builder_add_from_file (cert_popup_menu_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "certificate_popup_menu.ui", NULL), NULL); size_str = preferences_get_size (); if (size_str) { gchar ** result = NULL; guint width, height; result = g_strsplit_set (size_str, "(,)", -1); if (result[0] && result[1]) { width = atoi (result[1]); if (result[2]) { height = atoi (result[2]); gtk_window_resize (GTK_WINDOW(gtk_builder_get_object(main_window_gtkb, "main_window1")), width, height); } } g_free (size_str); g_strfreev (result); } ca_update_revoked_view (preferences_get_revoked_visible(), FALSE); ca_update_csr_view (preferences_get_crq_visible(), FALSE); gtk_builder_connect_signals (main_window_gtkb, NULL); gtk_builder_connect_signals (cert_popup_menu_gtkb, NULL); gtk_builder_connect_signals (csr_popup_menu_gtkb, NULL); recent_manager = gtk_recent_manager_get_default (); recent_menu = __recent_create_menu(); g_signal_connect (G_OBJECT (recent_menu), "item-activated", G_CALLBACK (on_open_recent_activate), NULL); gtk_menu_item_set_submenu (GTK_MENU_ITEM (gtk_builder_get_object (main_window_gtkb, "openrecentsmenuitem")), recent_menu); __disable_widget ("new_certificate1"); __disable_widget ("save_as1"); __disable_widget ("properties1"); __disable_widget ("preferences1"); dialog_establish_refresh_function (ca_refresh_model_callback); if (argc >= 2 && ca_open (g_strdup(argv[1]), TRUE)) { /* The file has opened OK */ __recent_add_utf8_filename (argv[1]); } else { /* No arguments, or failure when opening file */ defaultfile = g_build_filename (g_get_home_dir(), ".gnomint", "default.gnomint", NULL); __recent_add_utf8_filename (defaultfile); ca_open (defaultfile, TRUE); } gtk_main (); return 0; } G_MODULE_EXPORT gboolean on_main_window1_delete (GtkWidget *widget, GdkEvent *event, gpointer user_data) { GtkWindow *window = GTK_WINDOW(widget); int width, height; gchar *new_size_value; gtk_window_get_size (window, &width, &height); new_size_value = g_strdup_printf ("(%d,%d)", width, height); preferences_set_size (new_size_value); g_free (new_size_value); preferences_deinit(); exit (0); return TRUE; } void __recent_add_utf8_filename (const gchar *utf8_filename) { GtkRecentData *recent_data; gchar *filename; gchar *uri; gchar *pwd; static gchar *groups[2] = { "gnomint", NULL }; recent_data = g_slice_new (GtkRecentData); recent_data->display_name = NULL; recent_data->description = NULL; recent_data->mime_type = GNOMINT_MIME_TYPE; recent_data->app_name = (gchar *) g_get_application_name (); recent_data->app_exec = g_strjoin (" ", g_get_prgname (), "%f", NULL); recent_data->groups = groups; recent_data->is_private = FALSE; filename = g_filename_from_utf8 (utf8_filename, -1, NULL, NULL, NULL); if ( filename != NULL ) { if (! g_path_is_absolute (filename)) { gchar *absolute_filename; pwd = g_get_current_dir (); absolute_filename = g_build_filename (pwd, filename, NULL); g_free (pwd); g_free (filename); filename = absolute_filename; } uri = g_filename_to_uri (filename, NULL, NULL); if ( uri != NULL ) { gtk_recent_manager_add_full (recent_manager, uri, recent_data); g_free (uri); } g_free (filename); } g_free (recent_data->app_exec); g_slice_free (GtkRecentData, recent_data); } G_MODULE_EXPORT void on_new1_activate (GtkMenuItem *menuitem, gpointer user_data) { gchar *filename; gchar *error = NULL; GtkWidget *dialog, *widget; widget = GTK_WIDGET(gtk_builder_get_object (main_window_gtkb, "main_window")); dialog = gtk_file_chooser_dialog_new (_("Create new CA database"), GTK_WINDOW(widget), GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL); gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE); if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) { filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); gtk_widget_destroy (dialog); } else { gtk_widget_destroy (dialog); return; } if (g_file_test(filename, G_FILE_TEST_EXISTS)) { /* The file already exists. The user has confirmed its overwriting. So we, first, rename it to "filename~", after deleting "filename~" if it already exists */ gchar *backup_filename = g_strdup_printf ("%s~", filename); if (g_file_test (backup_filename, G_FILE_TEST_EXISTS)) { g_remove (backup_filename); } g_rename (filename, backup_filename); g_free (backup_filename); } error = ca_file_create (filename); if (error) { dialog = gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, _("Problem when creating '%s' CA database:\n%s"), filename, error); gtk_dialog_run (GTK_DIALOG(dialog)); return; } if (! ca_open (filename, FALSE)) { dialog = gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, _("Problem when opening new '%s' CA database"), filename); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (dialog); } else { __recent_add_utf8_filename (filename); } return; } G_MODULE_EXPORT void on_open1_activate (GtkMenuItem *menuitem, gpointer user_data) { gchar *filename; GtkWidget *dialog, *widget; widget = GTK_WIDGET(gtk_builder_get_object (main_window_gtkb, "main_window")); dialog = gtk_file_chooser_dialog_new (_("Open CA database"), GTK_WINDOW(widget), GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL); if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) { filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); gtk_widget_destroy (dialog); } else { gtk_widget_destroy (dialog); return; } if (! ca_open (filename, FALSE)) { dialog = gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, _("Problem when opening '%s' CA database"), filename); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (dialog); } else { __recent_add_utf8_filename (filename); } return; } void on_open_recent_activate (GtkRecentChooser *chooser, gpointer user_data) { GtkRecentInfo *item; gchar *filename; gchar *utf8_filename = NULL; GtkWidget *dialog; const gchar *uri; g_return_if_fail (chooser && GTK_IS_RECENT_CHOOSER(chooser)); item = gtk_recent_chooser_get_current_item (chooser); if (!item) return; uri = gtk_recent_info_get_uri (item); filename = g_filename_from_uri (uri, NULL, NULL); if ( filename != NULL ) { utf8_filename = g_filename_to_utf8 (filename, -1, NULL, NULL, NULL); g_free (filename); } if (! utf8_filename || ! ca_open (utf8_filename, FALSE)) { dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, _("Problem when opening '%s' CA database"), utf8_filename); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (dialog); } else { __recent_add_utf8_filename (utf8_filename); } gtk_recent_info_unref (item); return; } G_MODULE_EXPORT void on_save_as1_activate (GtkMenuItem *menuitem, gpointer user_data) { gchar *filename; GtkWidget *dialog, *widget; widget = GTK_WIDGET(gtk_builder_get_object (main_window_gtkb, "main_window")); dialog = gtk_file_chooser_dialog_new (_("Save CA database as..."), GTK_WINDOW(widget), GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL); gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE); if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) { filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); gtk_widget_destroy (dialog); } else { gtk_widget_destroy (dialog); return; } if (ca_file_save_as (filename)) __recent_add_utf8_filename (filename); } G_MODULE_EXPORT void on_quit1_activate (GtkMenuItem *menuitem, gpointer user_data) { on_main_window1_delete(NULL, NULL, NULL); } /* * * HELP MENU CALLBACKS * */ G_MODULE_EXPORT void on_about1_activate (GtkMenuItem *menuitem, gpointer user_data) { GtkWidget *widget; gchar *authors[2]; widget = GTK_WIDGET(gtk_builder_get_object (main_window_gtkb, "main_window")); authors[0] = PACKAGE_AUTHORS; authors[1] = NULL; gtk_show_about_dialog (GTK_WINDOW(widget), "version", PACKAGE_VERSION, "copyright", PACKAGE_COPYRIGHT, "comments", _("gnoMint is a program for creating and managing Certification Authorities, and their certificates"), "license", _("This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.\n\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. \n\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA."), "wrap_license", TRUE, "website", PACKAGE_WEBSITE, "authors", authors, "translator_credits", _("translator-credits"), NULL); } gnomint-1.3.0/src/preferences-gui.h0000664000175000017500000000363312672052326014146 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _PREFERENCES_H_ #define _PREFERENCES_H_ typedef void (* PreferencesGuiChangeCallback) (gboolean, gboolean); void preferences_gui_set_csr_visible_callback (PreferencesGuiChangeCallback callback); void preferences_gui_set_revoked_visible_callback (PreferencesGuiChangeCallback callback); void preferences_init (int, char**); gchar *preferences_get_size(void); void preferences_set_size (const gchar *new_value); gboolean preferences_get_revoked_visible(void); void preferences_set_revoked_visible (gboolean new_value); gboolean preferences_get_crq_visible(void); void preferences_set_crq_visible (gboolean new_value); gboolean preferences_get_gnome_keyring_export (void); void preferences_set_gnome_keyring_export (gboolean new_value); void preferences_deinit (void); #include void preferences_changed_callback(GConfClient* client, guint cnxn_id, GConfEntry *entry, gpointer user_data); #endif gnomint-1.3.0/src/new_req_window.c0000664000175000017500000004420512672053676014116 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include "creation_process_window.h" #include "ca_file.h" #include "country_table.h" #include "tls.h" #include "pkey_manage.h" #include "new_req_window.h" #include GtkBuilder * new_req_window_gtkb = NULL; GtkTreeStore * new_req_ca_list_model = NULL; gboolean new_req_ca_id_valid = FALSE; guint64 new_req_ca_id; enum {NEW_REQ_CA_MODEL_COLUMN_ID=0, NEW_REQ_CA_MODEL_COLUMN_SERIAL=1, NEW_REQ_CA_MODEL_COLUMN_SUBJECT=2, NEW_REQ_CA_MODEL_COLUMN_DN=3, NEW_REQ_CA_MODEL_COLUMN_PARENT_DN=4, NEW_REQ_CA_MODEL_COLUMN_PEM=5, NEW_REQ_CA_MODEL_COLUMN_NUMBER=6} NewReqCaListModelColumns; typedef struct { GtkTreeStore * new_model; GtkTreeIter * last_parent_iter; GtkTreeIter * last_ca_iter; } __NewReqWindowRefreshModelAddCaUserData; int __new_req_window_refresh_model_add_ca (void *pArg, int argc, char **argv, char **columnNames); void __new_req_populate_ca_treeview (GtkTreeView *treeview); gboolean __new_req_window_lookup_country (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data); int __new_req_window_refresh_model_add_ca (void *pArg, int argc, char **argv, char **columnNames) { GValue *last_dn_value = g_new0 (GValue, 1); GValue *last_parent_dn_value = g_new0 (GValue, 1); GtkTreeIter iter; __NewReqWindowRefreshModelAddCaUserData *pdata = (__NewReqWindowRefreshModelAddCaUserData *) pArg; GtkTreeStore * new_model = pdata->new_model; const gchar * string_value; // First we check if this is the first CA, or is a self-signed certificate if (! pdata->last_ca_iter || (! strcmp (argv[NEW_REQ_CA_MODEL_COLUMN_DN],argv[NEW_REQ_CA_MODEL_COLUMN_PARENT_DN])) ) { if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = NULL; } else { // If not, then we must find the parent of the current nod gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), pdata->last_ca_iter, NEW_REQ_CA_MODEL_COLUMN_DN, last_dn_value); gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), pdata->last_ca_iter, NEW_REQ_CA_MODEL_COLUMN_PARENT_DN, last_parent_dn_value); string_value = g_value_get_string (last_dn_value); g_assert (string_value); if (! strcmp (argv[NEW_REQ_CA_MODEL_COLUMN_PARENT_DN], string_value)) { // Last node is parent of the current node if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = gtk_tree_iter_copy (pdata->last_ca_iter); } else { // We go back in the hierarchical tree, starting in the current parent, until we find the parent of the // current certificate. while (pdata->last_parent_iter && strcmp (argv[NEW_REQ_CA_MODEL_COLUMN_PARENT_DN], g_value_get_string(last_parent_dn_value))) { if (! gtk_tree_model_iter_parent(GTK_TREE_MODEL(new_model), &iter, pdata->last_parent_iter)) { // Last ca iter is a top_level if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = NULL; } else { if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = gtk_tree_iter_copy (&iter); } g_value_unset (last_parent_dn_value); gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), pdata->last_parent_iter, NEW_REQ_CA_MODEL_COLUMN_DN, last_parent_dn_value); } } } gtk_tree_store_append (new_model, &iter, pdata->last_parent_iter); gtk_tree_store_set (new_model, &iter, 0, atoll(argv[NEW_REQ_CA_MODEL_COLUMN_ID]), 1, argv[NEW_REQ_CA_MODEL_COLUMN_SERIAL], 2, argv[NEW_REQ_CA_MODEL_COLUMN_SUBJECT], 3, argv[NEW_REQ_CA_MODEL_COLUMN_DN], 4, argv[NEW_REQ_CA_MODEL_COLUMN_PARENT_DN], 5, argv[NEW_REQ_CA_MODEL_COLUMN_PEM], -1); if (pdata->last_ca_iter) gtk_tree_iter_free (pdata->last_ca_iter); pdata->last_ca_iter = gtk_tree_iter_copy (&iter); g_free (last_dn_value); g_free (last_parent_dn_value); return 0; } void __new_req_populate_ca_treeview (GtkTreeView *treeview) { GtkCellRenderer * renderer = NULL; __NewReqWindowRefreshModelAddCaUserData pdata; new_req_ca_list_model = gtk_tree_store_new (NEW_REQ_CA_MODEL_COLUMN_NUMBER, G_TYPE_UINT64, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); pdata.new_model = new_req_ca_list_model; pdata.last_parent_iter = NULL; pdata.last_ca_iter = NULL; ca_file_foreach_ca (__new_req_window_refresh_model_add_ca, &pdata); if (pdata.last_parent_iter) gtk_tree_iter_free (pdata.last_parent_iter); if (pdata.last_ca_iter) gtk_tree_iter_free (pdata.last_ca_iter); g_dataset_destroy (new_req_ca_list_model); renderer = GTK_CELL_RENDERER (gtk_cell_renderer_text_new()); gtk_tree_view_insert_column_with_attributes (treeview, -1, _("Subject"), renderer, "markup", NEW_REQ_CA_MODEL_COLUMN_SUBJECT, NULL); gtk_tree_view_set_model (treeview, GTK_TREE_MODEL(new_req_ca_list_model)); gtk_tree_view_expand_all (treeview); return; } G_MODULE_EXPORT void new_req_inherit_fields_toggled (GtkToggleButton *button, gpointer user_data) { GtkTreeView *treeview = GTK_TREE_VIEW(gtk_builder_get_object(new_req_window_gtkb, "new_req_ca_treeview")); GtkTreeSelection *selection = gtk_tree_view_get_selection (treeview); GtkTreeIter iter; if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_req_window_gtkb, "inherit_radiobutton")))) { /* Inherit */ gtk_widget_set_sensitive (GTK_WIDGET(treeview), TRUE); gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE); gtk_tree_model_get_iter_first (GTK_TREE_MODEL(new_req_ca_list_model), &iter); gtk_tree_selection_select_iter (selection, &iter); } else { /* Don't inherit */ gtk_widget_set_sensitive (GTK_WIDGET(treeview), FALSE); gtk_tree_selection_set_mode (selection, GTK_SELECTION_NONE); } } void new_req_window_display() { new_req_window_gtkb = gtk_builder_new(); gtk_builder_add_from_file (new_req_window_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "new_req_window.ui", NULL), NULL); gtk_builder_connect_signals (new_req_window_gtkb, NULL); country_table_populate_combobox(GTK_COMBO_BOX(gtk_builder_get_object(new_req_window_gtkb, "country_combobox1"))); __new_req_populate_ca_treeview (GTK_TREE_VIEW(gtk_builder_get_object(new_req_window_gtkb, "new_req_ca_treeview"))); new_req_inherit_fields_toggled (GTK_TOGGLE_BUTTON(gtk_builder_get_object(new_req_window_gtkb, "inherit_radiobutton")), NULL); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_req_window_gtkb, "rsa_radiobutton1")), TRUE); gtk_spin_button_set_value (GTK_SPIN_BUTTON(gtk_builder_get_object(new_req_window_gtkb, "keylength_spinbutton1")), 2048); } void new_req_tab_activate (int tab_number) { GtkNotebook *notebook = GTK_NOTEBOOK(gtk_builder_get_object (new_req_window_gtkb, "new_req_notebook")); gtk_notebook_set_current_page (notebook, tab_number); } G_MODULE_EXPORT void on_new_req_privkey_type_toggle (GtkToggleButton *button, gpointer user_data) { GtkToggleButton *rsatoggle = GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_req_window_gtkb, "rsa_radiobutton1")); GtkAdjustment *adj = GTK_ADJUSTMENT(gtk_builder_get_object (new_req_window_gtkb, "AdjustmentKeyLengthSpinButton1")); gdouble value = gtk_spin_button_get_value (GTK_SPIN_BUTTON(gtk_builder_get_object(new_req_window_gtkb, "keylength_spinbutton1"))); if (gtk_toggle_button_get_active(rsatoggle)) { // RSA is active gtk_adjustment_set_upper (adj, 10240); } else { // DSA is active gtk_adjustment_set_upper (adj, 3072); if (value > 3072) gtk_spin_button_set_value (GTK_SPIN_BUTTON(gtk_builder_get_object(new_req_window_gtkb, "keylength_spinbutton1")), 3072); } } G_MODULE_EXPORT void on_new_req_cn_entry_changed (GtkEditable *editable, gpointer user_data) { GtkButton *button = GTK_BUTTON(gtk_builder_get_object (new_req_window_gtkb, "new_req_next2")); if (strlen (gtk_entry_get_text (GTK_ENTRY(editable)))) gtk_widget_set_sensitive (GTK_WIDGET(button), TRUE); else gtk_widget_set_sensitive (GTK_WIDGET(button), FALSE); } gboolean __new_req_window_lookup_country (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data) { gchar *country = (gchar *) data; GValue *value = g_new0(GValue, 1); gtk_tree_model_get_value (model, iter, 1, value); if (! strcmp (country, g_value_get_string(value))) { gtk_combo_box_set_active_iter (GTK_COMBO_BOX(gtk_builder_get_object(new_req_window_gtkb,"country_combobox1")), iter); g_free (value); return TRUE; } g_free(value); return FALSE; } G_MODULE_EXPORT void on_new_req_next1_clicked (GtkButton *button, gpointer user_data) { GtkTreeView *treeview = GTK_TREE_VIEW(gtk_builder_get_object(new_req_window_gtkb, "new_req_ca_treeview")); GtkTreeSelection *selection = gtk_tree_view_get_selection (treeview); GValue *value = g_new0(GValue, 1); GtkTreeModel *model; GtkTreeIter iter; TlsCert * tlscert; GtkWidget * widget; const gchar *pem; if (gtk_tree_selection_get_selected (selection, &model, &iter)) { gtk_tree_model_get_value (model, &iter, NEW_REQ_CA_MODEL_COLUMN_PEM, value); pem = g_value_get_string (value); g_assert (pem); tlscert = tls_parse_cert_pem (pem); g_value_unset (value); gtk_tree_model_get_value (model, &iter, NEW_REQ_CA_MODEL_COLUMN_ID, value); new_req_ca_id_valid = TRUE; new_req_ca_id = g_value_get_uint64(value); widget = GTK_WIDGET(gtk_builder_get_object(new_req_window_gtkb,"country_combobox1")); if (ca_file_policy_get (new_req_ca_id, "C_INHERIT")) { gtk_widget_set_sensitive (widget, ! ca_file_policy_get (new_req_ca_id, "C_FORCE_SAME")); model = GTK_TREE_MODEL(gtk_combo_box_get_model (GTK_COMBO_BOX(widget))); gtk_tree_model_foreach (model, __new_req_window_lookup_country, tlscert->c); } else { gtk_widget_set_sensitive (widget, TRUE); gtk_combo_box_set_active (GTK_COMBO_BOX(widget), -1); } widget = GTK_WIDGET(gtk_builder_get_object(new_req_window_gtkb,"st_entry1")); if (ca_file_policy_get (new_req_ca_id, "ST_INHERIT")) { gtk_widget_set_sensitive (widget, ! ca_file_policy_get (new_req_ca_id, "ST_FORCE_SAME")); gtk_entry_set_text(GTK_ENTRY(widget), tlscert->st); } else { gtk_widget_set_sensitive (widget, TRUE); gtk_entry_set_text(GTK_ENTRY(widget), ""); } widget = GTK_WIDGET(gtk_builder_get_object(new_req_window_gtkb,"city_entry1")); if (ca_file_policy_get (new_req_ca_id, "L_INHERIT")) { gtk_widget_set_sensitive (widget, ! ca_file_policy_get (new_req_ca_id, "L_FORCE_SAME")); gtk_entry_set_text(GTK_ENTRY(widget), tlscert->l); } else { gtk_widget_set_sensitive (widget, TRUE); gtk_entry_set_text(GTK_ENTRY(widget), ""); } widget = GTK_WIDGET(gtk_builder_get_object(new_req_window_gtkb,"o_entry1")); if (ca_file_policy_get (new_req_ca_id, "O_INHERIT")) { gtk_widget_set_sensitive (widget, ! ca_file_policy_get (new_req_ca_id, "O_FORCE_SAME")); gtk_entry_set_text(GTK_ENTRY(widget), tlscert->o); } else { gtk_widget_set_sensitive (widget, TRUE); gtk_entry_set_text(GTK_ENTRY(widget), ""); } widget = GTK_WIDGET(gtk_builder_get_object(new_req_window_gtkb,"ou_entry1")); if (ca_file_policy_get (new_req_ca_id, "OU_INHERIT")) { gtk_widget_set_sensitive (widget, ! ca_file_policy_get (new_req_ca_id, "OU_FORCE_SAME")); gtk_entry_set_text(GTK_ENTRY(widget), tlscert->ou); } else { gtk_widget_set_sensitive (widget, TRUE); gtk_entry_set_text(GTK_ENTRY(widget), ""); } tls_cert_free (tlscert); } else { new_req_ca_id_valid = FALSE; widget = GTK_WIDGET(gtk_builder_get_object(new_req_window_gtkb,"country_combobox1")); gtk_widget_set_sensitive (widget, TRUE); widget = GTK_WIDGET(gtk_builder_get_object(new_req_window_gtkb,"st_entry1")); gtk_widget_set_sensitive (widget, TRUE); widget = GTK_WIDGET(gtk_builder_get_object(new_req_window_gtkb,"city_entry1")); gtk_widget_set_sensitive (widget, TRUE); widget = GTK_WIDGET(gtk_builder_get_object(new_req_window_gtkb,"o_entry1")); gtk_widget_set_sensitive (widget, TRUE); widget = GTK_WIDGET(gtk_builder_get_object(new_req_window_gtkb,"ou_entry1")); gtk_widget_set_sensitive (widget, TRUE); } g_free (value); new_req_tab_activate (1); } G_MODULE_EXPORT void on_new_req_previous2_clicked (GtkButton *widget, gpointer user_data) { new_req_tab_activate (0); } G_MODULE_EXPORT void on_new_req_next2_clicked (GtkButton *widget, gpointer user_data) { new_req_tab_activate (2); } G_MODULE_EXPORT void on_new_req_previous3_clicked (GtkButton *widget, gpointer user_data) { new_req_tab_activate (1); } G_MODULE_EXPORT void on_new_req_cancel_clicked (GtkButton *widget, gpointer user_data) { GtkWindow *window = GTK_WINDOW(gtk_builder_get_object (new_req_window_gtkb, "new_req_window")); gtk_object_destroy(GTK_OBJECT(window)); } G_MODULE_EXPORT void on_new_req_commit_clicked (GtkButton *widg, gpointer user_data) { TlsCreationData *csr_creation_data = NULL; GtkWidget *widget = NULL; GtkWindow *window = NULL; gint active = -1; gchar *text = NULL; GtkTreeModel *tree_model = NULL; GtkTreeIter tree_iter; csr_creation_data = g_new0 (TlsCreationData, 1); if (new_req_ca_id_valid) csr_creation_data->parent_ca_id_str = g_strdup_printf ("'%"G_GUINT64_FORMAT"'", new_req_ca_id); widget = GTK_WIDGET(gtk_builder_get_object (new_req_window_gtkb, "country_combobox1")); active = gtk_combo_box_get_active (GTK_COMBO_BOX(widget)); if (active < 0) { csr_creation_data->country = NULL; } else { tree_model = gtk_combo_box_get_model (GTK_COMBO_BOX(widget)); gtk_combo_box_get_active_iter (GTK_COMBO_BOX(widget), &tree_iter); gtk_tree_model_get (tree_model, &tree_iter, 1, &text, -1); csr_creation_data->country = g_strdup (text); } widget = GTK_WIDGET(gtk_builder_get_object (new_req_window_gtkb, "st_entry1")); text = (gchar *) gtk_entry_get_text (GTK_ENTRY(widget)); if (strlen (text)) csr_creation_data->state = g_strdup (text); else csr_creation_data->state = NULL; widget = GTK_WIDGET(gtk_builder_get_object (new_req_window_gtkb, "city_entry1")); text = (gchar *) gtk_entry_get_text (GTK_ENTRY(widget)); if (strlen (text)) csr_creation_data->city = g_strdup (text); else csr_creation_data->city = NULL; widget = GTK_WIDGET(gtk_builder_get_object (new_req_window_gtkb, "o_entry1")); text = (gchar *) gtk_entry_get_text (GTK_ENTRY(widget)); if (strlen (text)) csr_creation_data->org = g_strdup (text); else csr_creation_data->org = NULL; widget = GTK_WIDGET(gtk_builder_get_object (new_req_window_gtkb, "ou_entry1")); text = (gchar *) gtk_entry_get_text (GTK_ENTRY(widget)); if (strlen (text)) csr_creation_data->ou = g_strdup (text); else csr_creation_data->ou = NULL; widget = GTK_WIDGET(gtk_builder_get_object (new_req_window_gtkb, "cn_entry1")); text = (gchar *) gtk_entry_get_text (GTK_ENTRY(widget)); if (strlen (text)) csr_creation_data->cn = g_strdup (text); else csr_creation_data->cn = NULL; widget = GTK_WIDGET(gtk_builder_get_object (new_req_window_gtkb, "dsa_radiobutton1")); active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); csr_creation_data->key_type = active; widget = GTK_WIDGET(gtk_builder_get_object (new_req_window_gtkb, "keylength_spinbutton1")); active = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON(widget)); csr_creation_data->key_bitlength = active; if (ca_file_is_password_protected()) { csr_creation_data->password = pkey_manage_ask_password(); if (! csr_creation_data->password) { /* The user hasn't provided a valid password */ return; } } window = GTK_WINDOW(gtk_builder_get_object (new_req_window_gtkb, "new_req_window")); gtk_object_destroy(GTK_OBJECT(window)); creation_process_window_csr_display (csr_creation_data); } gnomint-1.3.0/src/tls.c0000664000175000017500000014663512672100702011662 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include "uint160.h" #include "tls.h" void tls_init () { gnutls_global_init (); } gchar * tls_generate_rsa_keys (TlsCreationData *creation_data, gchar ** private_key, gnutls_x509_privkey_t **key) { size_t private_key_len = 0; gint error; (*key) = g_new0 (gnutls_x509_privkey_t, 1); if (gnutls_x509_privkey_init (*key) < 0) { return g_strdup_printf(_("Error initializing private key structure.")); } /* Generate a RSA private key. */ error = gnutls_x509_privkey_generate ((** key), GNUTLS_PK_RSA, creation_data->key_bitlength, 0); if (error < 0) { return g_strdup_printf(_("Error creating private key: %d"), error); } /* Calculate private key length */ (* private_key) = g_new0 (gchar, 1); gnutls_x509_privkey_export ((** key), GNUTLS_X509_FMT_PEM, (* private_key), &private_key_len); g_free (* private_key); /* Save the private key to a PEM format */ (* private_key) = g_new0 (gchar, private_key_len); if (gnutls_x509_privkey_export ((** key), GNUTLS_X509_FMT_PEM, (* private_key), &private_key_len) < 0) { return g_strdup_printf(_("Error exporting private key to PEM structure.")); } return NULL; } gchar * tls_generate_dsa_keys (TlsCreationData *creation_data, gchar ** private_key, gnutls_x509_privkey_t **key) { size_t private_key_len = 0; gint error; (*key) = g_new0 (gnutls_x509_privkey_t, 1); if (gnutls_x509_privkey_init (*key) < 0) { return g_strdup_printf(_("Error initializing private key structure.")); } /* Generate DSA private key. */ error = gnutls_x509_privkey_generate ((** key), GNUTLS_PK_DSA, creation_data->key_bitlength, 0); if (error < 0) { return g_strdup_printf(_("Error creating private key: %d"), error); } /* Calculate private key length */ (* private_key) = g_new0 (gchar, 1); gnutls_x509_privkey_export ((** key), GNUTLS_X509_FMT_PEM, (* private_key), &private_key_len); g_free (* private_key); /* Save the private key to a PEM format */ (* private_key) = g_new0 (gchar, private_key_len); if (gnutls_x509_privkey_export ((** key), GNUTLS_X509_FMT_PEM, (* private_key), &private_key_len) < 0) { return g_strdup_printf(_("Error exporting private key to PEM structure.")); } return NULL; } gchar * tls_generate_pkcs8_encrypted_private_key (gchar *pem_private_key, gchar *passphrase) { gnutls_datum_t pem_datum; gchar *pkcs8_private_key = NULL; size_t pkcs8_private_key_len = 0; gnutls_x509_privkey_t key; pem_datum.data = (unsigned char *) pem_private_key; pem_datum.size = strlen(pem_private_key); if (gnutls_x509_privkey_init (&key) < 0) { return NULL; } /* Import PEM private key into internal structure. */ if (gnutls_x509_privkey_import (key, &pem_datum, GNUTLS_X509_FMT_PEM) < 0) { gnutls_x509_privkey_deinit (key); return NULL; } /* Calculate pkcs8 length */ pkcs8_private_key = g_new0 (gchar, 1); gnutls_x509_privkey_export_pkcs8 (key, GNUTLS_X509_FMT_PEM, passphrase, GNUTLS_PKCS_USE_PKCS12_3DES, pkcs8_private_key, &pkcs8_private_key_len); g_free (pkcs8_private_key); /* Save the private key to a PEM format */ pkcs8_private_key = g_new0 (gchar, pkcs8_private_key_len); if (gnutls_x509_privkey_export_pkcs8 (key, GNUTLS_X509_FMT_PEM, passphrase, GNUTLS_PKCS_USE_PKCS12_3DES, pkcs8_private_key, &pkcs8_private_key_len) < 0) { gnutls_x509_privkey_deinit (key); return NULL; } gnutls_x509_privkey_deinit (key); return pkcs8_private_key; } gchar * tls_load_pkcs8_private_key (gchar *pkcs8_pem, gchar *passphrase, const gchar *cert_key_id, gint *error) { gnutls_datum_t pkcs8_datum; gchar * pem_private_key = NULL; size_t pem_private_key_len = 0; gnutls_x509_privkey_t key; gchar * pkey_key_id = NULL; size_t pkey_key_id_len = 0; guchar * uaux; guint i; pkcs8_datum.data = (unsigned char *) pkcs8_pem; pkcs8_datum.size = strlen (pkcs8_pem); if (gnutls_x509_privkey_init (&key) < 0) { return NULL; } *error = gnutls_x509_privkey_import_pkcs8 (key, &pkcs8_datum, GNUTLS_X509_FMT_PEM, passphrase, 0); if (*error) { gnutls_x509_privkey_deinit (key); return NULL; } /* Calculate private key length */ pem_private_key = g_new0 (gchar, 1); gnutls_x509_privkey_export (key, GNUTLS_X509_FMT_PEM, pem_private_key, &pem_private_key_len); g_free (pem_private_key); /* Save the private key to a PEM format */ pem_private_key = g_new0 (gchar, pem_private_key_len); if (gnutls_x509_privkey_export (key, GNUTLS_X509_FMT_PEM, pem_private_key, &pem_private_key_len) < 0) { g_free (pem_private_key); gnutls_x509_privkey_deinit (key); return NULL; } uaux = NULL; pkey_key_id_len = 0; gnutls_x509_privkey_get_key_id (key, 0, uaux, &pkey_key_id_len); uaux = g_new0(guchar, pkey_key_id_len); if (gnutls_x509_privkey_get_key_id (key, 0, uaux, &pkey_key_id_len)) { g_free (uaux); g_free (pem_private_key); gnutls_x509_privkey_deinit (key); return NULL; } pkey_key_id = g_new0(gchar, pkey_key_id_len*3); for (i=0; idata = (unsigned char *) pkcs12_struct; pkcs12_datum->size = pkcs12_struct_size; return pkcs12_datum; } gchar * tls_generate_self_signed_certificate (TlsCreationData * creation_data, gnutls_x509_privkey_t *key, gchar ** certificate) { gnutls_x509_crt_t crt; UInt160 *sn = uint160_new(); guchar * keyid = NULL; size_t keyidsize = 0; guchar * serialstr = NULL; size_t serialsize = 0; size_t certificate_len = 0; uint160_assign (sn, G_GUINT64_CONSTANT(1)); if (gnutls_x509_crt_init (&crt) < 0) { uint160_free (sn); return g_strdup_printf(_("Error when initializing certificate structure")); } if (gnutls_x509_crt_set_version (crt, 3) < 0){ gnutls_x509_crt_deinit (crt); uint160_free (sn); return g_strdup_printf(_("Error when setting certificate version")); } uint160_write (sn, NULL, &serialsize); serialstr = g_new0 (guchar, serialsize); uint160_write (sn, serialstr, &serialsize); if (gnutls_x509_crt_set_serial (crt, serialstr, serialsize) < 0) { gnutls_x509_crt_deinit (crt); uint160_free (sn); return g_strdup_printf(_("Error when setting certificate serial number")); } g_free (serialstr); uint160_free (sn); if (gnutls_x509_crt_set_activation_time (crt, creation_data->activation) < 0) { gnutls_x509_crt_deinit (crt); return g_strdup_printf(_("Error when setting activation time")); } if (gnutls_x509_crt_set_expiration_time (crt, creation_data->expiration) < 0) { gnutls_x509_crt_deinit (crt); return g_strdup_printf(_("Error when setting expiration time")); } gnutls_x509_crt_set_key (crt, (* key)); if (creation_data->country) { gnutls_x509_crt_set_dn_by_oid (crt, GNUTLS_OID_X520_COUNTRY_NAME, 0, creation_data->country, strlen(creation_data->country)); gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_COUNTRY_NAME, 0, creation_data->country, strlen(creation_data->country)); } if (creation_data->state) { gnutls_x509_crt_set_dn_by_oid (crt, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME, 0, creation_data->state, strlen(creation_data->state)); gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME, 0, creation_data->state, strlen(creation_data->state)); } if (creation_data->city) { gnutls_x509_crt_set_dn_by_oid (crt, GNUTLS_OID_X520_LOCALITY_NAME, 0, creation_data->city, strlen(creation_data->city)); gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_LOCALITY_NAME, 0, creation_data->city, strlen(creation_data->city)); } if (creation_data->org) { gnutls_x509_crt_set_dn_by_oid (crt, GNUTLS_OID_X520_ORGANIZATION_NAME, 0, creation_data->org, strlen(creation_data->org)); gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_ORGANIZATION_NAME, 0, creation_data->org, strlen(creation_data->org)); } if (creation_data->ou) { gnutls_x509_crt_set_dn_by_oid (crt, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME, 0, creation_data->ou, strlen(creation_data->ou)); gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME, 0, creation_data->ou, strlen(creation_data->ou)); } if (creation_data->cn) { gnutls_x509_crt_set_dn_by_oid (crt, GNUTLS_OID_X520_COMMON_NAME, 0, creation_data->cn, strlen(creation_data->cn)); gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_COMMON_NAME, 0, creation_data->cn, strlen(creation_data->cn)); } if (gnutls_x509_crt_set_ca_status (crt, 1) != 0) { gnutls_x509_crt_deinit (crt); return g_strdup_printf(_("Error when setting basicConstraint extension")); } if (gnutls_x509_crt_set_key_usage (crt, GNUTLS_KEY_KEY_CERT_SIGN | GNUTLS_KEY_CRL_SIGN) != 0) { gnutls_x509_crt_deinit (crt); return g_strdup_printf(_("Error when setting keyUsage extension")); } if (creation_data->crl_distribution_point) { gnutls_x509_crt_set_crl_dist_points (crt, GNUTLS_SAN_URI, creation_data->crl_distribution_point, 0); } keyid = g_new0 (guchar,1); gnutls_x509_crt_get_key_id(crt, 0, keyid, &keyidsize); g_free (keyid); keyid = g_new0 (guchar,keyidsize); gnutls_x509_crt_get_key_id(crt, 0, keyid, &keyidsize); if (gnutls_x509_crt_set_subject_key_id(crt, keyid, keyidsize) !=0) { gnutls_x509_crt_deinit (crt); return g_strdup_printf(_("Error when setting subject key identifier extension")); } if (gnutls_x509_crt_set_authority_key_id(crt, keyid, keyidsize) !=0) { gnutls_x509_crt_deinit (crt); return g_strdup_printf(_("Error when setting authority key identifier extension")); } // __add_ext (certificate, NID_netscape_cert_type, "sslCA"); // //__add_ext (certificate, NID_netscape_comment, "gnoMint Generated Certificate"); if (gnutls_x509_crt_sign2(crt, crt, (* key), GNUTLS_DIG_SHA512, 0)) { gnutls_x509_crt_deinit (crt); return g_strdup_printf(_("Error when signing self-signed certificate")); } /* Calculate certificate length */ (* certificate) = g_new0 (gchar, 1); gnutls_x509_crt_export (crt, GNUTLS_X509_FMT_PEM, (* certificate), &certificate_len); g_free (* certificate); /* Save the private key to a PEM format */ (* certificate) = g_new0 (gchar, certificate_len); if (gnutls_x509_crt_export (crt, GNUTLS_X509_FMT_PEM, (* certificate), &certificate_len) < 0) { gnutls_x509_crt_deinit (crt); return g_strdup_printf(_("Error exporting private key to PEM structure.")); } gnutls_x509_crt_deinit (crt); return NULL; } gchar * tls_generate_csr (TlsCreationData * creation_data, gnutls_x509_privkey_t *key, gchar ** csr) { gnutls_x509_crq_t crq; size_t csr_len = 0; if (gnutls_x509_crq_init (&crq) < 0) { return g_strdup_printf(_("Error when initializing csr structure")); } if (gnutls_x509_crq_set_version (crq, 1) < 0){ return g_strdup_printf(_("Error when setting csr version")); } gnutls_x509_crq_set_key (crq, (* key)); if (creation_data->country) { gnutls_x509_crq_set_dn_by_oid (crq, GNUTLS_OID_X520_COUNTRY_NAME, 0, creation_data->country, strlen(creation_data->country)); } if (creation_data->state) { gnutls_x509_crq_set_dn_by_oid (crq, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME, 0, creation_data->state, strlen(creation_data->state)); } if (creation_data->city) { gnutls_x509_crq_set_dn_by_oid (crq, GNUTLS_OID_X520_LOCALITY_NAME, 0, creation_data->city, strlen(creation_data->city)); } if (creation_data->org) { gnutls_x509_crq_set_dn_by_oid (crq, GNUTLS_OID_X520_ORGANIZATION_NAME, 0, creation_data->org, strlen(creation_data->org)); } if (creation_data->ou) { gnutls_x509_crq_set_dn_by_oid (crq, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME, 0, creation_data->ou, strlen(creation_data->ou)); } if (creation_data->cn) { gnutls_x509_crq_set_dn_by_oid (crq, GNUTLS_OID_X520_COMMON_NAME, 0, creation_data->cn, strlen(creation_data->cn)); } if (gnutls_x509_crq_sign2(crq, (* key), GNUTLS_DIG_SHA512, 0)) { return g_strdup_printf(_("Error when signing self-signed csr")); } /* Calculate csr length */ (* csr) = g_new0 (gchar, 1); gnutls_x509_crq_export (crq, GNUTLS_X509_FMT_PEM, (* csr), &csr_len); g_free (* csr); /* Save the private key to a PEM format */ (* csr) = g_new0 (gchar, csr_len); if (gnutls_x509_crq_export (crq, GNUTLS_X509_FMT_PEM, (* csr), &csr_len) < 0) { return g_strdup_printf(_("Error exporting CSR to PEM structure.")); } gnutls_x509_crq_deinit (crq); return NULL; } gchar * tls_generate_certificate (TlsCertCreationData * creation_data, gchar *csr_pem, gchar *ca_cert_pem, gchar *ca_priv_key_pem, gchar **certificate) { gnutls_datum_t csr_pem_datum, ca_cert_pem_datum, ca_priv_key_pem_datum; gnutls_x509_crt_t crt; gnutls_x509_crq_t csr; gnutls_x509_crt_t ca_crt; gnutls_x509_privkey_t ca_pkey; guchar * serialstr = NULL; guchar * keyid = NULL; guchar * ca_keyid = NULL; size_t keyidsize = 0; size_t ca_keyidsize = 0; size_t serialsize = 0; gint key_usage; size_t certificate_len = 0; TlsCert *ca_cert_data = tls_parse_cert_pem (ca_cert_pem); csr_pem_datum.data = (unsigned char *) csr_pem; csr_pem_datum.size = strlen(csr_pem); ca_cert_pem_datum.data = (unsigned char *) ca_cert_pem; ca_cert_pem_datum.size = strlen(ca_cert_pem); ca_priv_key_pem_datum.data = (unsigned char *) ca_priv_key_pem; ca_priv_key_pem_datum.size = strlen(ca_priv_key_pem); gnutls_x509_crq_init (&csr); gnutls_x509_crq_import (csr, &csr_pem_datum, GNUTLS_X509_FMT_PEM); gnutls_x509_crt_init (&ca_crt); gnutls_x509_crt_import (ca_crt, &ca_cert_pem_datum, GNUTLS_X509_FMT_PEM); gnutls_x509_privkey_init (&ca_pkey); gnutls_x509_privkey_import (ca_pkey, &ca_priv_key_pem_datum, GNUTLS_X509_FMT_PEM); if (gnutls_x509_crt_init (&crt) < 0) { gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error when initializing crt structure")); } if (gnutls_x509_crt_set_crq (crt, csr) < 0) { gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error when copying data from CSR to certificate structure")); } if (gnutls_x509_crt_set_version (crt, 3) < 0){ gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error when setting certificate version")); } uint160_write (&creation_data->serial, NULL, &serialsize); serialstr = g_new0 (guchar, serialsize); uint160_write (&creation_data->serial, serialstr, &serialsize); if (gnutls_x509_crt_set_serial (crt, serialstr, serialsize) < 0) { g_free (serialstr); gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error when setting certificate serial number")); } g_free (serialstr); if (gnutls_x509_crt_set_activation_time (crt, creation_data->activation) < 0) { gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error when setting activation time")); } if (gnutls_x509_crt_set_expiration_time (crt, creation_data->expiration) < 0) { gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error when setting expiration time")); } if (ca_cert_data->c) gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_COUNTRY_NAME, 0, ca_cert_data->c, strlen(ca_cert_data->c)); if (ca_cert_data->st) gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME, 0, ca_cert_data->st, strlen(ca_cert_data->st)); if (ca_cert_data->l) gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_LOCALITY_NAME, 0, ca_cert_data->l, strlen(ca_cert_data->l)); if (ca_cert_data->o) gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_ORGANIZATION_NAME, 0, ca_cert_data->o, strlen(ca_cert_data->o)); if (ca_cert_data->ou) gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME, 0, ca_cert_data->ou, strlen(ca_cert_data->ou)); if (ca_cert_data->cn) gnutls_x509_crt_set_issuer_dn_by_oid (crt, GNUTLS_OID_X520_COMMON_NAME, 0, ca_cert_data->cn, strlen(ca_cert_data->cn)); ca_keyid = g_new0 (guchar,1); gnutls_x509_crt_get_subject_key_id(ca_crt, ca_keyid, &ca_keyidsize, NULL); g_free (ca_keyid); if (ca_keyidsize) { ca_keyid = g_new0 (guchar,ca_keyidsize); gnutls_x509_crt_get_subject_key_id(ca_crt, ca_keyid, &ca_keyidsize, NULL); if (gnutls_x509_crt_set_authority_key_id(crt, ca_keyid, ca_keyidsize) !=0) { gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error when setting authority key identifier extension")); } } if (gnutls_x509_crt_set_ca_status (crt, creation_data->ca) != 0) { gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error when setting basicConstraint extension")); } if (creation_data->ca) { keyid = g_new0 (guchar,1); gnutls_x509_crt_get_key_id(crt, 0, keyid, &keyidsize); g_free (keyid); keyid = g_new0 (guchar,keyidsize); gnutls_x509_crt_get_key_id(crt, 0, keyid, &keyidsize); if (gnutls_x509_crt_set_subject_key_id(crt, keyid, keyidsize) !=0) { gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error when setting subject key identifier extension")); } } key_usage = 0; if (creation_data->ca) key_usage |= GNUTLS_KEY_KEY_CERT_SIGN; if (creation_data->crl_signing) key_usage |= GNUTLS_KEY_CRL_SIGN; if (creation_data->digital_signature) key_usage |= GNUTLS_KEY_DIGITAL_SIGNATURE; if (creation_data->data_encipherment) key_usage |= GNUTLS_KEY_DATA_ENCIPHERMENT; if (creation_data->key_encipherment) key_usage |= GNUTLS_KEY_KEY_ENCIPHERMENT; if (creation_data->non_repudiation) key_usage |= GNUTLS_KEY_NON_REPUDIATION; if (creation_data->key_agreement) key_usage |= GNUTLS_KEY_KEY_AGREEMENT; if (gnutls_x509_crt_set_key_usage (crt, key_usage) != 0) { gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error when setting keyUsage extension")); } if (creation_data->email_protection) gnutls_x509_crt_set_key_purpose_oid (crt, GNUTLS_KP_EMAIL_PROTECTION, FALSE); if (creation_data->code_signing) gnutls_x509_crt_set_key_purpose_oid (crt, GNUTLS_KP_CODE_SIGNING, FALSE); if (creation_data->web_client) gnutls_x509_crt_set_key_purpose_oid (crt, GNUTLS_KP_TLS_WWW_CLIENT, FALSE); if (creation_data->web_server) gnutls_x509_crt_set_key_purpose_oid (crt, GNUTLS_KP_TLS_WWW_SERVER, FALSE); if (creation_data->time_stamping) gnutls_x509_crt_set_key_purpose_oid (crt, GNUTLS_KP_TIME_STAMPING, FALSE); if (creation_data->ocsp_signing) gnutls_x509_crt_set_key_purpose_oid (crt, GNUTLS_KP_OCSP_SIGNING, FALSE); if (creation_data->any_purpose) gnutls_x509_crt_set_key_purpose_oid (crt, GNUTLS_KP_ANY, FALSE); if (creation_data->crl_distribution_point && creation_data->crl_distribution_point[0]) gnutls_x509_crt_set_crl_dist_points (crt, GNUTLS_SAN_URI, creation_data->crl_distribution_point, 0); else gnutls_x509_crt_cpy_crl_dist_points (crt, ca_crt); if (gnutls_x509_crt_sign2(crt, ca_crt, ca_pkey, GNUTLS_DIG_SHA512, 0)) { gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error when signing certificate")); } /* Calculate certificate length */ (* certificate) = g_new0 (gchar, 1); gnutls_x509_crt_export (crt, GNUTLS_X509_FMT_PEM, (* certificate), &certificate_len); g_free (* certificate); /* Save the private key to a PEM format */ (* certificate) = g_new0 (gchar, certificate_len); if (gnutls_x509_crt_export (crt, GNUTLS_X509_FMT_PEM, (* certificate), &certificate_len) < 0) { gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return g_strdup_printf(_("Error exporting private key to PEM structure.")); } gnutls_x509_crq_deinit (csr); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); gnutls_x509_privkey_deinit (ca_pkey); return NULL; } TlsCert * tls_parse_cert_pem (const char * pem_certificate) { gnutls_datum_t pem_datum; gnutls_x509_crt_t * cert = g_new0 (gnutls_x509_crt_t, 1); gchar *aux = NULL; guchar *uaux = NULL; guint key_usage; gint i; guint critical; guint aux_uint; size_t size; TlsCert *res = g_new0 (TlsCert, 1); pem_datum.data = (unsigned char *) pem_certificate; pem_datum.size = strlen(pem_certificate); gnutls_x509_crt_init (cert); gnutls_x509_crt_import (*cert, &pem_datum, GNUTLS_X509_FMT_PEM); res->activation_time = gnutls_x509_crt_get_activation_time (*cert); res->expiration_time = gnutls_x509_crt_get_expiration_time (*cert); size = 0; gnutls_x509_crt_get_serial (*cert, NULL, &size); if (size) { uaux = g_new0 (guchar, size); gnutls_x509_crt_get_serial (*cert, uaux, &size); uint160_read (&res->serial_number, uaux, size); g_free(uaux); uaux = NULL; } size = 0; gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_COMMON_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_COMMON_NAME, 0, 0, aux, &size); res->cn = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_ORGANIZATION_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_ORGANIZATION_NAME, 0, 0, aux, &size); res->o = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME, 0, 0, aux, &size); res->ou = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_dn (*cert, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_dn (*cert, aux, &size); res->dn = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_issuer_dn_by_oid (*cert, GNUTLS_OID_X520_COMMON_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_issuer_dn_by_oid (*cert, GNUTLS_OID_X520_COMMON_NAME, 0, 0, aux, &size); res->i_cn = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_issuer_dn_by_oid (*cert, GNUTLS_OID_X520_ORGANIZATION_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_issuer_dn_by_oid (*cert, GNUTLS_OID_X520_ORGANIZATION_NAME, 0, 0, aux, &size); res->i_o = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_issuer_dn_by_oid (*cert, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_issuer_dn_by_oid (*cert, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME, 0, 0, aux, &size); res->i_ou = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_issuer_dn (*cert, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_issuer_dn (*cert, aux, &size); res->i_dn = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_COUNTRY_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_COUNTRY_NAME, 0, 0, aux, &size); res->c = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME, 0, 0, aux, &size); res->st = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_LOCALITY_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crt_get_dn_by_oid (*cert, GNUTLS_OID_X520_LOCALITY_NAME, 0, 0, aux, &size); res->l = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_fingerprint (*cert, GNUTLS_DIG_MD5, uaux, &size); uaux = g_new0(guchar, size); gnutls_x509_crt_get_fingerprint (*cert, GNUTLS_DIG_MD5, uaux, &size); res->md5 = g_new0(gchar, size*3); for (i=0; imd5[i*3], 3, "%02X", uaux[i]); if (i != size - 1) res->md5[(i*3) + 2] = ':'; } g_free (uaux); uaux = NULL; size = 0; gnutls_x509_crt_get_fingerprint (*cert, GNUTLS_DIG_SHA1, uaux, &size); uaux = g_new0(guchar, size); gnutls_x509_crt_get_fingerprint (*cert, GNUTLS_DIG_SHA1, uaux, &size); res->sha1 = g_new0(gchar, size*3); for (i=0; isha1[i*3], 3, "%02X", uaux[i]); if (i != size - 1) res->sha1[(i*3) + 2] = ':'; } g_free (uaux); uaux = NULL; size = 0; gnutls_x509_crt_get_fingerprint (*cert, GNUTLS_DIG_SHA256, uaux, &size); uaux = g_new0(guchar, size); gnutls_x509_crt_get_fingerprint (*cert, GNUTLS_DIG_SHA256, uaux, &size); res->sha256 = g_new0(gchar, size*3); for (i=0; isha256[i*3], 3, "%02X", uaux[i]); if (i != size - 1) res->sha256[(i*3) + 2] = ':'; } g_free (uaux); uaux = NULL; size = 0; gnutls_x509_crt_get_fingerprint (*cert, GNUTLS_DIG_SHA512, uaux, &size); uaux = g_new0(guchar, size); gnutls_x509_crt_get_fingerprint (*cert, GNUTLS_DIG_SHA512, uaux, &size); res->sha512 = g_new0(gchar, size*3); for (i=0; isha512[i*3], 3, "%02X", uaux[i]); if (i != size - 1) res->sha512[(i*3) + 2] = ':'; } g_free (uaux); uaux = NULL; if (gnutls_x509_crt_get_ca_status (*cert, &critical)) { res->uses = g_list_append (res->uses, _("Certification Authority")); } if (gnutls_x509_crt_get_key_usage (*cert, &key_usage, &critical) >= 0) { if (key_usage & GNUTLS_KEY_DIGITAL_SIGNATURE) res->uses = g_list_append (res->uses, _("Digital signature")); if (key_usage & GNUTLS_KEY_NON_REPUDIATION) res->uses = g_list_append (res->uses, _("Non repudiation")); if (key_usage & GNUTLS_KEY_KEY_ENCIPHERMENT) res->uses = g_list_append (res->uses, _("Key encipherment")); if (key_usage & GNUTLS_KEY_DATA_ENCIPHERMENT) res->uses = g_list_append (res->uses, _("Data encipherment")); if (key_usage & GNUTLS_KEY_KEY_AGREEMENT) res->uses = g_list_append (res->uses, _("Key agreement")); if (key_usage & GNUTLS_KEY_KEY_CERT_SIGN) res->uses = g_list_append (res->uses, _("Certificate signing")); if (key_usage & GNUTLS_KEY_CRL_SIGN) res->uses = g_list_append (res->uses, _("CRL signing")); if (key_usage & GNUTLS_KEY_ENCIPHER_ONLY) res->uses = g_list_append (res->uses, _("Key encipher only")); if (key_usage & GNUTLS_KEY_DECIPHER_ONLY) res->uses = g_list_append (res->uses, _("Key decipher only")); } i = 0; size = 0; while (gnutls_x509_crt_get_key_purpose_oid (*cert, i, aux, &size, &critical) >= 0) { uaux = g_new0(guchar, size); gnutls_x509_crt_get_key_purpose_oid (*cert, i, aux, &size, &critical); if (strcasecmp (aux, GNUTLS_KP_TLS_WWW_SERVER) == 0) res->uses = g_list_append (res->uses, _("TLS WWW Server")); else if (strcasecmp (aux, GNUTLS_KP_TLS_WWW_CLIENT) == 0) res->uses = g_list_append (res->uses, _("TLS WWW Client.")); else if (strcasecmp (aux, GNUTLS_KP_CODE_SIGNING) == 0) res->uses = g_list_append (res->uses, _("Code signing")); else if (strcasecmp (aux, GNUTLS_KP_EMAIL_PROTECTION) == 0) res->uses = g_list_append (res->uses, _("Email protection")); else if (strcasecmp (aux, GNUTLS_KP_TIME_STAMPING) == 0) res->uses = g_list_append (res->uses, _("Time stamping")); else if (strcasecmp (aux, GNUTLS_KP_OCSP_SIGNING) == 0) res->uses = g_list_append (res->uses, _("OCSP signing")); else if (strcasecmp (aux, GNUTLS_KP_ANY) == 0) res->uses = g_list_append (res->uses, _("Any purpose")); g_free (uaux); size = 0; i++; } size = 0; gnutls_x509_crt_get_key_id (*cert, 0, uaux, &size); uaux = g_new0(guchar, size); gnutls_x509_crt_get_key_id (*cert, 0, uaux, &size); res->key_id = g_new0(gchar, size*3); for (i=0; ikey_id[i*3], 3, "%02X", uaux[i]); if (i != size - 1) res->key_id[(i*3) + 2] = ':'; } g_free (uaux); uaux = NULL; size = 0; gnutls_x509_crt_get_crl_dist_points (*cert, 0, aux, &size, &aux_uint, &critical); if (size) { aux = g_new0(gchar, size); if (gnutls_x509_crt_get_crl_dist_points (*cert, 0, aux, &size, &aux_uint, &critical) == GNUTLS_SAN_URI && aux_uint == 0) res->crl_distribution_point = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crt_get_subject_key_id (*cert, uaux, &size, NULL); uaux = g_new0(guchar, size); gnutls_x509_crt_get_subject_key_id (*cert, uaux, &size, NULL); res->subject_key_id = g_new0(gchar, size*3); for (i=0; isubject_key_id[i*3], 3, "%02X", uaux[i]); if (i != size - 1) res->subject_key_id[(i*3) + 2] = ':'; } g_free (uaux); uaux = NULL; size = 0; gnutls_x509_crt_get_authority_key_id (*cert, uaux, &size, NULL); uaux = g_new0(guchar, size); gnutls_x509_crt_get_authority_key_id (*cert, uaux, &size, NULL); res->issuer_key_id = g_new0(gchar, size*3); for (i=0; iissuer_key_id[i*3], 3, "%02X", uaux[i]); if (i != size - 1) res->issuer_key_id[(i*3) + 2] = ':'; } g_free (uaux); uaux = NULL; gnutls_x509_crt_deinit (*cert); g_free (cert); return res; } gboolean tls_is_ca_pem (const char * pem_certificate) { gnutls_datum_t pem_datum; gnutls_x509_crt_t * cert = g_new0 (gnutls_x509_crt_t, 1); guint critical; gboolean res = FALSE; pem_datum.data = (unsigned char *) pem_certificate; pem_datum.size = strlen(pem_certificate); gnutls_x509_crt_init (cert); gnutls_x509_crt_import (*cert, &pem_datum, GNUTLS_X509_FMT_PEM); if (gnutls_x509_crt_get_ca_status (*cert, &critical)) { res = TRUE; } gnutls_x509_crt_deinit (*cert); g_free (cert); return res; } void tls_cert_free (TlsCert *tlscert) { g_free (tlscert->cn); g_free (tlscert->o); g_free (tlscert->ou); g_free (tlscert->c); g_free (tlscert->st); g_free (tlscert->l); g_free (tlscert->dn); g_free (tlscert->i_cn); g_free (tlscert->i_o); g_free (tlscert->i_ou); g_free (tlscert->i_c); g_free (tlscert->i_st); g_free (tlscert->i_l); g_free (tlscert->i_dn); g_free (tlscert->sha1); g_free (tlscert->sha256); g_free (tlscert->sha512); g_free (tlscert->md5); g_free (tlscert->key_id); g_free (tlscert->crl_distribution_point); g_free (tlscert); } TlsCsr * tls_parse_csr_pem (const char * pem_csr) { gnutls_datum_t pem_datum; gnutls_x509_crq_t * csr = g_new0 (gnutls_x509_crq_t, 1); gchar *aux = NULL; #ifdef ADVANCED_GNUTLS guchar *uaux = NULL; #endif size_t size; TlsCsr *res = g_new0 (TlsCsr, 1); pem_datum.data = (unsigned char *) pem_csr; pem_datum.size = strlen(pem_csr); gnutls_x509_crq_init (csr); gnutls_x509_crq_import (*csr, &pem_datum, GNUTLS_X509_FMT_PEM); size = 0; gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_COMMON_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_COMMON_NAME, 0, 0, aux, &size); res->cn = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_ORGANIZATION_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_ORGANIZATION_NAME, 0, 0, aux, &size); res->o = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME, 0, 0, aux, &size); res->ou = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_COUNTRY_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_COUNTRY_NAME, 0, 0, aux, &size); res->c = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME, 0, 0, aux, &size); res->st = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_LOCALITY_NAME, 0, 0, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crq_get_dn_by_oid (*csr, GNUTLS_OID_X520_LOCALITY_NAME, 0, 0, aux, &size); res->l = g_strdup (aux); g_free (aux); aux = NULL; } size = 0; gnutls_x509_crq_get_dn (*csr, aux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crq_get_dn (*csr, aux, &size); res->dn = g_strdup (aux); g_free (aux); aux = NULL; } #ifdef ADVANCED_GNUTLS size = 0; gnutls_x509_crq_get_key_id (*csr, 0, uaux, &size); if (size) { aux = g_new0(gchar, size); gnutls_x509_crq_get_key_id (*csr, 0, uaux, &size); res->key_id = g_strdup (aux); g_free (aux); uaux = NULL; } #endif gnutls_x509_crq_deinit (*csr); g_free (csr); return res; } void tls_csr_free (TlsCsr *tlscsr) { if (tlscsr->cn) { g_free (tlscsr->cn); } if (tlscsr->o) { g_free (tlscsr->o); } if (tlscsr->ou) { g_free (tlscsr->ou); } if (tlscsr->c) { g_free (tlscsr->c); } if (tlscsr->st) { g_free (tlscsr->st); } if (tlscsr->l) { g_free (tlscsr->l); } if (tlscsr->dn) { g_free (tlscsr->dn); } if (tlscsr->key_id) { g_free (tlscsr->key_id); } g_free (tlscsr); } gchar * tls_generate_crl (GList * revoked_certs, guchar *ca_pem, guchar *ca_private_key, gint crl_version, time_t current_timestamp, time_t next_crl_timestamp) { gnutls_datum_t pem_datum; gnutls_x509_crl_t crl; gnutls_x509_crt_t rcrt; guchar *certificate_pem; time_t revocation; gnutls_x509_crt_t ca_crt; gnutls_x509_privkey_t ca_pkey; GList *cursor = NULL; gchar *result = NULL; size_t result_size = 0; gnutls_x509_crl_init (&crl); cursor = g_list_first (revoked_certs); while (cursor) { gnutls_datum_t pem_datum; certificate_pem = cursor->data; cursor = g_list_next (cursor); revocation = atol (cursor->data); cursor = g_list_next (cursor); gnutls_x509_crt_init (&rcrt); pem_datum.data = certificate_pem; pem_datum.size = strlen((gchar *) certificate_pem); if (gnutls_x509_crt_import (rcrt, &pem_datum, GNUTLS_X509_FMT_PEM)) { return NULL; } if (gnutls_x509_crl_set_crt (crl, rcrt, revocation)) return NULL; gnutls_x509_crt_deinit (rcrt); } fprintf (stderr, "Number of certificates in CRL: %d\n", gnutls_x509_crl_get_crt_count (crl)); if (gnutls_x509_crl_set_version (crl, 2)) { fprintf (stderr, "Error setting version\n"); return NULL; } if (gnutls_x509_crl_set_this_update (crl, current_timestamp)) { fprintf (stderr, "Error setting this update\n"); return NULL; } if (! next_crl_timestamp) { next_crl_timestamp = current_timestamp + 60*24; } if (gnutls_x509_crl_set_next_update (crl, next_crl_timestamp)) { fprintf (stderr, "Error setting next update\n"); return NULL; } gnutls_x509_crt_init (&ca_crt); pem_datum.data = ca_pem; pem_datum.size = strlen((gchar *)ca_pem); if (gnutls_x509_crt_import (ca_crt, &pem_datum, GNUTLS_X509_FMT_PEM)) { fprintf (stderr, "Error importing ca_pem\n"); return NULL; } gnutls_x509_privkey_init (&ca_pkey); pem_datum.data = ca_private_key; pem_datum.size = strlen((gchar *) ca_private_key); if (gnutls_x509_privkey_import (ca_pkey, &pem_datum, GNUTLS_X509_FMT_PEM)) { fprintf (stderr, "Error importing ca privkey\n"); return NULL; } if (gnutls_x509_crl_sign2 (crl, ca_crt, ca_pkey, GNUTLS_DIG_SHA512, 0)) { fprintf (stderr, "Error signing CRL: %d\n", gnutls_x509_crl_sign2 (crl, ca_crt, ca_pkey, GNUTLS_DIG_SHA512, 0)); return NULL; } gnutls_x509_privkey_deinit (ca_pkey); gnutls_x509_crt_deinit (ca_crt); result = g_new0 (gchar, 0); gnutls_x509_crl_export (crl, GNUTLS_X509_FMT_PEM, result, &result_size); g_free (result); result = g_new0 (gchar, result_size); if (gnutls_x509_crl_export (crl, GNUTLS_X509_FMT_PEM, result, &result_size)) { fprintf (stderr, "Error exporting CRL pem\n"); return NULL; } return result; } gchar * tls_generate_dh_params (guint bits) { gnutls_dh_params_t dh_params; size_t dh_params_pem_len = 0; guchar * result = NULL; gint ret; gnutls_dh_params_init (&dh_params); ret = gnutls_dh_params_generate2 (dh_params, bits); if (ret < 0) { fprintf (stderr, "Error generating parameters: %s\n", gnutls_strerror (ret)); return NULL; } result = g_new (guchar, 0); gnutls_dh_params_export_pkcs3 (dh_params, GNUTLS_X509_FMT_PEM, result, &dh_params_pem_len); g_free (result); result = g_new (guchar, dh_params_pem_len); if (gnutls_dh_params_export_pkcs3 (dh_params, GNUTLS_X509_FMT_PEM, result, &dh_params_pem_len)) { fprintf (stderr, "Error exporting DH params pem\n"); return NULL; } return (gchar *) result; } gboolean tls_cert_check_issuer (const gchar *cert_pem, const gchar *ca_pem) { gnutls_datum_t pem_datum; gnutls_x509_crt_t crt; gnutls_x509_crt_t ca_crt; gboolean result = FALSE; if (gnutls_x509_crt_init (&crt) < 0) { return FALSE; } pem_datum.data = (unsigned char *) cert_pem; pem_datum.size = strlen(cert_pem); if (gnutls_x509_crt_import (crt, &pem_datum, GNUTLS_X509_FMT_PEM) < 0) { gnutls_x509_crt_deinit (crt); return FALSE; } if (gnutls_x509_crt_init (&ca_crt) < 0) { gnutls_x509_crt_deinit (crt); return FALSE; } pem_datum.data = (unsigned char *) ca_pem; pem_datum.size = strlen(ca_pem); if (gnutls_x509_crt_import (ca_crt, &pem_datum, GNUTLS_X509_FMT_PEM) < 0) { gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); return FALSE; } result = gnutls_x509_crt_check_issuer(crt, ca_crt); gnutls_x509_crt_deinit (crt); gnutls_x509_crt_deinit (ca_crt); return result; } gchar * tls_get_private_key_id (const gchar *privkey_pem) { gnutls_datum_t pem_datum; gnutls_x509_privkey_t privkey; gchar * pkey_key_id = NULL; gsize pkey_key_id_len; guchar *uaux = NULL; guint i; if (gnutls_x509_privkey_init (&privkey) < 0) { return FALSE; } pem_datum.data = (unsigned char *) privkey_pem; pem_datum.size = strlen(privkey_pem); if (gnutls_x509_privkey_import (privkey, &pem_datum, GNUTLS_X509_FMT_PEM) < 0) { gnutls_x509_privkey_deinit (privkey); return FALSE; } uaux = NULL; pkey_key_id_len = 0; gnutls_x509_privkey_get_key_id (privkey, 0, uaux, &pkey_key_id_len); uaux = g_new0(guchar, pkey_key_id_len); if (gnutls_x509_privkey_get_key_id (privkey, 0, uaux, &pkey_key_id_len)) { g_free (uaux); gnutls_x509_privkey_deinit (privkey); return NULL; } pkey_key_id = g_new0(gchar, pkey_key_id_len*3); for (i=0; icountry) g_free (cd->country); if (cd->state) g_free (cd->state); if (cd->city) g_free (cd->city); if (cd->org) g_free (cd->org); if (cd->ou) g_free (cd->ou); if (cd->cn) g_free (cd->cn); if (cd->emailAddress) g_free (cd->emailAddress); if (cd->password) g_free (cd->password); if (cd->crl_distribution_point) g_free (cd->crl_distribution_point); if (cd->parent_ca_id_str) g_free (cd->parent_ca_id_str); if (cd->crl_distribution_point) g_free (cd->crl_distribution_point); g_free (cd); } #ifdef ADVANCED_GNUTLS gchar * tls_get_csr_public_key_id (const gchar *csr_pem) { gnutls_datum_t pem_datum; gnutls_x509_crq_t crq; gchar * key_id = NULL; gsize key_id_len; guchar *uaux = NULL; guint i; if (gnutls_x509_crq_init (&crq) < 0) { return FALSE; } pem_datum.data = (unsigned char *) csr_pem; pem_datum.size = strlen(csr_pem); if (gnutls_x509_crq_import (crq, &pem_datum, GNUTLS_X509_FMT_PEM) < 0) { gnutls_x509_crq_deinit (crq); return FALSE; } uaux = NULL; key_id_len = 0; gnutls_x509_crq_get_key_id (crq, 0, uaux, &key_id_len); uaux = g_new0(guchar, key_id_len); if (gnutls_x509_crq_get_key_id (crq, 0, uaux, &key_id_len)) { g_free (uaux); gnutls_x509_crq_deinit (crq); return NULL; } key_id = g_new0(gchar, key_id_len*3); for (i=0; i // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include "ca_creation.h" #include "ca_file.h" #include "tls.h" #include "pkey_manage.h" #include #include #include gint ca_creation_is_launched = -1; static GMutex ca_creation_thread_status_mutex = G_STATIC_MUTEX_INIT; gint ca_creation_thread_status = 0; gchar * ca_creation_message = ""; gchar * ca_creation_database_save (TlsCreationData * creation_data, gchar * private_key, gchar * root_certificate); gpointer ca_creation_thread (gpointer data) { TlsCreationData *creation_data = (TlsCreationData *) data; gchar * private_key = NULL; gnutls_x509_privkey_t * ca_key = NULL; gchar * root_certificate = NULL; gchar * error_message = NULL; switch (creation_data->key_type){ case 0: /* RSA */ g_mutex_lock(&ca_creation_thread_status_mutex); ca_creation_message = _("Generating new RSA key pair"); g_mutex_unlock (&ca_creation_thread_status_mutex); error_message = tls_generate_rsa_keys (creation_data, &private_key, &ca_key); if (error_message) { printf ("%s\n\n", error_message); g_mutex_lock(&ca_creation_thread_status_mutex); ca_creation_message = g_strdup_printf ("%s:\n%s",_("Key generation failed"), error_message); ca_creation_thread_status = -1; g_mutex_unlock (&ca_creation_thread_status_mutex); tls_creation_data_free (creation_data); return ca_creation_message; // return error_message; } break; case 1: /* DSA */ g_mutex_lock(&ca_creation_thread_status_mutex); ca_creation_message = _("Generating new DSA key pair"); g_mutex_unlock (&ca_creation_thread_status_mutex); error_message = tls_generate_dsa_keys (creation_data, &private_key, &ca_key); if (error_message) { printf ("%s\n\n", error_message); g_mutex_lock(&ca_creation_thread_status_mutex); ca_creation_message = g_strdup_printf ("%s:\n%s",_("Key generation failed"), error_message); ca_creation_thread_status = -1; g_mutex_unlock (&ca_creation_thread_status_mutex); //return error_message; tls_creation_data_free (creation_data); return ca_creation_message; } break; } g_mutex_lock(&ca_creation_thread_status_mutex); ca_creation_message = _("Generating self-signed CA-Root cert"); g_mutex_unlock (&ca_creation_thread_status_mutex); error_message = tls_generate_self_signed_certificate (creation_data, ca_key, &root_certificate); if (error_message) { printf ("%s\n\n", error_message); g_mutex_lock(&ca_creation_thread_status_mutex); ca_creation_message = g_strdup_printf ("%s:\n%s",_("Certificate generation failed"), error_message); ca_creation_thread_status = -1; g_mutex_unlock (&ca_creation_thread_status_mutex); g_free (error_message); //return error_message; tls_creation_data_free (creation_data); return ca_creation_message; } g_mutex_lock(&ca_creation_thread_status_mutex); ca_creation_message = _("Creating CA database"); g_mutex_unlock (&ca_creation_thread_status_mutex); pkey_manage_crypt_auto (creation_data->password, &private_key, root_certificate); error_message = ca_creation_database_save (creation_data, private_key, root_certificate); if (error_message) { g_mutex_lock(&ca_creation_thread_status_mutex); ca_creation_message = g_strdup_printf ("%s:\n%s",_("CA database creation failed"), error_message); ca_creation_thread_status = -1; g_mutex_unlock (&ca_creation_thread_status_mutex); g_free (error_message); tls_creation_data_free (creation_data); return ca_creation_message; } g_mutex_lock(&ca_creation_thread_status_mutex); ca_creation_message = _("CA generated successfully"); ca_creation_thread_status = 1; g_mutex_unlock (&ca_creation_thread_status_mutex); if (ca_key) { gnutls_x509_privkey_deinit ((* ca_key)); g_free (ca_key); } tls_creation_data_free (creation_data); g_free (private_key); return NULL; } GThread * ca_creation_launch_thread (TlsCreationData *creation_data) { return g_thread_new("ca_creation", ca_creation_thread, creation_data); } void ca_creation_lock_status_mutex () { g_mutex_lock(&ca_creation_thread_status_mutex); } void ca_creation_unlock_status_mutex () { g_mutex_unlock (&ca_creation_thread_status_mutex); } gint ca_creation_get_thread_status () { return ca_creation_thread_status; } gchar * ca_creation_get_thread_message() { return ca_creation_message; } gchar * ca_creation_database_save (TlsCreationData * creation_data, gchar * private_key, gchar * root_certificate) { return ca_file_insert_self_signed_ca (private_key, root_certificate); } gnomint-1.3.0/src/preferences.c0000664000175000017500000000316712672052326013361 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include "preferences.h" static GConfEngine * preferences_engine; void preferences_init (int argc, char **argv) { gconf_init (argc, argv, NULL); preferences_engine = gconf_engine_get_default (); } gboolean preferences_get_gnome_keyring_export () { return gconf_engine_get_bool (preferences_engine, "/apps/gnomint/gnome_keyring_export", NULL); } void preferences_set_gnome_keyring_export (gboolean new_value) { gconf_engine_set_bool (preferences_engine, "/apps/gnomint/gnome_keyring_export", new_value, NULL); } void preferences_deinit () { gconf_engine_unref (preferences_engine); preferences_engine = NULL; } gnomint-1.3.0/src/country_table.h0000664000175000017500000000205612672052326013733 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _COUNTRY_TABLE_H_ #define _COUNTRY_TABLE_H_ void country_table_populate(); void country_table_populate_combobox(GtkComboBox *country_combobox); #endif gnomint-1.3.0/src/new_cert.h0000664000175000017500000000405712672052326012672 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _NEW_CERT_WINDOW_H_ #define _NEW_CERT_WINDOW_H_ #include "tls.h" #ifndef GNOMINTCLI void new_cert_window_display (const guint64 csr_id, const gchar * csr_pem, const gchar * csr_parent_id); void new_cert_signing_ca_treeview_cursor_changed (GtkTreeView *treeview, gpointer userdata); void new_cert_tab_activate (int tab_number); void on_new_cert_next2_clicked (GtkButton *button, gpointer user_data); void on_new_cert_previous2_clicked (GtkButton *widget, gpointer user_data) ; void on_new_cert_next1_clicked (GtkButton *button, gpointer user_data); void on_new_cert_previous3_clicked (GtkButton *widget, gpointer user_data); void on_new_cert_cancel_clicked (GtkButton *widget, gpointer user_data); void on_new_cert_property_toggled (GtkWidget *toggle, gpointer user_data); void on_new_cert_commit_clicked (GtkButton *widg, gpointer user_data); #endif const gchar *new_cert_sign_csr (guint64 csr_id, guint64 ca_id, TlsCertCreationData *cert_creation_data); #endif gnomint-1.3.0/src/uint160.c0000664000175000017500000003206612672052326012266 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include "uint160.h" #include #include UInt160 * uint160_new() { UInt160 *res = g_new0(UInt160, 1); res->value0=0; res->value1=0; res->value2=0; /* fprintf (stderr, "Creado nuevo Uint160: %u:%"G_GUINT64_FORMAT":%"G_GUINT64_FORMAT"\n", */ /* res->value2, res->value1, res->value0); */ return res; } void uint160_assign (UInt160 *var, guint64 new_value) { /* fprintf (stderr, "Antes de asignar Uint160: %u:%"G_GUINT64_FORMAT":%"G_GUINT64_FORMAT"\n", */ /* var->value2, var->value1, var->value0); */ memset (var, 0, sizeof(UInt160)); var->value0=new_value; var->value1=0; var->value2=0; /* fprintf (stderr, "Asignado valor %"G_GUINT64_FORMAT" Uint160: %u:%"G_GUINT64_FORMAT":%"G_GUINT64_FORMAT"\n", */ /* new_value, var->value2, var->value1, var->value0); */ return; } gboolean uint160_assign_hexstr (UInt160 *var, const gchar *new_value_hex) { guint i; gchar c; gchar * orig_stripped_value = g_strdup (new_value_hex); gchar * stripped_value = g_strstrip (orig_stripped_value); /* fprintf (stderr, "Antes de asignar Uint160=%s: %u:%"G_GUINT64_FORMAT":%"G_GUINT64_FORMAT"\n", */ /* stripped_value, var->value2, var->value1, var->value0); */ memset (var, 0, sizeof(UInt160)); for (i=0; i < strlen(stripped_value); i++) { c = g_ascii_tolower(stripped_value[i]); // Check if the character is valid if (!((c >= '0' && c <= '9') || (c >= 'a' && c <= 'f'))) { memset (var, 0, sizeof(UInt160)); fprintf (stderr, "Error al asignar valor %s Uint160: caracter «%c» encontrado.\n", stripped_value, c); g_free (orig_stripped_value); return FALSE; } uint160_shift (var, 4); switch(c) { case '0': break; case '1': uint160_add (var, 1); break; case '2': uint160_add (var, 2); break; case '3': uint160_add (var, 3); break; case '4': uint160_add (var, 4); break; case '5': uint160_add (var, 5); break; case '6': uint160_add (var, 6); break; case '7': uint160_add (var, 7); break; case '8': uint160_add (var, 8); break; case '9': uint160_add (var, 9); break; case 'a': uint160_add (var, 10); break; case 'b': uint160_add (var, 11); break; case 'c': uint160_add (var, 12); break; case 'd': uint160_add (var, 13); break; case 'e': uint160_add (var, 14); break; case 'f': uint160_add (var, 15); break; } } /* fprintf (stderr, "Asignado valor %s Uint160: %u:%"G_GUINT64_FORMAT":%"G_GUINT64_FORMAT"\n", */ /* stripped_value, var->value2, var->value1, var->value0); */ g_free (orig_stripped_value); return TRUE; } void uint160_add (UInt160 *var, guint64 new_value) { guint64 value0_backup = var->value0; guint64 value1_backup = var->value1; /* fprintf (stderr, "Sumando %"G_GUINT64_FORMAT" a Uint160: %u:%"G_GUINT64_FORMAT":%"G_GUINT64_FORMAT"\n", */ /* new_value, var->value2, var->value1, var->value0); */ var->value0 = var->value0 + new_value; if (var->value0 < value0_backup) { var->value1++; if (var->value1 < value1_backup) var->value2++; } /* fprintf (stderr, "Resultado: %u:%"G_GUINT64_FORMAT":%"G_GUINT64_FORMAT"\n", */ /* var->value2, var->value1, var->value0); */ return; } void uint160_inc (UInt160 *var) { uint160_add (var, 1); return; } void uint160_dec (UInt160 *var) { guint64 value0_backup = var->value0; guint64 value1_backup = var->value1; var->value0 --; if (var->value0 > value0_backup) { var->value1 --; if (var->value1 > value1_backup) var->value2--; } return; } void uint160_shift (UInt160 *var, guint positions) { /* fprintf (stderr, "Shifting %u a Uint160: %u:%"G_GUINT64_FORMAT":%"G_GUINT64_FORMAT"\n", */ /* positions, var->value2, var->value1, var->value0); */ guint64 carry0_to_1; guint64 carry1_to_2; if (positions > 0) { carry0_to_1 = (var->value0 & G_GUINT64_CONSTANT(0x8000000000000000)); carry1_to_2 = (var->value1 & G_GUINT64_CONSTANT(0x8000000000000000)); var->value0 = var->value0 * 2; var->value1 = (var->value1 * 2) + (carry0_to_1 ? 1 : 0); var->value2 = (var->value2 * 2) + (carry1_to_2 ? 1 : 0); uint160_shift (var, positions - 1); } return; } gboolean uint160_write (const UInt160 *var, guchar *buffer, gsize * max_size) { if (*max_size < 20) { *max_size = 20; return FALSE; } buffer[0] = ((var->value2 & 0xFF000000) >> 24); buffer[1] = ((var->value2 & 0x00FF0000) >> 16); buffer[2] = ((var->value2 & 0x0000FF00) >> 8); buffer[3] = ((var->value2 & 0x000000FF)); buffer[4] = ((var->value1 & G_GUINT64_CONSTANT(0xFF00000000000000)) >> 56); buffer[5] = ((var->value1 & G_GUINT64_CONSTANT(0x00FF000000000000)) >> 48); buffer[6] = ((var->value1 & G_GUINT64_CONSTANT(0x0000FF0000000000)) >> 40); buffer[7] = ((var->value1 & G_GUINT64_CONSTANT(0x000000FF00000000)) >> 32); buffer[8] = ((var->value1 & G_GUINT64_CONSTANT(0x00000000FF000000)) >> 24); buffer[9] = ((var->value1 & G_GUINT64_CONSTANT(0x0000000000FF0000)) >> 16); buffer[10] = ((var->value1 & G_GUINT64_CONSTANT(0x000000000000FF00)) >> 8); buffer[11] = ((var->value1 & G_GUINT64_CONSTANT(0x00000000000000FF))); buffer[12] = ((var->value0 & G_GUINT64_CONSTANT(0xFF00000000000000)) >> 56); buffer[13] = ((var->value0 & G_GUINT64_CONSTANT(0x00FF000000000000)) >> 48); buffer[14] = ((var->value0 & G_GUINT64_CONSTANT(0x0000FF0000000000)) >> 40); buffer[15] = ((var->value0 & G_GUINT64_CONSTANT(0x000000FF00000000)) >> 32); buffer[16] = ((var->value0 & G_GUINT64_CONSTANT(0x00000000FF000000)) >> 24); buffer[17] = ((var->value0 & G_GUINT64_CONSTANT(0x0000000000FF0000)) >> 16); buffer[18] = ((var->value0 & G_GUINT64_CONSTANT(0x000000000000FF00)) >> 8); buffer[19] = ((var->value0 & G_GUINT64_CONSTANT(0x00000000000000FF))); *max_size = 20; return TRUE; } gboolean uint160_read (UInt160 *var, guchar *buffer, gsize buffer_size) { gint start, i; guchar c; memset (var, 0, sizeof(UInt160)); var->value0=0; var->value1=0; var->value2=0; start = 0; while (start < buffer_size && buffer[start] == 0) start++; for (i=start; i < buffer_size; i++) { c = buffer[i]; uint160_shift (var, 8); uint160_add (var, c); } return TRUE; } gboolean uint160_write_escaped (const UInt160 *var, gchar *buffer, gsize * max_size) { gsize size = 0; guint32 value = 0; gsize pos = 0; if (var->value2 > 0) size = 16 + 16 + 8 + 1; else if (var->value1 > 0) size = 16 + 16 + 1; else size = 16 + 1; if (size > *max_size) { *max_size = size; return FALSE; } memset (buffer, 0, size); if (var->value2 > 0) { value = var->value2; sprintf (&buffer[pos], "%08" G_GINT32_MODIFIER "x", value); pos = pos + 8; } if (var->value2 > 0 || var->value1 > 0) { value = (var->value1 / G_GUINT64_CONSTANT(0x100000000)); sprintf (&buffer[pos], "%08" G_GINT32_MODIFIER "x", value); pos = pos + 8; value = (var->value1 % G_GUINT64_CONSTANT(0x100000000)); sprintf (&buffer[pos], "%08" G_GINT32_MODIFIER "x", value); pos = pos + 8; } value = (var->value0 / G_GUINT64_CONSTANT(0x100000000)); sprintf (&buffer[pos], "%08" G_GINT32_MODIFIER "x", value); pos = pos + 8; value = (var->value0 % G_GUINT64_CONSTANT(0x100000000)); sprintf (&buffer[pos], "%08" G_GINT32_MODIFIER "x", value); pos = pos + 8; return TRUE; } gboolean uint160_read_escaped (UInt160 *var, gchar *buffer, gsize buffer_size) { gchar aux[2]; guint i; guint num; gboolean res = TRUE; /* fprintf (stderr, "Uint160_read_escaped <%s>\n", buffer); */ memset (var, 0, sizeof (UInt160)); memset (aux, 0, 2); for (i=0; i = : %u:%"G_GUINT64_FORMAT":%"G_GUINT64_FORMAT"\n", */ /* buffer, var->value2, var->value1, var->value0); */ return res; } gboolean uint160_read_escaped_old_format (UInt160 *var, gchar *buffer, gsize buffer_size) { gint i; guint num_chars; guchar c; guchar buffer_c[buffer_size]; memset (var, 0, sizeof (UInt160)); var->value0=0; var->value1=0; var->value2=0; num_chars = 0; for (i=0; i < buffer_size; i++) { c = buffer[i]; if (c < 33) { i++; c = buffer[i] - 0x20; } buffer_c[num_chars] = c; num_chars++; } for (i=num_chars - 1; i>=0; i--) { c = buffer_c[i]; uint160_shift (var, 8); uint160_add (var, c); } return TRUE; } gchar * uint160_strdup_printf (const UInt160 *var) { GString *string = g_string_new(""); guint64 val; gsize size = 0; guchar * pointer; int i; /* First, we calculate how many bytes are filled */ if (var->value2 != 0) { size = 16; val = var->value2; while (val != 0) { val = val >> 8; size++; } } else if (var->value1 != 0) { size = 8; val = var->value1; while (val != 0) { val = val >> 8; size ++; } } else if (var->value0 != 0) { val = var->value0; while (val != 0) { val = val >> 8; size ++; } } for (i=size-1; i>=0; i--) { if (i < 8) { pointer = (guchar *) &(var->value0); g_string_append_printf (string, "%s%02X", (i==(size-1)?"":":"), pointer[i]); } else if (i < 16) { pointer = (guchar *) &(var->value1); g_string_append_printf (string, "%s%02X", (i==(size-1)?"":":"), pointer[i-8]); } else { pointer = (guchar *) &(var->value2); g_string_append_printf (string, "%s%02X", (i==(size-1)?"":":"), pointer[i-16]); } } return g_string_free (string, FALSE); } void uint160_free (UInt160 *var) { g_free (var); } gnomint-1.3.0/src/gnomint-upgrade-db0000775000175000017500000000234612672052326014323 00000000000000#!/bin/sh if [ $# -ne 1 ] then echo echo "gnoMint database converter" echo "by David Marin " echo " " echo " Sintax: $0 ( -h | --help | gnoMint-db.filename ) " echo " " echo " `basename $0` converts an old (pre 0.1.4 version) gnoMint " echo " database (based in sqlite2) into a new database compatible with " echo " gnoMint 0.1.4 and newer, based in sqlite3" echo fi if [ ! `which sqlite` ] then echo "Sorry, but sqlite program (version 2) is required for make the " echo "conversion. Please install it." exit fi if [ ! `which sqlite3` ] then echo "Sorry, but sqlite3 program is required for make the conversion. Please" echo "install it." exit fi if [ ! -e $1 ] then echo "Sorry, the given file '$1' doesn't exist." exit fi if [ \( ! -r $1 \) -o \( ! -w $1 \) ] then echo "Sorry. You don't have enough permissions for reading and/or writing" echo "the given file." exit fi TMPFILE=`mktemp` echo .dump | sqlite $1 > $TMPFILE || (echo "There was a problem while extracting data from file."; echo "Conversion process cancelled"; exit) mv $1 $1.bak cat $TMPFILE | sqlite3 $1 && rm $TMPFILE echo "File converted successfully." gnomint-1.3.0/src/ca_file.c0000664000175000017500000026117312672054655012454 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include #include #include #include #include #include #include "dialog.h" #include "tls.h" #include "ca_file.h" #include "pkey_manage.h" #include #ifndef WIN32 #define GNOMINT_GUINT64_FORMAT G_GUINT64_FORMAT #else // G_GUINT64_FORMAT on windows currently defines "I64" which is not supported by SQLite #define GNOMINT_GUINT64_FORMAT "llu" #endif extern gchar * gnomint_current_opened_file; sqlite3 * ca_db = NULL; #define CURRENT_GNOMINT_DB_VERSION 12 void __ca_file_concat_string (sqlite3_context *context, int argc, sqlite3_value **argv); void __ca_file_zeropad (sqlite3_context *context, int argc, sqlite3_value **argv); void __ca_file_zeropad_route (sqlite3_context *context, int argc, sqlite3_value **argv); int __ca_file_get_single_row_cb (void *pArg, int argc, char **argv, char **columnNames); gchar ** __ca_file_get_single_row (sqlite3 *db, const gchar *query, ...); int __ca_file_get_revoked_certs_add_certificate (void *pArg, int argc, char **argv, char **columnNames); void __ca_file_mark_expired_and_revoked_certificates_as_already_shown_in_crl (guint64 ca_id, const GList *revoked_certs); int __ca_file_password_unprotect_cb (void *pArg, int argc, char **argv, char **columnNames); int __ca_file_password_protect_cb (void *pArg, int argc, char **argv, char **columnNames); int __ca_file_password_change_cb (void *pArg, int argc, char **argv, char **columnNames); gchar * __ca_file_get_field_from_id (CaFileElementType type, guint64 db_id, const gchar *field); gchar * __ca_file_check_and_update_version (sqlite3 * ca_checking_db); void __ca_file_concat_string (sqlite3_context *context, int argc, sqlite3_value **argv) { gchar *result = NULL; const guchar *aux1; gchar *aux2 = NULL; guint i; for (i=0; i < argc; i++) { aux1 = sqlite3_value_text(argv[i]); if (! result) { result = g_strdup ((const gchar *) aux1); } else { aux2 = g_strdup_printf ("%s%s", result, aux1); g_free (result); result = aux2; } } sqlite3_result_text (context, result, -1, g_free); } void __ca_file_zeropad (sqlite3_context *context, int argc, sqlite3_value **argv) { gchar * result = NULL; const gchar *value; int pad_size; gchar *aux = NULL; value = (const gchar *) sqlite3_value_text(argv[0]); pad_size = sqlite3_value_int (argv[1]); if (strlen(value) < pad_size) { aux = g_strnfill (pad_size - strlen(value),'0'); result = g_strconcat (aux, value, NULL); g_free (aux); } else { result = g_strdup (value); } sqlite3_result_text (context, result, -1, g_free); } void __ca_file_zeropad_route (sqlite3_context *context, int argc, sqlite3_value **argv) { gchar * result = NULL; const gchar *aux1; int pad_size; gchar **aux2 = NULL; gchar * aux3 = NULL; GString * res_str = NULL; aux1 = (const gchar *) sqlite3_value_text(argv[0]); pad_size = sqlite3_value_int (argv[1]); if (!strcmp (aux1, ":")) { result = g_strdup (aux1); } else { int i; aux2 = g_strsplit (aux1, ":", -1); res_str = g_string_new (""); for (i=0; i CURRENT_GNOMINT_DB_VERSION) { dialog_error (_("The selected database has been created with a newer version of gnoMint than the currently installed.")); return error; } switch (db_version_in_file) { /* Careful! This switch has not breaks, as all actions must be done for the earliest versions */ case 1: if (sqlite3_exec (ca_checking_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "CREATE TABLE ca_policies (id INTEGER PRIMARY KEY, ca_id INTEGER, name TEXT, value TEXT, UNIQUE (ca_id, name));", NULL, NULL, &error)) { return error; } sql = sqlite3_mprintf ("INSERT INTO ca_properties VALUES (NULL, 'ca_db_version', %d);", 2); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); if (sqlite3_exec (ca_checking_db, "COMMIT;", NULL, NULL, &error)) { return error; } case 2: if (sqlite3_exec (ca_checking_db, "BEGIN TRANSACTION;", NULL, NULL, &error)){ return error; } if (sqlite3_exec (ca_checking_db, "ALTER TABLE certificates ADD dn TEXT; ALTER TABLE certificates ADD parent_dn TEXT;", NULL, NULL, &error)){ return error; } { gchar **cert_table; gint rows, cols; gint i; if (sqlite3_get_table (ca_checking_db, "SELECT id, pem FROM certificates;", &cert_table, &rows, &cols, &error)) { return error; } for (i = 0; i < rows; i++) { TlsCert * tls_cert = tls_parse_cert_pem (cert_table[(i*2)+3]); sql = sqlite3_mprintf ("UPDATE certificates SET dn='%q', parent_dn='%q' WHERE id=%s;", tls_cert->dn, tls_cert->i_dn, cert_table[(i*2)+2]); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } tls_cert_free (tls_cert); tls_cert = NULL; } sqlite3_free_table (cert_table); } if (sqlite3_exec (ca_checking_db, "CREATE TABLE cert_requests_new (id INTEGER PRIMARY KEY, subject TEXT, pem TEXT, private_key_in_db BOOLEAN, private_key TEXT, dn TEXT UNIQUE);", NULL, NULL, &error)){ return error; } if (sqlite3_exec (ca_checking_db, "INSERT OR REPLACE INTO cert_requests_new SELECT *, NULL FROM cert_requests;", NULL, NULL, &error)){ return error; } if (sqlite3_exec (ca_checking_db, "DROP TABLE cert_requests;", NULL, NULL, &error)){ return error; } if (sqlite3_exec (ca_checking_db, "ALTER TABLE cert_requests_new RENAME TO cert_requests;", NULL, NULL, &error)){ return error; } { gchar **csr_table; gint rows, cols; gint i; if (sqlite3_get_table (ca_checking_db, "SELECT id, pem FROM cert_requests;", &csr_table, &rows, &cols, &error)) { return error; } for (i = 0; i < rows; i++) { TlsCsr * tls_csr = tls_parse_csr_pem (csr_table[(i*2)+3]); sql = sqlite3_mprintf ("UPDATE cert_requests SET dn='%q' WHERE id=%s;", tls_csr->dn, csr_table[(i*2)+2]); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } tls_csr_free (tls_csr); tls_csr = NULL; } sqlite3_free_table (csr_table); } sql = sqlite3_mprintf ("UPDATE ca_properties SET value=%d WHERE name='ca_db_version';", 3); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); if (sqlite3_exec (ca_checking_db, "COMMIT;", NULL, NULL, &error)){ return error; } case 3: if (sqlite3_exec (ca_checking_db, "BEGIN TRANSACTION;", NULL, NULL, &error)){ return error; } if (sqlite3_exec (ca_checking_db, "CREATE TABLE certificates_new (id INTEGER PRIMARY KEY, is_ca BOOLEAN, serial INT, subject TEXT, activation TIMESTAMP, expiration TIMESTAMP, revocation TIMESTAMP, pem TEXT, private_key_in_db BOOLEAN, private_key TEXT, dn TEXT, parent_dn TEXT);", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "INSERT OR REPLACE INTO certificates_new SELECT id, is_ca, serial, subject, activation, expiration, NULL, pem, private_key_in_db, private_key, dn, parent_dn FROM certificates;", NULL, NULL, &error)){ return error; } if (sqlite3_exec (ca_checking_db, "DROP TABLE certificates;", NULL, NULL, &error)){ return error; } if (sqlite3_exec (ca_checking_db, "ALTER TABLE certificates_new RENAME TO certificates;", NULL, NULL, &error)){ return error; } sql = sqlite3_mprintf ("UPDATE ca_properties SET value=%d WHERE name='ca_db_version';", 4); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); if (sqlite3_exec (ca_checking_db, "CREATE TABLE ca_crl (id INTEGER PRIMARY KEY, ca_id INTEGER, crl_version INTEGER, " "date TIMESTAMP, UNIQUE (ca_id, crl_version));", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "COMMIT;", NULL, NULL, &error)){ return error; } case 4: if (sqlite3_exec (ca_checking_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) { return error; } sql = sqlite3_mprintf ("INSERT INTO ca_properties VALUES (NULL, 'ca_db_is_password_protected', 0);"); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)) return error; sqlite3_free (sql); sql = sqlite3_mprintf ("INSERT INTO ca_properties VALUES (NULL, 'ca_db_hashed_password', '');"); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)) return error; sqlite3_free (sql); sql = sqlite3_mprintf ("UPDATE ca_properties SET value=%d WHERE name='ca_db_version';", 5); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); if (sqlite3_exec (ca_checking_db, "COMMIT;", NULL, NULL, &error)) return error; case 5: if (sqlite3_exec (ca_checking_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "ALTER TABLE ca_properties RENAME TO ca_properties_tmp;", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "CREATE TABLE ca_properties (id INTEGER PRIMARY KEY, ca_id INTEGER, name TEXT, value TEXT, UNIQUE (ca_id,name));", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "INSERT OR REPLACE INTO ca_properties SELECT id, 0, name, value FROM ca_properties_tmp WHERE name LIKE 'ca_db_%';", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "INSERT OR REPLACE INTO ca_properties SELECT id, 1, name, value FROM ca_properties_tmp WHERE name LIKE 'ca_root_%';", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "DROP TABLE ca_properties_tmp;", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "CREATE TABLE certificates_tmp (id INTEGER PRIMARY KEY, is_ca BOOLEAN, serial TEXT, subject TEXT, " "activation TIMESTAMP, expiration TIMESTAMP, revocation TIMESTAMP, pem TEXT, private_key_in_db BOOLEAN, " "private_key TEXT, dn TEXT, parent_dn TEXT, parent_id INTEGER DEFAULT 0, parent_route TEXT);", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "INSERT OR REPLACE INTO certificates_tmp SELECT *, 0, NULL FROM certificates;", NULL, NULL, &error)) { return error; } { gchar **cert_table; gint rows, cols; gint i; if (sqlite3_get_table (ca_checking_db, "SELECT id, serial FROM certificates;", &cert_table, &rows, &cols, &error)) { return error; } for (i = 1; i <= rows; i++) { gchar *new_serial; UInt160 aux160; guint64 old_serial = atoll(cert_table[(i*cols)+1]); gchar *hex_guint64_format_string = g_strdup_printf ("%%0%s", G_GUINT64_FORMAT); gchar *aux = NULL; hex_guint64_format_string[strlen(hex_guint64_format_string) - 1] = 'X'; aux = g_strdup_printf (hex_guint64_format_string, old_serial); g_free (hex_guint64_format_string); uint160_read (&aux160, (guchar *) aux, strlen(aux)); new_serial = uint160_strdup_printf(&aux160); sql = sqlite3_mprintf ("UPDATE certificates_tmp SET serial='%q' WHERE id=%s;", new_serial, cert_table[i*cols]); g_free (aux); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); } sqlite3_free_table (cert_table); } { UInt160 aux160; gchar *aux; gsize size = 0; uint160_assign (&aux160, 0); uint160_write_escaped (&aux160, NULL, &size); aux = g_new0(gchar, size+1); uint160_write_escaped (&aux160, aux, &size); sql = sqlite3_mprintf ("UPDATE ca_properties SET value='%q' WHERE name='ca_root_last_assigned_serial' and ca_id=1;", aux); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)) { return error; } sqlite3_free (sql); g_free (aux); } if (sqlite3_exec (ca_checking_db, "INSERT INTO ca_properties (id, ca_id, name, value) " "VALUES (NULL, 1, 'ca_root_must_check_serial_dups', 1);", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "DROP TABLE certificates;", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "ALTER TABLE certificates_tmp RENAME TO certificates;", NULL, NULL, &error)) { return error; } { gchar **cert_table; gint rows, cols; gint i; if (sqlite3_get_table (ca_checking_db, "SELECT id, dn FROM certificates;", &cert_table, &rows, &cols, &error)) { return error; } for (i = 0; i < rows; i++) { sql = sqlite3_mprintf ("UPDATE certificates SET parent_id='%q' WHERE parent_dn='%q';", cert_table[(i*2)+2], cert_table[(i*2)+3]); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); } sqlite3_free_table (cert_table); } sql = sqlite3_mprintf ("UPDATE certificates SET parent_route=':' WHERE dn=parent_dn;"); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); sql = sqlite3_mprintf ("UPDATE certificates SET parent_route=':1:' WHERE dn<>parent_dn;"); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); sql = sqlite3_mprintf ("UPDATE ca_properties SET value=%d WHERE name='ca_db_version' AND ca_id=0;", 6); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); if (sqlite3_exec (ca_checking_db, "COMMIT;", NULL, NULL, &error)) return error; case 6: if (sqlite3_exec (ca_checking_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "ALTER TABLE certificates ADD COLUMN expired_already_in_crl INTEGER DEFAULT '0';", NULL, NULL, &error)) { return error; } sql = sqlite3_mprintf ("UPDATE ca_properties SET value=%d WHERE name='ca_db_version' AND ca_id=0;", 7); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); if (sqlite3_exec (ca_checking_db, "COMMIT;", NULL, NULL, &error)) return error; case 7: if (sqlite3_exec (ca_checking_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "ALTER TABLE cert_requests ADD COLUMN parent_ca INTEGER DEFAULT NULL;", NULL, NULL, &error)) { return error; } sql = sqlite3_mprintf ("UPDATE ca_properties SET value=%d WHERE name='ca_db_version' AND ca_id=0;", 8); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); if (sqlite3_exec (ca_checking_db, "COMMIT;", NULL, NULL, &error)) return error; case 8: if (sqlite3_exec (ca_checking_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "ALTER TABLE certificates ADD COLUMN subject_key_id TEXT DEFAULT NULL;", NULL, NULL, &error)) { return error; } { gchar **cert_table; gint rows, cols; gint i; if (sqlite3_get_table (ca_checking_db, "SELECT id, pem FROM certificates;", &cert_table, &rows, &cols, &error)) { return error; } for (i = 0; i < rows; i++) { TlsCert *tls_cert = tls_parse_cert_pem (cert_table[(i*2)+3]); if (tls_cert->subject_key_id) { sql = sqlite3_mprintf ("UPDATE certificates SET subject_key_id='%q' WHERE id='%q';", tls_cert->subject_key_id, cert_table[(i*2)+2]); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); } tls_cert_free(tls_cert); } sqlite3_free_table (cert_table); } sql = sqlite3_mprintf ("UPDATE ca_properties SET value=%d WHERE name='ca_db_version' AND ca_id=0;", 9); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); if (sqlite3_exec (ca_checking_db, "COMMIT;", NULL, NULL, &error)) return error; case 9: if (sqlite3_exec (ca_checking_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "ALTER TABLE certificates ADD COLUMN issuer_key_id TEXT DEFAULT NULL;", NULL, NULL, &error)) { return error; } { gchar **cert_table; gint rows, cols; gint i; if (sqlite3_get_table (ca_checking_db, "SELECT id, pem FROM certificates;", &cert_table, &rows, &cols, &error)) { return error; } for (i = 0; i < rows; i++) { TlsCert *tls_cert = tls_parse_cert_pem (cert_table[(i*2)+3]); if (tls_cert->issuer_key_id) { sql = sqlite3_mprintf ("UPDATE certificates SET issuer_key_id='%q' WHERE id='%q';", tls_cert->issuer_key_id, cert_table[(i*2)+2]); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); } tls_cert_free(tls_cert); } sqlite3_free_table (cert_table); } sql = sqlite3_mprintf ("UPDATE ca_properties SET value=%d WHERE name='ca_db_version' AND ca_id=0;", 10); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); if (sqlite3_exec (ca_checking_db, "COMMIT;", NULL, NULL, &error)) return error; case 10: if (sqlite3_exec (ca_checking_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) { return error; } { gchar **data_table; gint rows, cols; gint i; UInt160 serial; gchar *aux = NULL; gsize size = 0; if (sqlite3_get_table (ca_checking_db, "SELECT value, ca_id FROM ca_properties WHERE name='ca_root_last_assigned_serial'", &data_table, &rows, &cols, &error)) { return error; } for (i = 1; i <= rows; i++) { size = 0; aux = NULL; uint160_read_escaped_old_format (&serial, data_table[(i*2)], strlen (data_table[i*2])); uint160_write_escaped (&serial, NULL, &size); aux = g_new0(gchar, size+1); uint160_write_escaped (&serial, aux, &size); sql = sqlite3_mprintf ("UPDATE ca_properties SET value='%q' WHERE name='ca_root_last_assigned_serial' and ca_id=%" GNOMINT_GUINT64_FORMAT";", aux, atoll(data_table[(i*2)+1])); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)) { return error; } sqlite3_free (sql); g_free (aux); } sqlite3_free_table (data_table); } sql = sqlite3_mprintf ("UPDATE ca_properties SET value=%d WHERE name='ca_db_version';", 11); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); if (sqlite3_exec (ca_checking_db, "COMMIT;", NULL, NULL, &error)) return error; case 11: if (sqlite3_exec (ca_checking_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) { return error; } if (sqlite3_exec (ca_checking_db, "CREATE TABLE db_properties (id INTEGER PRIMARY KEY, name TEXT, value TEXT, UNIQUE (name));", NULL, NULL, &error)) { return error; } { gchar **data_table; gint rows, cols; gint i; if (sqlite3_get_table (ca_checking_db, "SELECT ca_id, name, value FROM ca_properties", &data_table, &rows, &cols, &error)) { return error; } for (i = 1; i <= rows; i++) { // Check if the property should be moved to ca_policies (ca_id != 0 && name != "ca_root_certificate_pem") if (atoi(data_table[(i*3)]) != 0 && strcmp(data_table[(i*3)+1], "ca_root_certificate_pem")) { if (!strcmp (data_table[(i*3)+1], "ca_root_last_assigned_serial")) { sql = sqlite3_mprintf ("INSERT INTO ca_policies (ca_id, name, value) " "VALUES (%s, 'ca_last_assigned_serial', '%q')", data_table[(i*3)], data_table[(i*3)+2]); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)) { return error; } sqlite3_free (sql); } else if (!strcmp (data_table[(i*3)+1], "ca_root_must_check_serial_dups")) { sql = sqlite3_mprintf ("INSERT INTO ca_policies (ca_id, name, value) " "VALUES (%s, 'ca_must_check_serial_dups', '%q')", data_table[(i*3)], data_table[(i*3)+2]); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)) { return error; } sqlite3_free (sql); } } if (! strcmp(data_table[(i*3)+1], "ca_db_version")) { sql = sqlite3_mprintf ("INSERT INTO db_properties (name, value) " "VALUES ('ca_db_version', '%q')", data_table[(i*3)+2]); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)) { return error; } sqlite3_free (sql); } if (! strcmp(data_table[(i*3)+1], "ca_db_is_password_protected")) { sql = sqlite3_mprintf ("INSERT INTO db_properties (name, value) " "VALUES ('is_password_protected', '%q')", data_table[(i*3)+2]); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)) { return error; } sqlite3_free (sql); } if (! strcmp(data_table[(i*3)+1], "ca_db_hashed_password")) { sql = sqlite3_mprintf ("INSERT INTO db_properties (name, value) " "VALUES ('hashed_password', '%q')", data_table[(i*3)+2]); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)) { return error; } sqlite3_free (sql); } } sqlite3_free_table (data_table); } if (sqlite3_exec (ca_checking_db, "DROP TABLE ca_properties", NULL, NULL, &error)) return error; if (sqlite3_exec (ca_checking_db, "CREATE VIEW ca_properties AS SELECT id, name, value FROM db_properties;", NULL, NULL, &error)) { return error; } sql = sqlite3_mprintf ("UPDATE db_properties SET value=%d WHERE name='ca_db_version';", 12); if (sqlite3_exec (ca_checking_db, sql, NULL, NULL, &error)){ return error; } sqlite3_free (sql); if (sqlite3_exec (ca_checking_db, "COMMIT;", NULL, NULL, &error)) return error; case 12: /* Nothing must be done, as this is the current gnoMint db version */ break; } return NULL; } gboolean ca_file_open (gchar *file_name, gboolean create) { gchar *dirname = NULL; gchar *error = NULL; sqlite3 * ca_opening_db = NULL; dirname = g_path_get_dirname (file_name); if (! g_file_test(dirname, G_FILE_TEST_IS_DIR)) { if (! create) { g_free (dirname); return FALSE; } else { if (g_mkdir_with_parents (dirname, 0700) == -1) { g_free (dirname); return FALSE; } } } g_free (dirname); if (! g_file_test(file_name, G_FILE_TEST_EXISTS)) { if (! create) return FALSE; else ca_file_create (file_name); } if (sqlite3_open(file_name, &ca_opening_db)) { g_printerr ("%s\n\n", sqlite3_errmsg(ca_opening_db)); return FALSE; } else { error = __ca_file_check_and_update_version (ca_opening_db); if (error) { fprintf (stderr, "Error while updating version: %s\n", error); //g_free (error); It mustn't be freed: it is always constant sqlite3_close (ca_opening_db); ca_opening_db = NULL; return FALSE; } } gnomint_current_opened_file = file_name; if (ca_db) { sqlite3_close (ca_db); ca_db = NULL; } ca_db = ca_opening_db; sqlite3_create_function (ca_db, "concat", -1, SQLITE_ANY, NULL, __ca_file_concat_string, NULL, NULL); sqlite3_create_function (ca_db, "zeropad", 2, SQLITE_ANY, NULL, __ca_file_zeropad, NULL, NULL); sqlite3_create_function (ca_db, "zeropad_route", 2, SQLITE_ANY, NULL, __ca_file_zeropad_route, NULL, NULL); return TRUE; } void ca_file_close () { sqlite3_close (ca_db); ca_db = NULL; if (gnomint_current_opened_file) { g_free (gnomint_current_opened_file); gnomint_current_opened_file = NULL; } } gboolean ca_file_save_as (gchar *new_file_name) { gchar * initial_file = g_strdup(gnomint_current_opened_file); GMappedFile *map = NULL; ca_file_close (); if (! (map = g_mapped_file_new (initial_file, FALSE, NULL))) { ca_file_open (gnomint_current_opened_file, FALSE); return FALSE; } if (! g_file_set_contents (new_file_name, g_mapped_file_get_contents (map), g_mapped_file_get_length (map), NULL)) { g_mapped_file_unref(map); ca_file_open (gnomint_current_opened_file, FALSE); return FALSE; } g_mapped_file_unref(map); g_free (initial_file); return ca_file_open (new_file_name, FALSE); } gint ca_file_get_number_of_certs () { gint result; gchar **aux; aux = __ca_file_get_single_row (ca_db, "SELECT COUNT(*) FROM certificates"); result = atoi (aux[0]); g_strfreev (aux); return result; } gint ca_file_get_number_of_csrs () { gint result; gchar **aux; aux = __ca_file_get_single_row (ca_db, "SELECT COUNT(*) FROM cert_requests"); result = atoi (aux[0]); g_strfreev (aux); return result; } void ca_file_get_next_serial (UInt160 *serial, guint64 ca_id) { gchar *serialstr = NULL; gchar **row = NULL; row = __ca_file_get_single_row (ca_db, "SELECT value FROM ca_policies WHERE name='ca_last_assigned_serial' AND ca_id=%" GNOMINT_GUINT64_FORMAT";", ca_id); if (row) { uint160_read_escaped (serial, row[0], strlen (row[0])); g_strfreev (row); } else { g_error (_("Cannot find last assigned serial number")); } row = __ca_file_get_single_row (ca_db, "SELECT value FROM ca_policies WHERE " "name='ca_must_check_serial_dups' AND ca_id=%"GNOMINT_GUINT64_FORMAT";", ca_id); if (row) { if (atoi(row[0])) { while (row) { uint160_inc (serial); g_strfreev (row); serialstr = uint160_strdup_printf (serial); row = __ca_file_get_single_row (ca_db, "SELECT id FROM certificates WHERE serial='%q' AND parent_id=%"GNOMINT_GUINT64_FORMAT";", serialstr, ca_id); g_free (serialstr); } } else { uint160_inc (serial); g_strfreev (row); } } else { uint160_inc (serial); } return; } gboolean ca_file_set_next_serial (UInt160 *serial, guint64 ca_id) { gsize size; gchar *serialstr = NULL; gchar *sql = NULL; gchar *error = NULL; size = 0; uint160_dec (serial); uint160_write_escaped (serial, NULL, &size); serialstr = g_new0(gchar, size+1); uint160_write_escaped (serial, serialstr, &size); sql = sqlite3_mprintf ("UPDATE ca_policies SET value='%q' WHERE name='ca_last_assigned_serial' and ca_id=%"GNOMINT_GUINT64_FORMAT";", serialstr, ca_id); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { fprintf (stderr, "%s: %s\n", error, sql); sqlite3_free (sql); return FALSE; } sqlite3_free (sql); g_free (serialstr); return TRUE; } gchar * ca_file_insert_self_signed_ca (gchar *pem_ca_private_key, gchar *pem_ca_certificate) { gchar *sql = NULL; gchar *error = NULL; gchar *aux = NULL; gsize size; UInt160 sn; gchar *serialstr; gchar **row; gint64 rootca_rowid; guint64 rootca_id; gchar *sql_subject_key_id = NULL; gchar *sql_issuer_key_id = NULL; TlsCert *tls_cert = tls_parse_cert_pem (pem_ca_certificate); uint160_assign (&sn, 1); serialstr = uint160_strdup_printf(&sn); sql_subject_key_id = (tls_cert->subject_key_id ? g_strdup_printf ("'%s'",tls_cert->subject_key_id) : g_strdup_printf ("NULL")); sql_issuer_key_id = (tls_cert->issuer_key_id ? g_strdup_printf ("'%s'",tls_cert->issuer_key_id) : g_strdup_printf ("NULL")); if (sqlite3_exec (ca_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) return error; sql = sqlite3_mprintf ("INSERT INTO certificates (id, is_ca, serial, subject, activation, expiration, revocation, pem, private_key_in_db, " "private_key, dn, parent_dn, parent_id, parent_route, subject_key_id, issuer_key_id) " "VALUES (NULL, 1, '%q', '%q', '%ld', '%ld', NULL, '%q', 1, '%q','%q','%q', 0, ':', %s, %s);", serialstr, tls_cert->cn, tls_cert->activation_time, tls_cert->expiration_time, pem_ca_certificate, pem_ca_private_key, tls_cert->dn, tls_cert->i_dn, sql_subject_key_id, sql_issuer_key_id); g_free (sql_subject_key_id); g_free (sql_issuer_key_id); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) return error; sqlite3_free (sql); g_free (serialstr); rootca_rowid = sqlite3_last_insert_rowid (ca_db); row = __ca_file_get_single_row (ca_db, "SELECT id FROM certificates WHERE ROWID=%"GNOMINT_GUINT64_FORMAT" ;", rootca_rowid); rootca_id = atoll (row[0]); g_strfreev (row); size = 0; uint160_write_escaped (&sn, NULL, &size); aux = g_new0 (gchar, size + 1); uint160_write_escaped (&sn, aux, &size); sql = sqlite3_mprintf ("INSERT INTO ca_policies (id, ca_id, name, value) VALUES (NULL, %"GNOMINT_GUINT64_FORMAT", 'ca_last_assigned_serial', '%q');", rootca_id, aux); g_free (aux); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) return error; sqlite3_free (sql); ca_file_policy_set (rootca_id, "MONTHS_TO_EXPIRE", "60"); ca_file_policy_set (rootca_id, "HOURS_BETWEEN_CRL_UPDATES", "24"); ca_file_policy_set (rootca_id, "DIGITAL_SIGNATURE", "1"); ca_file_policy_set (rootca_id, "KEY_ENCIPHERMENT", "1"); ca_file_policy_set (rootca_id, "KEY_AGREEMENT", "1"); ca_file_policy_set (rootca_id, "DATA_ENCIPHERMENT", "1"); ca_file_policy_set (rootca_id, "TLS_WEB_SERVER", "1"); ca_file_policy_set (rootca_id, "TLS_WEB_CLIENT", "1"); ca_file_policy_set (rootca_id, "EMAIL_PROTECTION", "1"); if (tls_cert->crl_distribution_point) { ca_file_policy_set (rootca_id, "CRL_DISTRIBUTION_POINT", tls_cert->crl_distribution_point); } if (sqlite3_exec (ca_db, "COMMIT;", NULL, NULL, &error)) return error; tls_cert_free (tls_cert); tls_cert = NULL; return NULL; } gchar * ca_file_insert_cert (gboolean is_ca, gboolean private_key_in_db, gchar *private_key_info, gchar *pem_certificate) { gchar *sql = NULL; gchar *error = NULL; gchar **row; UInt160 serial; gchar *serialstr; gsize size; gint64 cert_rowid; guint64 cert_id; gchar **parent_idstr = NULL; guint64 parent_id; gchar *parent_route = NULL; gchar *sql_subject_key_id = NULL; gchar *sql_issuer_key_id = NULL; TlsCert *tlscert = tls_parse_cert_pem (pem_certificate); sql_subject_key_id = (tlscert->subject_key_id ? g_strdup_printf ("'%s'",tlscert->subject_key_id) : g_strdup_printf ("NULL")); sql_issuer_key_id = (tlscert->issuer_key_id ? g_strdup_printf ("'%s'",tlscert->issuer_key_id) : g_strdup_printf ("NULL")); if (sqlite3_exec (ca_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) return error; parent_idstr = __ca_file_get_single_row (ca_db, "SELECT id, parent_route FROM certificates WHERE subject_key_id='%q';", tlscert->issuer_key_id); if (parent_idstr == NULL) { error = _("Cannot find parent CA in database"); return error; } else { parent_id = atoll (parent_idstr[0]); parent_route = g_strdup_printf("%s%s:",parent_idstr[1], parent_idstr[0]); g_strfreev (parent_idstr); } uint160_assign (&serial, 0); ca_file_get_next_serial (&serial, parent_id); serialstr = uint160_strdup_printf(&serial); if (private_key_info) sql = sqlite3_mprintf ("INSERT INTO certificates (id, is_ca, serial, subject, activation, expiration, revocation, " "pem, private_key_in_db, private_key, dn, parent_dn, parent_id, parent_route, subject_key_id, " "issuer_key_id) " "VALUES (NULL, %d, '%q', '%q', '%ld', '%ld', " "NULL, '%q', %d, '%q', '%q', '%q', %"GNOMINT_GUINT64_FORMAT", '%q', %s, %s);", is_ca, serialstr, tlscert->cn, tlscert->activation_time, tlscert->expiration_time, pem_certificate, private_key_in_db, private_key_info, tlscert->dn, tlscert->i_dn, parent_id, parent_route, sql_subject_key_id, sql_issuer_key_id); else sql = sqlite3_mprintf ("INSERT INTO certificates (id, is_ca, serial, subject, activation, expiration, revocation, " "pem, private_key_in_db, private_key, dn, parent_dn, parent_id, parent_route, subject_key_id, " "issuer_key_id) " "VALUES (NULL, %d, '%q', '%q', '%ld', '%ld', NULL, '%q', 0, NULL, '%q', '%q'," "%"GNOMINT_GUINT64_FORMAT", '%q', %s, %s);", is_ca, serialstr, tlscert->cn, tlscert->activation_time, tlscert->expiration_time, pem_certificate, tlscert->dn, tlscert->i_dn, parent_id, parent_route, sql_subject_key_id, sql_issuer_key_id); g_free (serialstr); tls_cert_free (tlscert); tlscert = NULL; g_free (parent_route); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, NULL); fprintf (stderr, "%s\n", sql); sqlite3_free (sql); return error; } sqlite3_free (sql); cert_rowid = sqlite3_last_insert_rowid (ca_db); row = __ca_file_get_single_row (ca_db, "SELECT id FROM certificates WHERE ROWID=%"GNOMINT_GUINT64_FORMAT" ;", cert_rowid); cert_id = atoll (row[0]); g_strfreev (row); size = 0; uint160_write_escaped (&serial, NULL, &size); serialstr = g_new0(gchar, size+1); uint160_write_escaped (&serial, serialstr, &size); sql = sqlite3_mprintf ("UPDATE ca_policies SET value='%q' WHERE name='ca_last_assigned_serial' and ca_id=%"GNOMINT_GUINT64_FORMAT";", serialstr, parent_id); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, NULL); fprintf (stderr, "%s\n", sql); sqlite3_free (sql); return error; } g_free (serialstr); sqlite3_free (sql); if (is_ca) { size = 0; uint160_assign (&serial, 0); uint160_write_escaped (&serial, NULL, &size); serialstr = g_new0(gchar, size+1); uint160_write_escaped (&serial, serialstr, &size); sql = sqlite3_mprintf ("INSERT INTO ca_policies (id, ca_id, name, value) " "VALUES (NULL, %"GNOMINT_GUINT64_FORMAT", 'ca_last_assigned_serial', '%q');", cert_id, serialstr); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, NULL); fprintf (stderr, "%s\n", sql); sqlite3_free (sql); return error; } sqlite3_free (sql); g_free (serialstr); if (! ca_file_policy_set (cert_id, "MONTHS_TO_EXPIRE", "60") || ! ca_file_policy_set (cert_id, "HOURS_BETWEEN_CRL_UPDATES", "24")|| ! ca_file_policy_set (cert_id, "DIGITAL_SIGNATURE", "1")|| ! ca_file_policy_set (cert_id, "KEY_ENCIPHERMENT", "1") || ! ca_file_policy_set (cert_id, "KEY_AGREEMENT", "1") || ! ca_file_policy_set (cert_id, "DATA_ENCIPHERMENT", "1") || ! ca_file_policy_set (cert_id, "TLS_WEB_SERVER", "1") || ! ca_file_policy_set (cert_id, "TLS_WEB_CLIENT", "1") || ! ca_file_policy_set (cert_id, "EMAIL_PROTECTION", "1")) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, NULL); sqlite3_free (sql); return g_strdup ("Error while establishing policies."); } } if (sqlite3_exec (ca_db, "COMMIT;", NULL, NULL, &error)) return error; return NULL; } gchar * ca_file_insert_imported_cert (gboolean is_ca, const UInt160 serial, const gchar *pem_certificate, guint64 *id) { guint64 cert_id; guint64 parent_id; gchar *parent_route = NULL; gchar *parent_pem = NULL; gchar *serialstr = NULL; gchar **issuer_res = NULL; gchar **orphan_res = NULL; gchar **existent_res = NULL; gchar *error = NULL; gchar *sql_subject_key_id = NULL; gchar *sql_issuer_key_id = NULL; gchar *sql_subject_key_id_with_condition = NULL; gchar *sql_issuer_key_id_with_condition = NULL; gchar *sql = NULL; TlsCert *tlscert = tls_parse_cert_pem (pem_certificate); sql_subject_key_id = (tlscert->subject_key_id ? g_strdup_printf ("'%s'",tlscert->subject_key_id) : g_strdup_printf ("NULL")); sql_issuer_key_id = (tlscert->issuer_key_id ? g_strdup_printf ("'%s'",tlscert->issuer_key_id) : g_strdup_printf ("NULL")); sql_subject_key_id_with_condition = (tlscert->subject_key_id ? g_strdup_printf ("= '%s'",tlscert->subject_key_id) : g_strdup_printf ("IS NULL")); sql_issuer_key_id_with_condition = (tlscert->issuer_key_id ? g_strdup_printf ("= '%s'",tlscert->issuer_key_id) : g_strdup_printf ("IS NULL")); // Let's check if it is already in the database: we don't want to import // the same certificate several times. existent_res = __ca_file_get_single_row (ca_db, "SELECT count (id) FROM certificates WHERE " "dn='%q' AND parent_dn='%q' AND " "subject_key_id %s and issuer_key_id %s;", tlscert->dn, tlscert->i_dn, sql_subject_key_id_with_condition, sql_issuer_key_id_with_condition); g_free (sql_subject_key_id_with_condition); g_free (sql_issuer_key_id_with_condition); if (! existent_res) { g_free (sql_subject_key_id); g_free (sql_issuer_key_id); tls_cert_free (tlscert); return error; } if (atoi(existent_res[0]) != 0) { g_free (sql_subject_key_id); g_free (sql_issuer_key_id); tls_cert_free (tlscert); return _("This certificate already exists in the database: cannot insert it twice."); } if (sqlite3_exec (ca_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) { g_free (sql_subject_key_id); g_free (sql_issuer_key_id); tls_cert_free (tlscert); return error; } // We first look up if the issuer is already in the database // * We first search using issuer_key_id (if the imported certificate has this field) if (tlscert->issuer_key_id) { issuer_res = __ca_file_get_single_row (ca_db, "SELECT id, parent_route, pem FROM certificates WHERE is_ca=1 AND subject_key_id='%q';", tlscert->issuer_key_id); } if ((! issuer_res) && (tlscert->i_dn)) { // * If is not found, we seek the issuer through the issuer_dn field issuer_res = __ca_file_get_single_row (ca_db, "SELECT id, parent_route, pem FROM certificates WHERE is_ca=1 AND dn='%q';", tlscert->i_dn); } if (issuer_res) { parent_id = atoll (issuer_res[0]); parent_route = g_strdup_printf("%s%s:",issuer_res[1], issuer_res[0]); parent_pem = g_strdup (issuer_res[2]); g_strfreev (issuer_res); } else { // No possible parent certificate was found parent_id = 0; parent_route = g_strdup(":"); parent_pem = NULL; } // * Now, if we have found a possible issuer, we verify if the imported certificate has been issued by it if (parent_id != 0) { if (! tls_cert_check_issuer (pem_certificate, parent_pem)) { // The possible parent is not the issuer. parent_id = 0; g_free (parent_route); parent_route = g_strdup(":"); } } g_free (parent_pem); parent_pem = NULL; // We insert the certificate, with the correct issuer, if this has been found serialstr = uint160_strdup_printf(&serial); sql = sqlite3_mprintf ("INSERT INTO certificates (id, is_ca, serial, subject, activation, expiration, revocation, " "pem, private_key_in_db, private_key, dn, parent_dn, parent_id, parent_route, subject_key_id, " "issuer_key_id) " "VALUES (NULL, %d, '%q', '%q', '%ld', '%ld', NULL, '%q', 0, NULL, '%q', '%q'," "%"GNOMINT_GUINT64_FORMAT", '%q', %s, %s);", is_ca, serialstr, tlscert->cn, tlscert->activation_time, tlscert->expiration_time, pem_certificate, tlscert->dn, tlscert->i_dn, parent_id, parent_route, sql_subject_key_id, sql_issuer_key_id); g_free (serialstr); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, NULL); fprintf (stderr, "%s\n", sql); sqlite3_free (sql); tls_cert_free (tlscert); return error; } sqlite3_free (sql); cert_id = sqlite3_last_insert_rowid(ca_db); if (id) *id = cert_id; if (is_ca) { gint rows, cols; gint i; gsize size; UInt160 new_serial; // Now we look all "orphan" certificates, for seeing if the just inserted certificate is their issuer // so we only look up if their issuer_key_id is the same as the just-inserted-cert subject_key_id, or if // their parent_dn is the same as the just-inserted-cert DN. sql = sqlite3_mprintf ("SELECT id, pem FROM certificates WHERE " "parent_route=':' AND parent_id=0 AND (subject_key_id <> issuer_key_id OR dn <> parent_dn) " "AND (issuer_key_id = %s OR parent_dn = '%q');", sql_subject_key_id, tlscert->dn); if (sqlite3_get_table (ca_db, sql, &orphan_res, &rows, &cols, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); sqlite3_free (sql); return error; } sqlite3_free (sql); // * So, for each orphan certificate that could have been issued by the just-inserted certificate, for (i=1; i<=rows; i++) { // We verify if the imported certificate has issued it if (tls_cert_check_issuer (orphan_res[(i*2)+1], pem_certificate)) { // * If it has, we update the certificate parent_id, and parent_route // so it matches with the imported certificate sql = sqlite3_mprintf ("UPDATE certificates SET " "parent_dn='%q', " "parent_id=%"GNOMINT_GUINT64_FORMAT", " "parent_route='%s%"GNOMINT_GUINT64_FORMAT":'" "WHERE id=%s;", tlscert->dn, cert_id, parent_route,cert_id, orphan_res[i*2]); printf("%s\n",sql); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, NULL); fprintf (stderr, "%s\n", sql); sqlite3_free (sql); tls_cert_free (tlscert); return error; } sqlite3_free (sql); sql = sqlite3_mprintf ("UPDATE certificates SET " "parent_route=concat('%s%"GNOMINT_GUINT64_FORMAT"',parent_route)" "WHERE parent_route LIKE ':%s:%%';", parent_route, cert_id, orphan_res[i*2]); printf("%s\n",sql); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, NULL); fprintf (stderr, "%s\n", sql); sqlite3_free (sql); tls_cert_free (tlscert); return error; } sqlite3_free (sql); } } // * Now, we initialize minimally the just imported CA size = 0; uint160_assign (&new_serial, 0); uint160_write_escaped (&new_serial, NULL, &size); serialstr = g_new0(gchar, size+1); uint160_write_escaped (&new_serial, serialstr, &size); sql = sqlite3_mprintf ("INSERT INTO ca_policies (id, ca_id, name, value) " "VALUES (NULL, %"GNOMINT_GUINT64_FORMAT", 'ca_last_assigned_serial', '%q');", cert_id, serialstr); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, NULL); fprintf (stderr, "%s\n", sql); sqlite3_free (sql); return error; } sqlite3_free (sql); g_free (serialstr); sql = sqlite3_mprintf ("INSERT INTO ca_policies (id, ca_id, name, value) " "VALUES (NULL, %"GNOMINT_GUINT64_FORMAT", 'ca_must_check_serial_dups', 1);", cert_id); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, NULL); fprintf (stderr, "%s\n", sql); sqlite3_free (sql); return error; } sqlite3_free (sql); if (! ca_file_policy_set (cert_id, "MONTHS_TO_EXPIRE", "60") || ! ca_file_policy_set (cert_id, "HOURS_BETWEEN_CRL_UPDATES", "24")|| ! ca_file_policy_set (cert_id, "DIGITAL_SIGNATURE", "1")|| ! ca_file_policy_set (cert_id, "KEY_ENCIPHERMENT", "1") || ! ca_file_policy_set (cert_id, "KEY_AGREEMENT", "1") || ! ca_file_policy_set (cert_id, "DATA_ENCIPHERMENT", "1") || ! ca_file_policy_set (cert_id, "TLS_WEB_SERVER", "1") || ! ca_file_policy_set (cert_id, "TLS_WEB_CLIENT", "1") || ! ca_file_policy_set (cert_id, "EMAIL_PROTECTION", "1")) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, NULL); sqlite3_free (sql); return g_strdup ("Error while establishing policies."); } } g_free (parent_route); tls_cert_free (tlscert); if (sqlite3_exec (ca_db, "COMMIT;", NULL, NULL, &error)) return error; return NULL; } gchar * ca_file_insert_csr (gchar *pem_csr_private_key, gchar *pem_csr, gchar *parent_ca_id_str, guint64 *id) { gchar *sql = NULL; gchar *error = NULL; TlsCsr * tlscsr = tls_parse_csr_pem (pem_csr); if (sqlite3_exec (ca_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) return error; if (pem_csr_private_key) sql = sqlite3_mprintf ("INSERT INTO cert_requests (id, subject, pem, private_key_in_db, private_key, dn, parent_ca) " "VALUES (NULL, '%q', '%q', 1, '%q','%q', %s);", tlscsr->cn, pem_csr, pem_csr_private_key, tlscsr->dn, (parent_ca_id_str ? parent_ca_id_str : "NULL") ); else sql = sqlite3_mprintf ("INSERT INTO cert_requests (id, subject, pem, private_key_in_db, private_key, dn, parent_ca) " "VALUES (NULL, '%q', '%q', 0, NULL, '%q', %s);", tlscsr->cn, pem_csr, tlscsr->dn, (parent_ca_id_str ? parent_ca_id_str : "NULL") ); tls_csr_free (tlscsr); tlscsr = NULL; if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { fprintf (stderr, "%s: %s\n", sql, error); sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, NULL); return error; } sqlite3_free (sql); if (id) *id = sqlite3_last_insert_rowid(ca_db); if (sqlite3_exec (ca_db, "COMMIT;", NULL, NULL, &error)) return error; return NULL; } gchar * ca_file_remove_csr (guint64 id) { gchar *sql = NULL; gchar *error = NULL; if (sqlite3_exec (ca_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) return error; sql = sqlite3_mprintf ("DELETE FROM cert_requests WHERE id = %"GNOMINT_GUINT64_FORMAT" ;", id); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) return error; sqlite3_free (sql); if (sqlite3_exec (ca_db, "COMMIT;", NULL, NULL, &error)) return error; return NULL; } gchar * ca_file_revoke_crt (guint64 id) { gchar *sql = NULL; gchar *error = NULL; if (sqlite3_exec (ca_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) return error; sql = sqlite3_mprintf ("UPDATE certificates SET revocation=%ld WHERE id = %"GNOMINT_GUINT64_FORMAT" ;", time(NULL), id); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) return error; sqlite3_free (sql); if (sqlite3_exec (ca_db, "COMMIT;", NULL, NULL, &error)) return error; return NULL; } gchar * ca_file_revoke_crt_with_date (guint64 id, time_t date) { gchar *sql = NULL; gchar *error = NULL; if (sqlite3_exec (ca_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) return error; sql = sqlite3_mprintf ("UPDATE certificates SET revocation=%ld WHERE id = %"GNOMINT_GUINT64_FORMAT" ;", date, id); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) return error; sqlite3_free (sql); if (sqlite3_exec (ca_db, "COMMIT;", NULL, NULL, &error)) return error; return NULL; } gchar * ca_file_insert_imported_privkey (const gchar *privkey_pem) { gchar *pkey_key_id = NULL; gchar *sql = NULL; gchar *error = NULL; gint rows, cols; gint i; gchar **table; // We calculate key-id from the private key pkey_key_id = tls_get_private_key_id(privkey_pem); // I get all certificates in dateabase that have not their private key in // the database, and it is not locatable. if (sqlite3_get_table (ca_db, "SELECT id, pem FROM certificates WHERE " "private_key_in_db=0;", &table, &rows, &cols, &error)) { return error; } for (i=1; i<=rows; i++) { gchar *public_key_id = NULL; // Foreach of them, we get their key-id from the public-key public_key_id = tls_get_public_key_id (table[(i*cols) + 1]); // If both key-ids match, we cipher (it we must) the private key, // and insert it into the database. if (! strcmp (pkey_key_id, public_key_id)) { TlsCert *certificate = tls_parse_cert_pem (table[(i*cols) + 1]); gchar *crypted_pkey_pem = pkey_manage_crypt (privkey_pem, certificate->dn); sql = sqlite3_mprintf ("UPDATE certificates SET private_key_in_db=1, private_key='%q' " "WHERE id=%s", crypted_pkey_pem, table[i*cols]); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { tls_cert_free (certificate); g_free (crypted_pkey_pem); g_free (public_key_id); sqlite3_free_table (table); return error; } tls_cert_free (certificate); g_free (crypted_pkey_pem); g_free (public_key_id); sqlite3_free_table (table); return NULL; } g_free (public_key_id); } sqlite3_free_table (table); #ifdef ADVANCED_GNUTLS // I get all csr's in database that have not their private key in // the database, and it is not locatable. if (sqlite3_get_table (ca_db, "SELECT id, pem FROM cert_requests WHERE " "private_key_in_db=0;", &table, &rows, &cols, &error)) { return error; } for (i=1; i<=rows; i++) { gchar *public_key_id = NULL; // Foreach of them, we get their key-id from the public-key public_key_id = tls_get_csr_public_key_id (table[(i*cols) + 1]); // If both key-ids match, we cipher (it we must) the private key, // and insert it into the database. if (! strcmp (pkey_key_id, public_key_id)) { TlsCsr *certreq = tls_parse_csr_pem (table[(i*cols) + 1]); gchar *crypted_pkey_pem = pkey_manage_crypt (privkey_pem, certreq->dn); sql = sqlite3_mprintf ("UPDATE cert_requests SET private_key_in_db=1, private_key='%q' " "WHERE id=%s", crypted_pkey_pem, table[i*cols]); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { tls_csr_free (certreq); g_free (crypted_pkey_pem); g_free (public_key_id); sqlite3_free_table (table); return error; } tls_csr_free (certreq); g_free (crypted_pkey_pem); g_free (public_key_id); sqlite3_free_table (table); return NULL; } g_free (public_key_id); } sqlite3_free_table (table); return _("The given file contains a valid private key. However, it has not been imported to the database because it doesn't match any key-less certificate or certificate request in the database."); #else return _("The given file contains a valid private key. However, it has not been imported to the database because it doesn't match any key-less certificate in the database."); #endif } int __ca_file_get_revoked_certs_add_certificate (void *pArg, int argc, char **argv, char **columnNames) { GList **p_list = (GList **) pArg; GList *list = (* p_list); // Pem of the revoked certificate list = g_list_prepend (list, g_strdup(argv[0])); // Revocation time list = g_list_prepend (list, g_strdup(argv[1])); *p_list = list; return 0; } GList * ca_file_get_revoked_certs (guint64 ca_id, gchar **error) { GList * list = NULL; gchar * error_str = NULL; gchar * sql = NULL; sql = sqlite3_mprintf ("SELECT pem,revocation FROM certificates " "WHERE parent_id=%"GNOMINT_GUINT64_FORMAT" AND revocation IS NOT NULL " "AND (expired_already_in_crl=0 OR expiration > strftime('%%s','now')) ORDER BY id", ca_id); sqlite3_exec (ca_db, sql, __ca_file_get_revoked_certs_add_certificate, &list, &error_str); sqlite3_free (sql); if (error_str) { fprintf (stderr, "%s\n", error_str); (*error) = g_strdup (error_str); return NULL; } list = g_list_reverse (list); (*error) = NULL; return list; } void __ca_file_mark_expired_and_revoked_certificates_as_already_shown_in_crl (guint64 ca_id, const GList *revoked_certs) { gchar *sql = NULL; GList *cursor = NULL; gchar * error_str = NULL; guchar *certificate_pem; time_t revocation; cursor = g_list_first ((GList *) revoked_certs); while (cursor) { certificate_pem = cursor->data; cursor = g_list_next (cursor); revocation = atol (cursor->data); cursor = g_list_next (cursor); sql = sqlite3_mprintf ("UPDATE certificates SET expired_already_in_crl=1, revocation=%ld " "WHERE parent_id=%"GNOMINT_GUINT64_FORMAT" AND revocation IS NOT NULL AND pem='%q' AND " "expired_already_in_crl=0 AND expiration < strftime('%%s','now'));", revocation, ca_id, certificate_pem); sqlite3_exec (ca_db, sql, __ca_file_get_revoked_certs_add_certificate, NULL, &error_str); sqlite3_free (sql); } } gint ca_file_begin_new_crl_transaction (guint64 ca_id, time_t timestamp) { gchar * sql; gchar **last_crl; gint next_crl_version; gchar *error; last_crl = __ca_file_get_single_row (ca_db, "SELECT crl_version FROM ca_crl WHERE ca_id=%"GNOMINT_GUINT64_FORMAT, ca_id); if (! last_crl) next_crl_version = 1; else { next_crl_version = atoi (last_crl[0]) + 1; g_strfreev (last_crl); } if (sqlite3_exec (ca_db, "BEGIN TRANSACTION;", NULL, NULL, &error)) return 0; sql = sqlite3_mprintf ("INSERT INTO ca_crl (id, ca_id, crl_version, date) VALUES (NULL, %"GNOMINT_GUINT64_FORMAT", %u, %u);", ca_id, next_crl_version, timestamp); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)){ sqlite3_free (sql); fprintf (stderr, "%s\n", error); return 0; } sqlite3_free (sql); return next_crl_version; } void ca_file_commit_new_crl_transaction (guint64 ca_id, const GList *revoked_certs) { gchar *error; __ca_file_mark_expired_and_revoked_certificates_as_already_shown_in_crl (ca_id, revoked_certs); sqlite3_exec (ca_db, "COMMIT;", NULL, NULL, &error); } void ca_file_rollback_new_crl_transaction () { gchar *error; sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); } gboolean ca_file_is_password_protected() { gchar **result; gboolean res; if (! ca_db) return FALSE; result = __ca_file_get_single_row (ca_db, "SELECT value FROM db_properties WHERE name='is_password_protected';"); res = ((result != NULL) && (strcmp(result[0], "0"))); if (result) g_strfreev (result); return res; } gboolean ca_file_check_password (const gchar *password) { gchar **result; gboolean res; if (! ca_file_is_password_protected()) return FALSE; result = __ca_file_get_single_row (ca_db, "SELECT value FROM db_properties WHERE name='hashed_password';"); if (! result) return FALSE; res = pkey_manage_check_password (password, result[0]); g_strfreev (result); return res; } typedef struct { const gchar *old_password; const gchar *new_password; const gchar *table; } CaFilePwdChange; int __ca_file_password_unprotect_cb (void *pArg, int argc, char **argv, char **columnNames) { CaFilePwdChange * pwd_change = (CaFilePwdChange *) pArg; const gchar *table = pwd_change->table; const gchar *pwd = pwd_change->old_password; PkeyManageData pkey; gchar *error; gchar *sql; gchar *new_pkey; pkey.pkey_data = argv[2]; pkey.is_in_db = TRUE; pkey.is_ciphered_with_db_pwd = TRUE; pkey.external_file = NULL; if (atoi(argv[1]) == 0) return 0; new_pkey = pkey_manage_uncrypt_w_pwd (&pkey, argv[3], pwd); sql = sqlite3_mprintf ("UPDATE %q SET private_key='%q' WHERE id='%q';", table, new_pkey, argv[0]); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { fprintf (stderr, "Error while executing: %s. %s", sql, error); sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); sqlite3_free (sql); g_free (new_pkey); return 1; } sqlite3_free(sql); g_free (new_pkey); return 0; } gboolean ca_file_password_unprotect(const gchar *old_password) { gchar *error; CaFilePwdChange pwd_change; if (! ca_file_is_password_protected ()) return FALSE; if (! ca_file_check_password (old_password)) return FALSE; sqlite3_exec (ca_db, "BEGIN TRANSACTION;", NULL, NULL, &error); pwd_change.old_password = old_password; pwd_change.table = "certificates"; if (sqlite3_exec (ca_db, "SELECT id, private_key_in_db, private_key, dn FROM certificates", __ca_file_password_unprotect_cb, &pwd_change, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); return FALSE; } pwd_change.table = "cert_requests"; if (sqlite3_exec (ca_db, "SELECT id, private_key_in_db, private_key, dn FROM cert_requests", __ca_file_password_unprotect_cb, &pwd_change, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); return FALSE; } if (sqlite3_exec (ca_db, "UPDATE db_properties SET value='0' WHERE name='is_password_protected';", NULL, NULL, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); return FALSE; } if (sqlite3_exec (ca_db, "UPDATE db_properties SET value='' WHERE name='hashed_password';", NULL, NULL, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); return FALSE; } sqlite3_exec (ca_db, "COMMIT;", NULL, NULL, &error); return TRUE; } int __ca_file_password_protect_cb (void *pArg, int argc, char **argv, char **columnNames) { CaFilePwdChange * pwd_change = (CaFilePwdChange *) pArg; const gchar *table = pwd_change->table; const gchar *pwd = pwd_change->new_password; gchar *error; gchar *sql; gchar *new_pkey; if (atoi(argv[1]) == 0) return 0; new_pkey = pkey_manage_crypt_w_pwd (argv[2], argv[3], pwd); sql = sqlite3_mprintf ("UPDATE %q SET private_key='%q' WHERE id='%q';", table, new_pkey, argv[0]); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { fprintf (stderr, "Error while executing: %s. %s", sql, error); sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); sqlite3_free (sql); g_free (new_pkey); return 1; } sqlite3_free(sql); g_free (new_pkey); return 0; } gboolean ca_file_password_protect(const gchar *new_password) { gchar *error; gchar *sql; gchar *hashed_pwd; CaFilePwdChange pwd_change; if (ca_file_is_password_protected ()) return FALSE; sqlite3_exec (ca_db, "BEGIN TRANSACTION;", NULL, NULL, &error); pwd_change.new_password = new_password; if (sqlite3_exec (ca_db, "UPDATE db_properties SET value='1' WHERE name='is_password_protected';", NULL, NULL, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); return FALSE; } hashed_pwd = pkey_manage_encrypt_password (new_password); sql = sqlite3_mprintf ("UPDATE db_properties SET value='%q' WHERE name='hashed_password';", hashed_pwd); g_free (hashed_pwd); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { sqlite3_free (sql); sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); return FALSE; } pwd_change.table = "certificates"; if (sqlite3_exec (ca_db, "SELECT id, private_key_in_db, private_key, dn FROM certificates", __ca_file_password_protect_cb, &pwd_change, &error)){ sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); return FALSE; } pwd_change.table = "cert_requests"; if (sqlite3_exec (ca_db, "SELECT id, private_key_in_db, private_key, dn FROM cert_requests", __ca_file_password_protect_cb, &pwd_change, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); return FALSE; } sqlite3_free (sql); sqlite3_exec (ca_db, "COMMIT;", NULL, NULL, &error); return TRUE; } int __ca_file_password_change_cb (void *pArg, int argc, char **argv, char **columnNames) { CaFilePwdChange * pwd_change = (CaFilePwdChange *) pArg; const gchar *table = pwd_change->table; const gchar *old_pwd = pwd_change->old_password; const gchar *new_pwd = pwd_change->new_password; gchar *error; gchar *sql; gchar *clear_pkey; gchar *new_pkey; PkeyManageData pkey; pkey.pkey_data = argv[2]; pkey.is_in_db = TRUE; pkey.is_ciphered_with_db_pwd = TRUE; pkey.external_file = NULL; if (atoi(argv[1]) == 0) return 0; clear_pkey = pkey_manage_uncrypt_w_pwd (&pkey, argv[3], old_pwd); new_pkey = pkey_manage_crypt_w_pwd (clear_pkey, argv[3], new_pwd); g_free (clear_pkey); sql = sqlite3_mprintf ("UPDATE %q SET private_key='%q' WHERE id='%q';", table, new_pkey, argv[0]); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { fprintf (stderr, "Error while executing: %s. %s", sql, error); sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); sqlite3_free (sql); g_free (new_pkey); return 1; } sqlite3_free(sql); g_free (new_pkey); return 0; } gboolean ca_file_password_change(const gchar *old_password, const gchar *new_password) { gchar *error; gchar *sql; gchar *hashed_pwd; CaFilePwdChange pwd_change; if (!ca_file_is_password_protected ()) return FALSE; if (! ca_file_check_password (old_password)) return FALSE; sqlite3_exec (ca_db, "BEGIN TRANSACTION;", NULL, NULL, &error); pwd_change.new_password = new_password; pwd_change.old_password = old_password; pwd_change.table = "certificates"; if (sqlite3_exec (ca_db, "SELECT id, private_key_in_db, private_key, dn FROM certificates", __ca_file_password_change_cb, &pwd_change, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); return FALSE; } pwd_change.table = "cert_requests"; if (sqlite3_exec (ca_db, "SELECT id, private_key_in_db, private_key, dn FROM cert_requests", __ca_file_password_change_cb, &pwd_change, &error)) { sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); return FALSE; } hashed_pwd = pkey_manage_encrypt_password (new_password); sql = sqlite3_mprintf ("UPDATE db_properties SET value='%q' WHERE name='hashed_password';", hashed_pwd); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { sqlite3_free (sql); g_free (hashed_pwd); sqlite3_exec (ca_db, "ROLLBACK;", NULL, NULL, &error); return FALSE; } sqlite3_free (sql); g_free (hashed_pwd); sqlite3_exec (ca_db, "COMMIT;", NULL, NULL, &error); return TRUE; } gboolean ca_file_foreach_ca (CaFileCallbackFunc func, gpointer userdata) { gchar *error_str; gchar **result; guint64 max_id; gchar* aux; guint num_chars = 1; gchar *sql; result = __ca_file_get_single_row (ca_db, "SELECT MAX(id) FROM certificates WHERE is_ca=1 AND revocation IS NULL"); if (result && result[0]) { max_id = atoll(result[0]); g_strfreev (result); aux = g_strdup_printf ("%"G_GUINT64_FORMAT, max_id); num_chars = strlen (aux); g_free (aux); } sql = sqlite3_mprintf ("SELECT id, serial, subject, dn, parent_dn, pem " "FROM certificates WHERE is_ca=1 AND revocation IS NULL " "ORDER BY concat(zeropad_route(parent_route, %u), zeropad(id, %u))", num_chars, num_chars); sqlite3_exec (ca_db, sql, func, userdata, &error_str); sqlite3_free (sql); return (! error_str); } gboolean ca_file_foreach_crt (CaFileCallbackFunc func, gboolean view_revoked, gpointer userdata) { gchar *error_str; gchar **result; guint64 max_id; gchar* aux; guint num_chars = 1; gchar *sql; result = __ca_file_get_single_row (ca_db, "SELECT MAX(id) FROM certificates"); if (result && result[0]) { max_id = atoll(result[0]); g_strfreev (result); aux = g_strdup_printf ("%"G_GUINT64_FORMAT, max_id); num_chars = strlen (aux); g_free (aux); } if (view_revoked) { sql = sqlite3_mprintf ("SELECT id, is_ca, serial, subject, activation, expiration, revocation, private_key_in_db, pem," " dn, parent_dn, parent_route " "FROM certificates ORDER BY concat(zeropad_route(parent_route, %u), zeropad(id, %u)) ", num_chars, num_chars); } else { sql = sqlite3_mprintf ("SELECT id, is_ca, serial, subject, activation, expiration, revocation, private_key_in_db, pem, " " dn, parent_dn, parent_route " "FROM certificates WHERE revocation IS NULL " "ORDER BY concat(zeropad_route(parent_route, %u), zeropad(id, %u))", num_chars, num_chars); } sqlite3_exec (ca_db, sql, func, userdata, &error_str); sqlite3_free (sql); return (! error_str); } gboolean ca_file_foreach_csr (CaFileCallbackFunc func, gpointer userdata) { gchar *error_str; sqlite3_exec (ca_db, "SELECT id, subject, private_key_in_db, pem, parent_ca FROM cert_requests ORDER BY id", func, userdata, &error_str); return (! error_str); } gboolean ca_file_foreach_policy (CaFileCallbackFunc func, guint64 ca_id, gpointer userdata) { gchar *error_str; gchar * query = g_strdup_printf ("SELECT ca_id, name, value FROM ca_policies WHERE ca_id=%" G_GUINT64_FORMAT ";", ca_id); sqlite3_exec (ca_db, query, func, userdata, &error_str); g_free (query); return (! error_str); } gboolean ca_file_get_id_from_serial_issuer_id (const UInt160 *serial, const guint64 issuer_id, guint64 *db_id) { gchar **aux; gchar *serial_str = uint160_strdup_printf(serial); aux = __ca_file_get_single_row (ca_db, "SELECT id FROM certificates WHERE parent_id=%"GNOMINT_GUINT64_FORMAT" AND serial='%q';", issuer_id, serial_str); g_free (serial_str); if (! aux) return FALSE; if (! aux[0]) { g_strfreev (aux); return FALSE; } *db_id = atoll (aux[0]); g_strfreev (aux); return TRUE; } gboolean ca_file_get_id_from_dn (CaFileElementType type, const gchar *dn, guint64 *db_id) { gchar **aux; if (type == CA_FILE_ELEMENT_TYPE_CERT) { aux = __ca_file_get_single_row (ca_db, "SELECT id FROM certificates WHERE dn='%q';", dn); } else { aux = __ca_file_get_single_row (ca_db, "SELECT id FROM cert_requests WHERE dn='%q';", dn); } if (! aux) return FALSE; if (! aux[0]) { g_strfreev (aux); return FALSE; } *db_id = atoll (aux[0]); g_strfreev (aux); return TRUE; } gchar * __ca_file_get_field_from_id (CaFileElementType type, guint64 db_id, const gchar *field) { gchar ** aux; gchar * res; if (type == CA_FILE_ELEMENT_TYPE_CERT) { aux = __ca_file_get_single_row (ca_db, "SELECT %s FROM certificates WHERE id=%" GNOMINT_GUINT64_FORMAT ";", field, db_id); } else { aux = __ca_file_get_single_row (ca_db, "SELECT %s FROM cert_requests WHERE id=%" GNOMINT_GUINT64_FORMAT ";", field, db_id); } if (! aux) return NULL; if (! aux[0]) { g_strfreev (aux); return NULL; } res = g_strdup (aux[0]); g_strfreev (aux); return res; } gchar * ca_file_get_dn_from_id (CaFileElementType type, guint64 db_id) { return __ca_file_get_field_from_id (type, db_id, "dn"); } gchar * ca_file_get_public_pem_from_id (CaFileElementType type, guint64 db_id) { return __ca_file_get_field_from_id (type, db_id, "pem"); } gboolean ca_file_get_pkey_in_db_from_id (CaFileElementType type, guint64 db_id) { gboolean res; gchar *aux; aux = __ca_file_get_field_from_id (type, db_id, "private_key_in_db"); res = atoi(aux); g_free (aux); return res; } gchar * ca_file_get_pkey_field_from_id (CaFileElementType type, guint64 db_id) { return __ca_file_get_field_from_id (type, db_id, "private_key"); } gboolean ca_file_set_pkey_field_for_id (CaFileElementType type, const gchar *new_value, guint64 db_id) { gchar *sql; gchar *error; if (type == CA_FILE_ELEMENT_TYPE_CERT) { sql = sqlite3_mprintf ("UPDATE certificates SET private_key='%q' WHERE id=%" GNOMINT_GUINT64_FORMAT, new_value, db_id); } else { sql = sqlite3_mprintf ("UPDATE cert_requests SET private_key='%q' WHERE id=%" GNOMINT_GUINT64_FORMAT, new_value, db_id); } sqlite3_exec (ca_db, sql, NULL, NULL, &error); sqlite3_free (sql); return (! error); } gboolean ca_file_mark_pkey_as_extracted_for_id (CaFileElementType type, const gchar *filename, guint64 db_id) { gchar *sql; gchar *error; if (type == CA_FILE_ELEMENT_TYPE_CERT) { sql = sqlite3_mprintf ("UPDATE certificates SET private_key='%q', private_key_in_db=0 WHERE id=%" GNOMINT_GUINT64_FORMAT, filename, db_id); } else { sql = sqlite3_mprintf ("UPDATE cert_requests SET private_key='%q', private_key_in_db=0 WHERE id=%" GNOMINT_GUINT64_FORMAT, filename, db_id); } sqlite3_exec (ca_db, sql, NULL, NULL, &error); sqlite3_free (sql); if (error) fprintf (stderr, "%s", error); return (! error); } gchar * ca_file_policy_get (guint64 ca_id, gchar *property_name) { gchar **row = __ca_file_get_single_row (ca_db, "SELECT value FROM ca_policies WHERE name='%s' AND ca_id=%"GNOMINT_GUINT64_FORMAT" ;", property_name, ca_id); gchar * res; if (!row) return NULL; res = g_strdup(row[0]); g_strfreev (row); return res; } gboolean ca_file_policy_set (guint64 ca_id, gchar *property_name, const gchar * value) { gchar **aux; gchar *error = NULL; gchar *sql = NULL; aux = __ca_file_get_single_row (ca_db, "SELECT id, ca_id, name, value FROM ca_policies WHERE name='%s' AND ca_id=%"GNOMINT_GUINT64_FORMAT" ;", property_name, ca_id); if (! aux) { sql = sqlite3_mprintf ("INSERT INTO ca_policies(ca_id, name, value) VALUES (%"GNOMINT_GUINT64_FORMAT", '%q', '%q');", ca_id, property_name, value); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { fprintf (stderr, "%s\n", error); sqlite3_free (sql); return FALSE; } } else { g_strfreev (aux); sql = sqlite3_mprintf ("UPDATE ca_policies SET value='%q' WHERE ca_id=%"GNOMINT_GUINT64_FORMAT" AND name='%s';", value, ca_id, property_name); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { fprintf (stderr, "%s\n", error); sqlite3_free (sql); return FALSE; } } sqlite3_free (sql); return TRUE; } gint ca_file_policy_get_int (guint64 ca_id, gchar *property_name) { gchar **row = __ca_file_get_single_row (ca_db, "SELECT value FROM ca_policies WHERE name='%s' AND ca_id=%"GNOMINT_GUINT64_FORMAT" ;", property_name, ca_id); gint res; if (!row) return 0; res = atoi(row[0]); g_strfreev (row); return res; } gboolean ca_file_policy_set_int (guint64 ca_id, gchar *property_name, gint value) { gchar **aux; gchar *error = NULL; gchar *sql = NULL; aux = __ca_file_get_single_row (ca_db, "SELECT id, ca_id, name, value FROM ca_policies WHERE name='%s' AND ca_id=%"GNOMINT_GUINT64_FORMAT" ;", property_name, ca_id); if (! aux) { sql = sqlite3_mprintf ("INSERT INTO ca_policies(ca_id, name, value) VALUES (%"GNOMINT_GUINT64_FORMAT", '%q', '%d');", ca_id, property_name, value); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { fprintf (stderr, "%s\n", error); sqlite3_free (sql); return FALSE; } } else { g_strfreev (aux); sql = sqlite3_mprintf ("UPDATE ca_policies SET value='%d' WHERE ca_id=%"GNOMINT_GUINT64_FORMAT" AND name='%s';", value, ca_id, property_name); if (sqlite3_exec (ca_db, sql, NULL, NULL, &error)) { fprintf (stderr, "%s\n", error); sqlite3_free (sql); return FALSE; } } sqlite3_free (sql); return TRUE; } gboolean ca_file_check_if_is_ca_id (guint64 ca_id) { gchar **aux; gboolean res; aux = __ca_file_get_single_row (ca_db, "SELECT COUNT(*) FROM certificates WHERE is_ca=1 AND id=%"GNOMINT_GUINT64_FORMAT" ;", ca_id); if (!aux) { return FALSE; } res = (atoi(aux[0]) > 0); g_strfreev (aux); return res; } gboolean ca_file_check_if_is_cert_id (guint64 cert_id) { gchar **aux; gboolean res; aux = __ca_file_get_single_row (ca_db, "SELECT COUNT(*) FROM certificates WHERE id=%"GNOMINT_GUINT64_FORMAT" ;", cert_id); if (!aux) { return FALSE; } res = (atoi(aux[0]) > 0); g_strfreev (aux); return res; } gboolean ca_file_check_if_is_csr_id (guint64 csr_id) { gchar **aux; gboolean res; aux = __ca_file_get_single_row (ca_db, "SELECT COUNT(*) FROM cert_requests WHERE id=%"GNOMINT_GUINT64_FORMAT" ;", csr_id); if (!aux) { return FALSE; } res = (atoi(aux[0]) > 0); g_strfreev (aux); return res; } gnomint-1.3.0/src/ca-cli-callbacks.c0000664000175000017500000013615412672055015014126 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include #include "ca-cli-callbacks.h" #include "ca-cli.h" #include "dialog.h" #include "ca_creation.h" #include "ca_file.h" #include "csr_creation.h" #include "export.h" #include "import.h" #include "new_cert.h" #include "pkey_manage.h" #include "preferences.h" #include "tls.h" #include "crl.h" extern CaCommand ca_commands[]; #define CA_COMMAND_NUMBER 31 extern gchar * gnomint_current_opened_file; extern gchar * ca_creation_message; extern gchar * csr_creation_message; int ca_cli_callback_newdb (int argc, char **argv) { gchar *filename = argv[1]; gchar *error = NULL; if (g_file_test(filename, G_FILE_TEST_EXISTS)) { /* The file already exists. We ask the user about overwriting it */ if (! dialog_ask_for_confirmation (_("The file already exists, so it will be overwritten."), _("Are you sure? Yes/[No] "), FALSE)) return 1; /* If he wants to overwrite it, we first rename it to "filename~", after deleting "filename~" if it already exists */ gchar *backup_filename = g_strdup_printf ("%s~", filename); if (g_file_test (backup_filename, G_FILE_TEST_EXISTS)) { g_remove (backup_filename); } g_rename (filename, backup_filename); g_free (backup_filename); } error = ca_file_create (filename); if (error) { fprintf (stderr, "%s\n", error); return 1; } if (! ca_open (filename, FALSE)) { fprintf (stderr, _("Problem when opening new '%s' CA database\n"), filename); return 1; } printf (_("File '%s' opened\n"), filename); return 0; } int ca_cli_callback_opendb (int argc, char **argv) { gchar *filename = argv[1]; if (! ca_open (filename, FALSE)) { fprintf (stderr, _("Problem when opening '%s' CA database\n"), filename); } return 0; } int ca_cli_callback_savedbas (int argc, char **argv) { gchar *filename = argv[1]; if (g_file_test(filename, G_FILE_TEST_EXISTS)) { /* The file already exists. We ask the user about overwriting it */ if (! dialog_ask_for_confirmation (_("The file already exists, so it will be overwritten."), _("Are you sure? Yes/[No] "), FALSE)) return 1; /* If he wants to overwrite it, we first rename it to "filename~", after deleting "filename~" if it already exists */ gchar *backup_filename = g_strdup_printf ("%s~", filename); if (g_file_test (backup_filename, G_FILE_TEST_EXISTS)) { g_remove (backup_filename); } g_rename (filename, backup_filename); g_free (backup_filename); } return ca_file_save_as (filename); } int ca_cli_callback_status (int argc, char **argv) { printf (_("Current opened file: %s\n"), gnomint_current_opened_file); printf (_("Number of certificates in file: %d\n"), ca_file_get_number_of_certs()); printf (_("Number of CSRs in file: %d\n"), ca_file_get_number_of_csrs()); return 0; } int __ca_cli_callback_listcert_aux (void *pArg, int argc, char **argv, char **columnNames) { #ifndef WIN32 struct tm tmp; #else struct tm *tmp = NULL; #endif time_t aux_date; gchar model_time_str[100]; printf (Q_("CertList ID|%s\t"), argv[CA_FILE_CERT_COLUMN_ID]); if (atoi(argv[CA_FILE_CERT_COLUMN_IS_CA])) printf (Q_("CertList IsCA|Y\t")); else printf (Q_("CertList IsCA|N\t")); if (strlen(argv[CA_FILE_CERT_COLUMN_SUBJECT]) > 16) argv[CA_FILE_CERT_COLUMN_SUBJECT][16] = '\0'; printf (Q_("CertList Subject|%s\t"), argv[CA_FILE_CERT_COLUMN_SUBJECT]); if (strlen (argv[CA_FILE_CERT_COLUMN_SUBJECT]) / 8 < 2) printf (Q_("CertList PadIfSubject<16|\t")); if (strlen (argv[CA_FILE_CERT_COLUMN_SUBJECT]) / 8 < 1) printf (Q_("CertList PadIfSubject<8|\t")); if (atoi(argv[CA_FILE_CERT_COLUMN_PRIVATE_KEY_IN_DB])) printf (Q_("CertList PKeyInDB|Y\t\t")); else printf (Q_("CertList PKeyInDB|N\t\t")); aux_date = atol(argv[CA_FILE_CERT_COLUMN_ACTIVATION]); if (aux_date == 0) { printf (Q_("CertList Activation|\t")); } else { #ifndef WIN32 gmtime_r (&aux_date, &tmp); strftime (model_time_str, 100, _("%m/%d/%Y %R GMT"), &tmp); #else tmp = gmtime (&aux_date); strftime (model_time_str, 100, _("%m/%d/%Y %H:%M GMT"), tmp); #endif printf (Q_("CertList Activation|%s\t"), model_time_str); } aux_date = atol(argv[CA_FILE_CERT_COLUMN_EXPIRATION]); if (aux_date == 0) { printf (Q_("CertList Expiration|\t")); } else { #ifndef WIN32 gmtime_r (&aux_date, &tmp); strftime (model_time_str, 100, _("%m/%d/%Y %R GMT"), &tmp); #else tmp = gmtime (&aux_date); strftime (model_time_str, 100, _("%m/%d/%Y %H:%M GMT"), tmp); #endif printf (Q_("CertList Expiration|%s\t"), model_time_str); } if (argc > CA_FILE_CERT_COLUMN_REVOCATION && argv[CA_FILE_CERT_COLUMN_REVOCATION]) { aux_date = atol(argv[CA_FILE_CERT_COLUMN_REVOCATION]); if (aux_date == 0) { printf (Q_("CertList Revocation|\n")); } else { #ifndef WIN32 gmtime_r (&aux_date, &tmp); strftime (model_time_str, 100, _("%m/%d/%Y %R GMT"), &tmp); #else tmp = gmtime (&aux_date); strftime (model_time_str, 100, _("%m/%d/%Y %H:%M GMT"), tmp); #endif printf (Q_("CertList Revocation|%s\n"), model_time_str); } } else { printf ("\n"); } return 0; } int ca_cli_callback_listcert (int argc, char **argv) { gboolean see_revoked = FALSE; if (argc==2 && !strcmp (argv[1], "--see-revoked")) see_revoked = TRUE; printf (_("Certificates in Database:\n")); printf (_("Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration")); if (see_revoked) printf (_("\t\tRevocation\n")); else printf ("\n"); ca_file_foreach_crt (__ca_cli_callback_listcert_aux, see_revoked, GINT_TO_POINTER(see_revoked)); return 0; } int __ca_cli_callback_listcsr_aux (void *pArg, int argc, char **argv, char **columnNames) { printf (Q_("CsrList ID|%s\t"), argv[CA_FILE_CSR_COLUMN_ID]); printf (Q_("CsrList ParentID|%s\t"), (argv[CA_FILE_CSR_COLUMN_PARENT_ID] ? argv[CA_FILE_CSR_COLUMN_PARENT_ID] : Q_("CsrList ParentID|\t"))); if (strlen(argv[CA_FILE_CSR_COLUMN_SUBJECT]) > 24) argv[CA_FILE_CSR_COLUMN_SUBJECT][24] = '\0'; printf (Q_("CsrList Subject|%-24s\t"), argv[CA_FILE_CSR_COLUMN_SUBJECT]); if (strlen (argv[CA_FILE_CSR_COLUMN_SUBJECT]) / 8 < 2) printf (Q_("CsrList PadIfSubject<16|\t")); if (strlen (argv[CA_FILE_CSR_COLUMN_SUBJECT]) / 8 < 1) printf (Q_("CsrList PadIfSubject<8|\t")); if (atoi(argv[CA_FILE_CSR_COLUMN_PRIVATE_KEY_IN_DB])) printf (Q_("CsrList PKeyInDB|Y\n")); else printf (Q_("CsrList PKeyInDB|N\n")); return 0; } int ca_cli_callback_listcsr (int argc, char **argv) { printf (_("Certificate Requests in Database:\n")); printf (_("Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n")); ca_file_foreach_csr (__ca_cli_callback_listcsr_aux, NULL); return 0; } int ca_cli_callback_addcsr (int argc, char **argv) { gboolean with_ca_id = FALSE; guint64 ca_id; gboolean c_force_same = FALSE; gboolean st_force_same = FALSE; gboolean l_force_same = FALSE; gboolean o_force_same = FALSE; gboolean ou_force_same = FALSE; gboolean change_data = FALSE; TlsCreationData *csr_creation_data = NULL; guint max_key_length; if (argc == 2) { ca_id = atoll (argv[1]); with_ca_id = TRUE; if (! ca_file_check_if_is_ca_id (ca_id)) { dialog_error (_("The given CA id. is not valid")); return -1; } } csr_creation_data = g_new0 (TlsCreationData, 1); if (with_ca_id) { TlsCert *tlscert = NULL; gchar *pem = NULL; pem = ca_file_get_public_pem_from_id (ca_id, CA_FILE_ELEMENT_TYPE_CERT); g_assert (pem); tlscert = tls_parse_cert_pem (pem); if (ca_file_policy_get_int (ca_id, "C_INHERIT")) { c_force_same = ca_file_policy_get_int (ca_id, "C_FORCE_SAME"); csr_creation_data->country = g_strdup (tlscert->c); } if (ca_file_policy_get_int (ca_id, "ST_INHERIT")) { st_force_same = ca_file_policy_get_int (ca_id, "ST_FORCE_SAME"); csr_creation_data->state = g_strdup (tlscert->st); } if (ca_file_policy_get_int (ca_id, "L_INHERIT")) { l_force_same = ca_file_policy_get_int (ca_id, "L_FORCE_SAME"); csr_creation_data->city = g_strdup (tlscert->l); } if (ca_file_policy_get_int (ca_id, "O_INHERIT")) { o_force_same = ca_file_policy_get_int (ca_id, "O_FORCE_SAME"); csr_creation_data->org = g_strdup (tlscert->o); } if (ca_file_policy_get_int (ca_id, "OU_INHERIT")) { ou_force_same = ca_file_policy_get_int (ca_id, "OU_FORCE_SAME"); csr_creation_data->ou = g_strdup (tlscert->ou); } csr_creation_data->parent_ca_id_str = g_strdup_printf ("%"G_GUINT64_FORMAT, ca_id); tls_cert_free (tlscert); } // Enter default values csr_creation_data->key_type = 0; csr_creation_data->key_bitlength = 2048; do { gchar * aux; printf (_("Please enter data corresponding to subject of the Certificate Signing Request:\n")); if (! c_force_same) { aux = dialog_ask_for_string (_("Enter country (C)"), csr_creation_data->country); if (csr_creation_data->country) g_free (csr_creation_data->country); csr_creation_data->country = aux; } aux = NULL; if (! st_force_same) { aux = dialog_ask_for_string (_("Enter state or province (ST)"), csr_creation_data->state); if (csr_creation_data->state) g_free (csr_creation_data->state); csr_creation_data->state = aux; aux = NULL; } if (! l_force_same) { aux = dialog_ask_for_string (_("Enter locality or city (L)"), csr_creation_data->city); if (csr_creation_data->city) g_free (csr_creation_data->city); csr_creation_data->city = aux; aux = NULL; } if (! o_force_same) { aux = dialog_ask_for_string (_("Enter organization (O)"), csr_creation_data->org); if (csr_creation_data->org) g_free (csr_creation_data->org); csr_creation_data->org = aux; aux = NULL; } if (! ou_force_same) { aux = dialog_ask_for_string (_("Enter organizational unit (OU)"), csr_creation_data->ou); if (csr_creation_data->ou) g_free (csr_creation_data->ou); csr_creation_data->ou = aux; aux = NULL; } aux = dialog_ask_for_string (_("Enter common name (CN)"), csr_creation_data->cn); if (csr_creation_data->cn) g_free (csr_creation_data->cn); csr_creation_data->cn = aux; aux = NULL; do { if (aux) g_free (aux); aux = dialog_ask_for_string (_("Enter type of key you are going to create (RSA/DSA)"), (csr_creation_data->key_type ? "DSA" : "RSA")); } while (g_ascii_strcasecmp (aux, "RSA") && g_ascii_strcasecmp (aux, "DSA")); if (! g_ascii_strcasecmp (aux, "RSA")) { csr_creation_data->key_type = 0; max_key_length = 10240; } else if (! g_ascii_strcasecmp (aux, "DSA")) { csr_creation_data->key_type = 1; max_key_length = 3072; } g_free (aux); aux = NULL; do { csr_creation_data->key_bitlength = dialog_ask_for_number (_("Enter bitlength for the key (it must be a whole multiple of 1024)"), 1024, max_key_length, csr_creation_data->key_bitlength); } while (csr_creation_data->key_bitlength % 1024); printf (_("These are the provided CSR properties:\n")); printf (_("Subject:\n")); printf (_("\tDistinguished Name: ")); if (csr_creation_data->country) printf ("C=%s/", csr_creation_data->country); if (csr_creation_data->state) printf ("ST=%s/", csr_creation_data->state); if (csr_creation_data->city) printf ("L=%s/", csr_creation_data->city); if (csr_creation_data->org) printf ("O=%s/", csr_creation_data->org); if (csr_creation_data->ou) printf ("OU=%s/", csr_creation_data->ou); if (csr_creation_data->cn) printf ("CN=%s", csr_creation_data->cn); printf ("\n"); printf (_("Key pair\n")); printf (_("\tType: %s\n"), (csr_creation_data->key_type ? "DSA" : "RSA")); printf (_("\tKey bitlength: %d\n"), csr_creation_data->key_bitlength); change_data = dialog_ask_for_confirmation (NULL, _("Do you want to change anything? Yes/[No] "), FALSE); } while (change_data); if (dialog_ask_for_confirmation (_("You are about to create a Certificate Signing Request with these properties."), _("Are you sure? [Yes]/No "), TRUE)) { csr_creation_thread (csr_creation_data); printf ("%s\n", csr_creation_message); } else { printf (_("Operation cancelled.\n")); } return 0; } int ca_cli_callback_addca (int argc, char **argv) { gboolean change_data = FALSE; TlsCreationData *ca_creation_data = NULL; time_t tmp; struct tm * expiration_time; #ifndef WIN32 struct tm timer; #else struct tm *timer = NULL; #endif char model_time_str[100]; ca_creation_data = g_new0 (TlsCreationData, 1); // Enter default values ca_creation_data->key_type = 0; ca_creation_data->key_bitlength = 2048; ca_creation_data->key_months_before_expiration = 240; do { gchar * aux; printf (_("Please enter data corresponding to subject of the new Certification Authority:\n")); aux = dialog_ask_for_string (_("Enter country (C)"), ca_creation_data->country); if (ca_creation_data->country) g_free (ca_creation_data->country); ca_creation_data->country = aux; aux = NULL; aux = dialog_ask_for_string (_("Enter state or province (ST)"), ca_creation_data->state); if (ca_creation_data->state) g_free (ca_creation_data->state); ca_creation_data->state = aux; aux = NULL; aux = dialog_ask_for_string (_("Enter locality or city (L)"), ca_creation_data->city); if (ca_creation_data->city) g_free (ca_creation_data->city); ca_creation_data->city = aux; aux = NULL; aux = dialog_ask_for_string (_("Enter organization (O)"), ca_creation_data->org); if (ca_creation_data->org) g_free (ca_creation_data->org); ca_creation_data->org = aux; aux = NULL; aux = dialog_ask_for_string (_("Enter organizational unit (OU)"), ca_creation_data->ou); if (ca_creation_data->ou) g_free (ca_creation_data->ou); ca_creation_data->ou = aux; aux = NULL; aux = dialog_ask_for_string (_("Enter common name (CN)"), ca_creation_data->cn); if (ca_creation_data->cn) g_free (ca_creation_data->cn); ca_creation_data->cn = aux; aux = NULL; do { if (aux) g_free (aux); aux = dialog_ask_for_string (_("Enter type of key you are going to create (RSA/DSA)"), (ca_creation_data->key_type ? "DSA" : "RSA")); } while (g_ascii_strcasecmp (aux, "RSA") && g_ascii_strcasecmp (aux, "DSA")); if (! g_ascii_strcasecmp (aux, "RSA")) { ca_creation_data->key_type = 0; } else if (! g_ascii_strcasecmp (aux, "DSA")) { ca_creation_data->key_type = 1; } g_free (aux); aux = NULL; do { ca_creation_data->key_bitlength = dialog_ask_for_number (_("Enter bitlength for the key (it must be a whole multiple of 1024)"), 1024,10240,ca_creation_data->key_bitlength); } while (ca_creation_data->key_bitlength % 1024); ca_creation_data->key_months_before_expiration = dialog_ask_for_number (_("Introduce number of months before expiration of the new certification authority"), 1, 600, 240); tmp = time (NULL); ca_creation_data->activation = tmp; expiration_time = g_new (struct tm,1); #ifndef WIN32 localtime_r (&tmp, expiration_time); #else expiration_time = localtime (&tmp); #endif expiration_time->tm_mon = expiration_time->tm_mon + ca_creation_data->key_months_before_expiration; expiration_time->tm_year = expiration_time->tm_year + (expiration_time->tm_mon / 12); expiration_time->tm_mon = expiration_time->tm_mon % 12; ca_creation_data->expiration = mktime(expiration_time); #ifndef WIN32 g_free (expiration_time); #endif printf (_("These are the provided new CA properties:\n")); printf (_("Subject:\n")); printf (_("\tDistinguished Name: ")); if (ca_creation_data->country) printf ("C=%s/", ca_creation_data->country); if (ca_creation_data->state) printf ("ST=%s/", ca_creation_data->state); if (ca_creation_data->city) printf ("L=%s/", ca_creation_data->city); if (ca_creation_data->org) printf ("O=%s/", ca_creation_data->org); if (ca_creation_data->ou) printf ("OU=%s/", ca_creation_data->ou); if (ca_creation_data->cn) printf ("CN=%s", ca_creation_data->cn); printf ("\n"); printf (_("Key pair\n")); printf (_("\tType: %s\n"), (ca_creation_data->key_type ? "DSA" : "RSA")); printf (_("\tKey bitlength: %d\n"), ca_creation_data->key_bitlength); printf (_("Validity\n")); printf (_("Validity:\n")); #ifndef WIN32 gmtime_r (&ca_creation_data->activation, &timer); strftime (model_time_str, 100, _("%m/%d/%Y %R GMT"), &timer); #else timer = gmtime (&ca_creation_data->activation); strftime (model_time_str, 100, _("%m/%d/%Y %H:%M GMT"), timer); #endif printf (_("\tActivated on: %s\n"), model_time_str); #ifndef WIN32 gmtime_r (&ca_creation_data->expiration, &timer); strftime (model_time_str, 100, _("%m/%d/%Y %R GMT"), &timer); #else timer = gmtime (&ca_creation_data->expiration); strftime (model_time_str, 100, _("%m/%d/%Y %H:%M GMT"), timer); #endif printf (_("\tExpires on: %s\n"), model_time_str); change_data = dialog_ask_for_confirmation (NULL, _("Do you want to change anything? Yes/[No] "), FALSE); } while (change_data); if (dialog_ask_for_confirmation (_("You are about to create a new Certification Authority with these properties."), _("Are you sure? [Yes]/No "), TRUE)) { ca_creation_thread (ca_creation_data); printf ("%s\n", ca_creation_message); } else { printf (_("Operation cancelled.\n")); } return 0; } int ca_cli_callback_extractcertpkey (int argc, char **argv) { guint64 id_cert = atoll(argv[1]); gchar *filename = argv[2]; gchar *error = NULL; if (! ca_file_check_if_is_cert_id (id_cert)) { dialog_error (_("The given certificate id. is not valid")); return -1; } error = export_private_pkcs8 (id_cert, CA_FILE_ELEMENT_TYPE_CERT, filename); if (! error) { printf (_("Private key extracted successfully into file '%s'\n"), filename); } else { dialog_error (error); return 1; } return 0; } int ca_cli_callback_extractcsrpkey (int argc, char **argv) { guint64 id_csr = atoll(argv[1]); gchar *filename = argv[2]; gchar *error = NULL; if (! ca_file_check_if_is_csr_id (id_csr)) { dialog_error (_("The given CSR id. is not valid")); return -1; } error = export_private_pkcs8 (id_csr, CA_FILE_ELEMENT_TYPE_CSR, filename); if (! error) { printf (_("Private key extracted successfully into file '%s'\n"), filename); } else { dialog_error (error); return 1; } return 0; } int ca_cli_callback_revoke (int argc, char **argv) { gchar *errmsg = NULL; guint64 id = atoll (argv[1]); if (! ca_file_check_if_is_cert_id (id)) { dialog_error (_("The given certificate id. is not valid")); return -1; } ca_cli_callback_showcert (argc, argv); if (dialog_ask_for_confirmation (_("This certificate will be revoked."), _("Are you sure? Yes/[No] "), FALSE)) { errmsg = ca_file_revoke_crt (id); if (errmsg) { dialog_error (_(errmsg)); } else { printf (_("Certificate revoked.\n")); } } else { printf (_("Operation cancelled.\n")); } return 0; } void __ca_cli_callback_show_uses_and_purposes (TlsCertCreationData *cert_creation_data) { printf (_("Certificate uses:\n")); if (cert_creation_data->ca) { printf (_("* Certification Authority use enabled.\n")); } else { printf (_("* Certification Authority use disabled.\n")); } if (cert_creation_data->crl_signing) { printf (_("* CRL signing use enabled.\n")); } else { printf (_("* CRL signing use disabled.\n")); } if (cert_creation_data->digital_signature) { printf (_("* Digital Signature use enabled.\n")); } else { printf (_("* Digital Signature use disabled.\n")); } if (cert_creation_data->data_encipherment) { printf (_("* Data Encipherment use enabled.\n")); } else { printf (_("* Data Encipherment use enabled.\n")); } if (cert_creation_data->key_encipherment) { printf (_("* Key Encipherment use enabled.\n")); } else { printf (_("* Key Encipherment use disabled.\n")); } if (cert_creation_data->non_repudiation) { printf (_("* Non Repudiation use enabled.\n")); } else { printf (_("* Non Repudiation use disabled.\n")); } if (cert_creation_data->key_agreement) { printf (_("* Key Agreement use enabled.\n")); } else { printf (_("* Key Agreement use disabled.\n")); } printf (_("Certificate purposes:\n")); if (cert_creation_data->email_protection) { printf (_("* Email Protection purpose enabled.\n")); } else { printf (_("* Email Protection purpose disabled.\n")); } if (cert_creation_data->code_signing) { printf (_("* Code Signing purpose enabled.\n")); } else { printf (_("* Code Signing purpose disabled.\n")); } if (cert_creation_data->web_client) { printf (_("* TLS Web Client purpose enabled.\n")); } else { printf (_("* TLS Web Client purpose disabled.\n")); } if (cert_creation_data->web_server) { printf (_("* TLS Web Server purpose enabled.\n")); } else { printf (_("* TLS Web Server purpose disabled.\n")); } if (cert_creation_data->time_stamping) { printf (_("* Time Stamping purpose enabled.\n")); } else { printf (_("* Time Stamping purpose disabled.\n")); } if (cert_creation_data->ocsp_signing) { printf (_("* OCSP Signing purpose enabled.\n")); } else { printf (_("* OCSP Signing purpose disabled.\n")); } if (cert_creation_data->any_purpose) { printf (_("* Any purpose enabled.\n")); } else { printf (_("* Any purpose disabled.\n")); } } int ca_cli_callback_sign (int argc, char **argv) { TlsCertCreationData *cert_creation_data = NULL; guint64 csr_id; guint64 ca_id; csr_id = atoll(argv[1]); ca_id = atoll(argv[2]); if (! ca_file_check_if_is_csr_id (csr_id)) { dialog_error (_("The given CSR id. is not valid")); return -1; } cert_creation_data = g_new0 (TlsCertCreationData, 1); printf (_("You are about to sign the following Certificate Signing Request:\n")); ca_cli_callback_showcsr (argc, argv); printf (_("with the certificate corresponding to the next CA:\n")); ca_cli_callback_showcert (argc - 1, &argv[1]); cert_creation_data->key_months_before_expiration = dialog_ask_for_number (_("Introduce number of months before expiration of the new certificate (0 to cancel)"), 0, ca_file_policy_get_int (ca_id, "MONTHS_TO_EXPIRE"), ca_file_policy_get_int (ca_id, "MONTHS_TO_EXPIRE")); if (cert_creation_data->key_months_before_expiration == 0) { g_free (cert_creation_data); printf (_("Operation cancelled.\n")); } cert_creation_data->ca = ca_file_policy_get_int (ca_id, "CA"); cert_creation_data->crl_signing = ca_file_policy_get_int (ca_id, "CRL_SIGN"); cert_creation_data->digital_signature = ca_file_policy_get_int (ca_id, "DIGITAL_SIGNATURE"); cert_creation_data->data_encipherment = ca_file_policy_get_int (ca_id, "DATA_ENCIPHERMENT"); cert_creation_data->key_encipherment = ca_file_policy_get_int (ca_id, "KEY_ENCIPHERMENT"); cert_creation_data->non_repudiation = ca_file_policy_get_int (ca_id, "NON_REPUDIATION"); cert_creation_data->key_agreement = ca_file_policy_get_int (ca_id, "KEY_AGREEMENT"); cert_creation_data->email_protection = ca_file_policy_get_int (ca_id, "EMAIL_PROTECTION"); cert_creation_data->code_signing = ca_file_policy_get_int (ca_id, "CODE_SIGNING"); cert_creation_data->web_client = ca_file_policy_get_int (ca_id, "TLS_WEB_CLIENT"); cert_creation_data->web_server = ca_file_policy_get_int (ca_id, "TLS_WEB_SERVER"); cert_creation_data->time_stamping = ca_file_policy_get_int (ca_id, "TIME_STAMPING"); cert_creation_data->ocsp_signing = ca_file_policy_get_int (ca_id, "OCSP_SIGNING"); cert_creation_data->any_purpose = ca_file_policy_get_int (ca_id, "ANY_PURPOSE"); printf (_("The new certificate will be created with the following uses and purposes:\n")); __ca_cli_callback_show_uses_and_purposes (cert_creation_data); while (dialog_ask_for_confirmation (NULL, _("Do you want to change any property of the new certificate? Yes/[No] "), FALSE)) { if (ca_file_policy_get_int (ca_id, "CA")) { cert_creation_data->ca = dialog_ask_for_confirmation (NULL, _("* Enable Certification Authority use? [Yes]/No "), TRUE); } else { printf (_("* Certification Authority use disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "CRL_SIGN")) { cert_creation_data->crl_signing = dialog_ask_for_confirmation (NULL, _("* Enable CRL Signing? [Yes]/No "), TRUE); } else { printf (_("* CRL signing use disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "DIGITAL_SIGNATURE")) { cert_creation_data->digital_signature = dialog_ask_for_confirmation (NULL, _("* Enable Digital Signature use? [Yes]/No "), TRUE); } else { printf (_("* Digital Signature use disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "DATA_ENCIPHERMENT")) { cert_creation_data->data_encipherment = dialog_ask_for_confirmation (NULL, _("Enable Data Encipherment use? [Yes]/No "), TRUE); } else { printf (_("* Data Encipherment use disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "KEY_ENCIPHERMENT")) { cert_creation_data->key_encipherment = dialog_ask_for_confirmation (NULL, _("Enable Key Encipherment use? [Yes]/No "), TRUE); } else { printf (_("* Key Encipherment use disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "NON_REPUDIATION")) { cert_creation_data->non_repudiation = dialog_ask_for_confirmation (NULL, _("Enable Non Repudiation use? [Yes]/No "), TRUE); } else { printf (_("* Non Repudiation use disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "KEY_AGREEMENT")) { cert_creation_data->key_agreement = dialog_ask_for_confirmation (NULL, _("Enable Key Agreement use? [Yes]/No "), TRUE); } else { printf (_("* Key Agreement use disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "EMAIL_PROTECTION")) { cert_creation_data->email_protection = dialog_ask_for_confirmation (NULL, _("Enable Email Protection purpose? [Yes]/No "), TRUE); } else { printf (_("* Email Protection purpose disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "CODE_SIGNING")) { cert_creation_data->code_signing = dialog_ask_for_confirmation (NULL, _("Enable Code Signing purpose? [Yes]/No "), TRUE); } else { printf (_("* Code Signing purpose disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "TLS_WEB_CLIENT")) { cert_creation_data->web_client = dialog_ask_for_confirmation (NULL, _("Enable TLS Web Client purpose? [Yes]/No "), TRUE); } else { printf (_("* TLS Web Client purpose disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "TLS_WEB_SERVER")) { cert_creation_data->web_server = dialog_ask_for_confirmation (NULL, _("Enable TLS Web Server purpose? [Yes]/No "), TRUE); } else { printf (_("* TLS Web Server purpose disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "TIME_STAMPING")) { cert_creation_data->time_stamping = dialog_ask_for_confirmation (NULL, _("Enable Time Stamping purpose? [Yes]/No "), TRUE); } else { printf (_("* Time Stamping purpose disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "OCSP_SIGNING")) { cert_creation_data->ocsp_signing = dialog_ask_for_confirmation (NULL, _("Enable OCSP Signing purpose? [Yes]/No "), TRUE); } else { printf (_("* OCSP Signing purpose disabled by policy\n")); } if (ca_file_policy_get_int (ca_id, "ANY_PURPOSE")) { cert_creation_data->any_purpose = dialog_ask_for_confirmation (NULL, _("Enable any purpose? [Yes]/No "), TRUE); } else { printf (_("* Any purpose disabled by policy\n")); } printf (_("The new certificate will be created with the following uses and purposes:\n")); __ca_cli_callback_show_uses_and_purposes (cert_creation_data); } if (dialog_ask_for_confirmation (_("All the mandatory data for the certificate generation has been gathered."), _("Do you want to proceed with the signing? [Yes]/No "), TRUE)) { const gchar * strerror = new_cert_sign_csr (csr_id, ca_id, cert_creation_data); if (strerror) dialog_error ((gchar *) strerror); else printf (_("Certificate signed.\n")); } else { printf (_("Operation cancelled.\n")); } return 0; } int ca_cli_callback_delete (int argc, char **argv) { gchar *errmsg = NULL; guint64 id = atoll (argv[1]); if (! ca_file_check_if_is_csr_id (id)) { dialog_error (_("The given CSR id. is not valid")); return -1; } ca_cli_callback_showcsr (argc, argv); if (dialog_ask_for_confirmation (_("This Certificate Signing Request will be deleted."), _("This operation cannot be undone. Are you sure? Yes/[No] "), FALSE)) { errmsg = ca_file_remove_csr (id); if (errmsg) { dialog_error (_(errmsg)); } else { printf (_("Certificate Signing Request deleted.\n")); } } else { printf (_("Operation cancelled.\n")); } return 0; } int ca_cli_callback_crlgen (int argc, char **argv) { guint64 id_ca = atoll(argv[1]); gchar *filename = argv[2]; gchar *error = NULL; if (! ca_file_check_if_is_ca_id (id_ca)) { dialog_error (_("The given CA id. is not valid")); return -1; } error = crl_generate (id_ca, g_strdup(filename)); if (! error) { printf (_("CRL generated successfully into file '%s'\n"), filename); } else { dialog_error (error); return 1; } return 0; } int ca_cli_callback_dhgen (int argc, char **argv) { gint primebitlength = atoi (argv[1]); gchar *filename = argv[2]; gchar *error = NULL; if (primebitlength == 0 || primebitlength % 1024) { dialog_error (_("The bit-length of the prime number must be whole multiple of 1024")); return 1; } error = export_dh_param (primebitlength, filename); if (error) dialog_error (error); else printf (_("Diffie-Hellman parameters created and saved successfully in file '%s'\n"), filename); return 0; } int ca_cli_callback_changepassword (int argc, char **argv) { gchar *current_pwd = NULL; gchar *password = NULL; // First, we check the current status if (! ca_file_is_password_protected()) { if (dialog_ask_for_confirmation (_("Currently, the database is not password-protected."), _("Do you want to password protect it? [Yes]/No "), TRUE)) { password = dialog_get_password (_("OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database."), _("Insert password:"), _("Insert password (confirm):"), _("The introduced passwords are distinct."), 0); if (! password) { printf (_("Operation cancelled.\n")); return 1; } if (! ca_file_password_protect (password)) { dialog_error (_("Error while establishing database password. The operation was cancelled.")); g_free (password); return 2; } else { printf (_("Password established successfully.\n")); g_free (password); return 0; } } else { printf (_("Nothing done.\n")); return 0; } } else { if (dialog_ask_for_confirmation (_("Currently, the database IS password-protected."), _("Do you want to remove this password protection? Yes/[No] "), FALSE)) { do { if (current_pwd) g_free (current_pwd); printf (_("For removing the password-protection, the current database password\nmust be supplied.\n")); current_pwd = dialog_ask_for_password (_("Please, insert the current database password (Empty to cancel): ")); if (! current_pwd) { printf (_("Operation cancelled.\n")); return 3; } if (! ca_file_check_password (current_pwd)) { dialog_error (_("The current password you have entered\ndoesn't match with the actual current database password.")); } } while (! ca_file_check_password(current_pwd)); if (! ca_file_password_unprotect (current_pwd)) { dialog_error (_("Error while removing database password. \n" "The operation was cancelled.")); g_free (current_pwd); return 4; } else { printf (_("Password removed successfully.\n")); g_free (current_pwd); g_free (password); return 0; } } else { do { if (current_pwd) g_free (current_pwd); printf (_("You must supply the current database password before changing the password.\n")); current_pwd = dialog_ask_for_password (_("Please, insert the current database password (Empty to cancel): ")); if (! current_pwd) { printf (_("Operation cancelled.\n")); return 3; } if (! ca_file_check_password (current_pwd)) { dialog_error (_("The current password you have entered\ndoesn't match with the actual current database password.")); } } while (! ca_file_check_password(current_pwd)); password = dialog_get_password (_("OK. Now you must supply a new password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database."), _("Insert new password:"), _("Insert new password (confirm):"), _("The introduced passwords are distinct."), 0); if (! password) { printf (_("Operation cancelled.\n")); g_free (current_pwd); return 4; } if (! ca_file_password_change (current_pwd, password)) { dialog_error (_("Error while changing database password. \n" "The operation was cancelled.")); g_free (current_pwd); g_free (password); return 5; } else { printf (_("Password changed successfully.\n")); g_free (current_pwd); g_free (password); return 0; } } } return 0; } int ca_cli_callback_importfile (int argc, char **argv) { gchar *filename = argv[1]; if (! import_single_file (filename, NULL, NULL)) { dialog_error (_("Problem when importing the given file.")); return 1; } else { printf (_("File imported successfully.\n")); } return 0; } int ca_cli_callback_importdir (int argc, char **argv) { gchar *filename = argv[1]; gchar *error = NULL; error = import_whole_dir (filename); if (error) { dialog_error (error); return 1; } else { printf (_("Directory imported successfully.\n")); } return 0; } int ca_cli_callback_showcert (int argc, char **argv) { guint64 cert_id = atoll(argv[1]); gchar * certificate_pem; TlsCert * cert = NULL; #ifndef WIN32 struct tm tim; #else struct tm *tim = NULL; #endif gchar model_time_str[100]; gchar *aux; UInt160 *serial_number; gint i; if (! ca_file_check_if_is_cert_id (cert_id)) { dialog_error (_("The given certificate id. is not valid")); return -1; } certificate_pem = ca_file_get_public_pem_from_id(CA_FILE_ELEMENT_TYPE_CERT, cert_id); cert = tls_parse_cert_pem (certificate_pem); printf (_("Certificate:\n")); serial_number = &cert->serial_number; aux = uint160_strdup_printf (serial_number); printf (_("\tSerial number: %s\n"), aux); g_free (aux); printf (_("Subject:\n")); printf (_("\tDistinguished Name: %s\n"), (cert->dn ? cert->dn : _("None."))); printf (_("\tUnique ID: %s\n"), (cert->subject_key_id ? cert->subject_key_id : _("None."))); printf (_("Issuer:\n")); printf (_("\tDistinguished Name: %s\n"), (cert->i_dn ? cert->i_dn : _("None."))); printf (_("\tUnique ID: %s\n"), (cert->issuer_key_id ? cert->issuer_key_id : _("None."))); printf (_("Validity:\n")); #ifndef WIN32 gmtime_r (&cert->activation_time, &tim); strftime (model_time_str, 100, _("%m/%d/%Y %R GMT"), &tim); #else tim = gmtime (&cert->activation_time); strftime (model_time_str, 100, _("%m/%d/%Y %H:%M GMT"), tim); #endif printf (_("\tActivated on: %s\n"), model_time_str); #ifndef WIN32 gmtime_r (&cert->expiration_time, &tim); strftime (model_time_str, 100, _("%m/%d/%Y %R GMT"), &tim); #else tim = gmtime (&cert->expiration_time); strftime (model_time_str, 100, _("%m/%d/%Y %H:%M GMT"), tim); #endif printf (_("\tExpires on: %s\n"), model_time_str); printf (_("Fingerprints:\n")); printf (_("\tSHA1 fingerprint: %s\n"), cert->sha1); printf (_("\tMD5 fingerprint: %s\n"), cert->md5); printf (_("\tSHA256 fingerprint: %s\n"), cert->sha256); if (g_list_length (cert->uses)) { printf (_("Certificate uses:\n")); for (i = g_list_length(cert->uses) - 1; i >= 0; i--) { printf ("\t%s\n", (gchar *) g_list_nth_data (cert->uses, i)); } } tls_cert_free (cert); return 0; } int ca_cli_callback_showcsr (int argc, char **argv) { guint64 csr_id = atoll(argv[1]); gchar * csr_pem; TlsCsr * csr = NULL; if (! ca_file_check_if_is_csr_id (csr_id)) { dialog_error (_("The given CSR id. is not valid")); return -1; } csr_pem = ca_file_get_public_pem_from_id(CA_FILE_ELEMENT_TYPE_CSR, csr_id); csr = tls_parse_csr_pem (csr_pem); printf (_("Certificate Signing Request:\n")); printf (_("Subject:\n")); printf (_("\tDistinguished Name: %s\n"), csr->dn); #ifdef ADVANCED_GNUTLS printf (_("\tUnique ID: %s\n"), csr->key_id); #endif tls_csr_free (csr); return 0; } typedef enum { CA_CLI_CALLBACK_POLICY_C_INHERIT = 0, CA_CLI_CALLBACK_POLICY_ST_INHERIT = 1, CA_CLI_CALLBACK_POLICY_L_INHERIT = 2, CA_CLI_CALLBACK_POLICY_O_INHERIT = 3, CA_CLI_CALLBACK_POLICY_OU_INHERIT = 4, CA_CLI_CALLBACK_POLICY_C_FORCE_SAME = 5, CA_CLI_CALLBACK_POLICY_ST_FORCE_SAME = 6, CA_CLI_CALLBACK_POLICY_L_FORCE_SAME = 7, CA_CLI_CALLBACK_POLICY_O_FORCE_SAME = 8, CA_CLI_CALLBACK_POLICY_OU_FORCE_SAME = 9, CA_CLI_CALLBACK_POLICY_HOURS_BETWEEN_CRL_UPDATES = 10, CA_CLI_CALLBACK_POLICY_CRL_DISTRIBUTION_POINT = 11, CA_CLI_CALLBACK_POLICY_MONTHS_TO_EXPIRE = 12, CA_CLI_CALLBACK_POLICY_CA = 13, CA_CLI_CALLBACK_POLICY_CRL_SIGN = 14, CA_CLI_CALLBACK_POLICY_NON_REPUTATION = 15, CA_CLI_CALLBACK_POLICY_DIGITAL_SIGNATURE = 16, CA_CLI_CALLBACK_POLICY_KEY_ENCIPHERMENT = 17, CA_CLI_CALLBACK_POLICY_KEY_AGREEMENT = 18, CA_CLI_CALLBACK_POLICY_DATA_ENCIPHERMENT = 19, CA_CLI_CALLBACK_POLICY_TLS_WEB_SERVER = 20, CA_CLI_CALLBACK_POLICY_TLS_WEB_CLIENT = 21, CA_CLI_CALLBACK_POLICY_TIME_STAMPING = 22, CA_CLI_CALLBACK_POLICY_CODE_SIGNING = 23, CA_CLI_CALLBACK_POLICY_EMAIL_PROTECTION = 24, CA_CLI_CALLBACK_POLICY_OCSP_SIGNING = 25, CA_CLI_CALLBACK_POLICY_ANY_PURPOSE = 26, CA_CLI_CALLBACK_POLICY_NUMBER = 27 } CaCallbackPolicy; static gchar *CaCallbackPolicyName[CA_CLI_CALLBACK_POLICY_NUMBER] = { "C_INHERIT", "ST_INHERIT", "L_INHERIT", "O_INHERIT", "OU_INHERIT", "C_FORCE_SAME", "ST_FORCE_SAME", "L_FORCE_SAME", "O_FORCE_SAME", "OU_FORCE_SAME", "HOURS_BETWEEN_CRL_UPDATES", "CRL_DISTRIBUTION_POINT", "MONTHS_TO_EXPIRE", "CA", "CRL_SIGN", "NON_REPUDIATION", "DIGITAL_SIGNATURE", "KEY_ENCIPHERMENT", "KEY_AGREEMENT", "DATA_ENCIPHERMENT", "TLS_WEB_SERVER", "TLS_WEB_CLIENT", "TIME_STAMPING", "CODE_SIGNING", "EMAIL_PROTECTION", "OCSP_SIGNING", "ANY_PURPOSE" }; static gchar *CaCallbackPolicyDescriptions[CA_CLI_CALLBACK_POLICY_NUMBER] = { N_("Generated certs inherit Country from CA "), N_("Generated certs inherit State from CA "), N_("Generated certs inherit Locality from CA "), N_("Generated certs inherit Organization from CA "), N_("Generated certs inherit Organizational Unit from CA "), N_("Country in generated certs must be the same than in CA "), N_("State in generated certs must be the same than in CA "), N_("Locality in generated certs must be the same than in CA "), N_("Organization in generated certs must be the same than in CA "), N_("Organizational Unit in generated certs must be the same than in CA"), N_("Maximum number of hours between CRL updates "), N_("CRL distribution point (URL where CRL is published) "), N_("Maximum number of months before expiration of new certs "), N_("CA use enabled in generated certs "), N_("CRL Sign use enabled in generated certs "), N_("Non reputation use enabled in generated certs "), N_("Digital signature use enabled in generated certs "), N_("Key encipherment use enabled in generated certs "), N_("Key agreement use enabled in generated certs "), N_("Data encipherment use enabled in generated certs "), N_("TLS web server purpose enabled in generated certs "), N_("TLS web client purpose enabled in generated certs "), N_("Time stamping purpose enabled in generated certs "), N_("Code signing server purpose enabled in generated certs "), N_("Email protection purpose enabled in generated certs "), N_("OCSP signing purpose enabled in generated certs "), N_("Any purpose enabled in generated certs ")}; int ca_cli_callback_showpolicy (int argc, char **argv) { guint64 ca_id = atoll(argv[1]); gint i; if (! ca_file_check_if_is_ca_id (ca_id)) { dialog_error (_("The given CA id. is not valid")); return -1; } printf (_("Showing policies of the following certificate:\n")); ca_cli_callback_showcert (argc, argv); printf (_("\nPolicies:\n")); printf (_("Id.\tDescription\t\t\t\t\t\t\t\tValue\n")); for (i = 0; i < CA_CLI_CALLBACK_POLICY_NUMBER; i++) { printf ("%d\t%s\t%s\n", i, CaCallbackPolicyDescriptions[i], ca_file_policy_get(ca_id, CaCallbackPolicyName[i])); } return 0; } int ca_cli_callback_setpolicy (int argc, char **argv) { guint64 ca_id = atoll(argv[1]); gint policy_id = atoi (argv[2]); gchar *value = argv[3]; gchar *message = NULL; gchar *description = NULL; gint i; if (! ca_file_check_if_is_ca_id (ca_id)) { dialog_error (_("The given CA id. is not valid")); return -1; } if (policy_id < 0 || policy_id >= CA_CLI_CALLBACK_POLICY_NUMBER) { dialog_error (_("The given policy id is not valid")); return -2; } description = g_strdup (CaCallbackPolicyDescriptions[policy_id]); for (i=strlen (description) - 1; i>=0; i--) { if (description[i] != ' ') { description[i+1] = '\0'; break; } } message = g_strdup_printf (_("You are about to assign to the policy\n'%s' the new value '%s'."), description, value); g_free (description); if (dialog_ask_for_confirmation (message, _("Are you sure? Yes/[No] : "), FALSE)) { if (! ca_file_policy_set (ca_id, CaCallbackPolicyName[policy_id], value)) { g_free (message); return -1; } else printf (_("Policy set correctly to '%s'.\n"), value); } else { printf (_("Operation cancelled.\n")); } g_free (message); return 0; } int ca_cli_callback_showpreferences (int argc, char **argv) { printf (_("gnoMint-cli current preferences:\n")); printf (_("Id.\tName\t\t\tValue\n")); printf (_("0\tGnome keyring support\t%d\n"), preferences_get_gnome_keyring_export()); return 0; } int ca_cli_callback_setpreference (int argc, char **argv) { gint preference_id = atoi (argv[1]); gint value = atoi (argv[2]); gchar *message = NULL; if (preference_id != 0) { dialog_error (_("The given preference id is not valid")); return -1; } switch (preference_id) { case 0: message = g_strdup_printf (_("You are about to assign to the preference 'Gnome keyring support' the new value '%d'."), value); break; } if (dialog_ask_for_confirmation (message, _("Are you sure? Yes/[No] : "), FALSE)) { switch (preference_id) { case 0: preferences_set_gnome_keyring_export (value); break; } } else { printf (_("Operation cancelled.\n")); } g_free (message); return 0; } int ca_cli_callback_about (int argc, char **argv) { printf (_("%s version %s\n%s\n"), PACKAGE_NAME, PACKAGE_VERSION, PACKAGE_COPYRIGHT); printf (_("\nAuthors:\n%s\n\n"), PACKAGE_AUTHORS); if (strcmp ("translator-credits", _("translator-credits"))) printf (_("Translators:\n%s\n"), _("translator-credits")); return 0; } int ca_cli_callback_warranty (int argc, char **argv) { printf ("%s", _("THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n\n")); return 0; } int ca_cli_callback_distribution (int argc, char **argv) { printf ("%s", _("This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n\n")); return 0; } int ca_cli_callback_version (int argc, char **argv) { printf (_("%s version %s\n"), PACKAGE_NAME, PACKAGE_VERSION); return 0; } int ca_cli_callback_help (int argc, char **argv) { gint i; printf ("\n"); printf (_("Available commands:\n")); printf (_("===================\n")); for (i=0; i < CA_COMMAND_NUMBER; i++) { printf ("* %s\n %s\n", _(ca_commands[i].syntax), _(ca_commands[i].help)); } return 0; } int ca_cli_callback_exit (int argc, char **argv) { printf (_("Exiting gnomint-cli...\n")); exit (0); return 0; } gnomint-1.3.0/src/crl.h0000664000175000017500000000241012672052326011633 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _CRL_WINDOW_H_ #define _CRL_WINDOW_H_ #ifndef GNOMINTCLI void crl_window_display (void); void crl_treeview_cursor_changed_cb (GtkTreeView *treeview, gpointer userdata); void crl_cancel_clicked_cb (GtkButton *button, gpointer userdata); void crl_ok_clicked_cb (GtkButton *button, gpointer userdata); #endif gchar * crl_generate (guint64 ca_id, gchar *filename); #endif gnomint-1.3.0/src/creation_process_window.c0000664000175000017500000001722612672052326016012 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include #include "ca_creation.h" #include "csr_creation.h" #include "dialog.h" #include "creation_process_window.h" GtkBuilder * creation_process_window_gtkb = NULL; gint timer=0; GThread * creation_process_window_thread = NULL; void creation_process_window_error_dialog (gchar *message) { GtkWidget *dialog; GObject *widget; widget = gtk_builder_get_object (creation_process_window_gtkb, "creation_process_window"); /* Create the widgets */ dialog = gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, "%s", message); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (dialog); } void creation_process_window_ca_finish (void) { GObject *widget = NULL; GtkWidget *dialog = NULL; g_thread_join (creation_process_window_thread); gtk_timeout_remove (timer); timer = 0; widget = gtk_builder_get_object (creation_process_window_gtkb, "creation_process_window"); dialog_refresh_list(); dialog = gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("CA creation process finished")); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); gtk_widget_destroy (GTK_WIDGET(widget)); } gint creation_process_window_ca_pulse (gpointer data) { GObject * widget = NULL; gchar *error_message = NULL; gint status = 0; gtk_progress_bar_set_pulse_step (GTK_PROGRESS_BAR(data), 0.1); gtk_progress_bar_pulse (GTK_PROGRESS_BAR(data)); widget = gtk_builder_get_object (creation_process_window_gtkb, "status_message_label"); ca_creation_lock_status_mutex(); if (strcmp(ca_creation_get_thread_message(), gtk_label_get_text(GTK_LABEL(widget)))) { gtk_label_set_text (GTK_LABEL(widget), ca_creation_get_thread_message()); } status = ca_creation_get_thread_status(); ca_creation_unlock_status_mutex(); gtk_main_iteration(); if (status > 0) { creation_process_window_ca_finish (); } else if (status < 0) { error_message = (gchar *) g_thread_join (creation_process_window_thread); gtk_timeout_remove (timer); timer = 0; if (error_message) { creation_process_window_error_dialog (error_message); printf ("%s\n\n", error_message); } widget = gtk_builder_get_object (creation_process_window_gtkb, "creation_process_window"); gtk_widget_destroy (GTK_WIDGET(widget)); } return 1; } void creation_process_window_ca_display (TlsCreationData * ca_creation_data) { GObject * widget = NULL; creation_process_window_gtkb = gtk_builder_new(); gtk_builder_add_from_file (creation_process_window_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "creation_process_window.ui", NULL ), NULL); gtk_builder_connect_signals (creation_process_window_gtkb, NULL); creation_process_window_thread = ca_creation_launch_thread (ca_creation_data); widget = gtk_builder_get_object (creation_process_window_gtkb, "creation_process_window_progressbar"); gtk_progress_bar_pulse (GTK_PROGRESS_BAR(widget)); timer = g_timeout_add (100, creation_process_window_ca_pulse, widget); } G_MODULE_EXPORT void on_cancel_creation_process_clicked (GtkButton *button, gpointer user_data) { GtkWidget *dialog, *widget; if (timer) { gtk_timeout_remove (timer); timer = 0; } widget = GTK_WIDGET(gtk_builder_get_object (creation_process_window_gtkb, "creation_process_window")); /* Create the widgets */ dialog = gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("Creation process cancelled")); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); gtk_widget_destroy (widget); } // ********************** CSRs void creation_process_window_csr_finish (void) { GtkWidget *widget = NULL, *dialog = NULL; g_thread_join (creation_process_window_thread); gtk_timeout_remove (timer); timer = 0; widget = GTK_WIDGET(gtk_builder_get_object (creation_process_window_gtkb, "creation_process_window")); dialog = gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("CSR creation process finished")); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); gtk_widget_destroy (widget); dialog_refresh_list (); } gint creation_process_window_csr_pulse (gpointer data) { GtkWidget * widget = NULL; gchar *error_message = NULL; gint status = 0; gtk_progress_bar_set_pulse_step (GTK_PROGRESS_BAR(data), 0.1); gtk_progress_bar_pulse (GTK_PROGRESS_BAR(data)); widget = GTK_WIDGET(gtk_builder_get_object (creation_process_window_gtkb, "status_message_label")); csr_creation_lock_status_mutex(); if (strcmp(csr_creation_get_thread_message(), gtk_label_get_text(GTK_LABEL(widget)))) { gtk_label_set_text (GTK_LABEL(widget), csr_creation_get_thread_message()); } status = csr_creation_get_thread_status(); csr_creation_unlock_status_mutex(); gtk_main_iteration(); if (status > 0) { creation_process_window_csr_finish (); } else if (status < 0) { error_message = (gchar *) g_thread_join (creation_process_window_thread); gtk_timeout_remove (timer); timer = 0; if (error_message) { creation_process_window_error_dialog (error_message); printf ("%s\n\n", error_message); } widget = GTK_WIDGET(gtk_builder_get_object (creation_process_window_gtkb, "creation_process_window")); gtk_widget_destroy (widget); } return 1; } void creation_process_window_csr_display (TlsCreationData * ca_creation_data) { GObject * widget = NULL; creation_process_window_gtkb = gtk_builder_new(); gtk_builder_add_from_file (creation_process_window_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "creation_process_window.ui", NULL), NULL); gtk_builder_connect_signals (creation_process_window_gtkb, NULL); widget = gtk_builder_get_object (creation_process_window_gtkb, "titleLabel"); gtk_label_set_text (GTK_LABEL (widget), _("Creating Certificate Signing Request")); creation_process_window_thread = csr_creation_launch_thread (ca_creation_data); widget = gtk_builder_get_object (creation_process_window_gtkb, "creation_process_window_progressbar"); gtk_progress_bar_pulse (GTK_PROGRESS_BAR(widget)); timer = g_timeout_add (100, creation_process_window_csr_pulse, widget); } gnomint-1.3.0/src/export.c0000664000175000017500000001754612672052326012407 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include "ca_file.h" #include "dialog.h" #include "tls.h" #include "pkey_manage.h" gchar *export_dh_param (guint dh_size, gchar *filename) { GIOChannel * file = NULL; gchar *pem = NULL; GError * error = NULL; pem = tls_generate_dh_params (dh_size); file = g_io_channel_new_file (filename, "w", &error); if (error) { return (_("There was an error while saving Diffie-Hellman parameters.")); } g_io_channel_write_chars (file, pem, strlen(pem), NULL, &error); if (error) { return (_("There was an error while saving Diffie-Hellman parameters.")); } g_io_channel_shutdown (file, TRUE, &error); if (error) { return (_("There was an error while saving Diffie-Hellman parameters.")); } g_io_channel_unref (file); return NULL; } gchar * export_private_pkcs8 (guint64 id, gint type, gchar *filename) { GIOChannel * file = NULL; gchar * password = NULL; GError * error = NULL; gchar * dn = NULL; PkeyManageData * crypted_pkey = NULL; gchar * privatekey = NULL; gchar * pem = NULL; file = g_io_channel_new_file (filename, "w", &error); if (error) { g_free (password); return (_("There was an error while exporting private key.")); } switch (type) { case CA_FILE_ELEMENT_TYPE_CERT: crypted_pkey = pkey_manage_get_certificate_pkey (id); break; case CA_FILE_ELEMENT_TYPE_CSR: crypted_pkey = pkey_manage_get_csr_pkey (id); break; default: break; } dn = ca_file_get_dn_from_id (type, id); if (!crypted_pkey || !dn) { pkey_manage_data_free (crypted_pkey); g_free (dn); return (_("There was an error while getting private key.")); } privatekey = pkey_manage_uncrypt (crypted_pkey, dn); pkey_manage_data_free (crypted_pkey); g_free (dn); if (! privatekey) { return (_("There was an error while uncrypting private key.")); } password = dialog_get_password (_("You need to supply a passphrase for protecting the exported private key, " "so nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key."), _("Insert passphrase (8 characters or more):"), _("Insert passphrase (confirm):"), _("The introduced passphrases are distinct."), 8); if (! password) { g_free (privatekey); return (_("Operation cancelled.")); } pem = tls_generate_pkcs8_encrypted_private_key (privatekey, password); g_free (password); g_free (privatekey); if (!pem) { return (_("There was an error while password-protecting private key.")); } g_io_channel_write_chars (file, pem, strlen(pem), NULL, &error); if (error) { g_free (pem); return (_("There was an error while exporting private key.")); } g_free (pem); g_io_channel_shutdown (file, TRUE, &error); if (error) { g_io_channel_unref (file); return (_("There was an error while exporting private key.")); } g_io_channel_unref (file); ca_file_mark_pkey_as_extracted_for_id (type, filename, id); return NULL; } gchar * export_private_pem (guint64 id, gint type, gchar *filename) { GIOChannel * file = NULL; PkeyManageData * crypted_pkey = NULL; gchar * dn = NULL; gchar * pem = NULL; GError * error = NULL; file = g_io_channel_new_file (filename, "w", &error); if (error) { return (_("There was an error while exporting private key.")); } if (type == CA_FILE_ELEMENT_TYPE_CERT) { crypted_pkey = pkey_manage_get_certificate_pkey (id); dn = ca_file_get_dn_from_id (CA_FILE_ELEMENT_TYPE_CERT, id); } else { crypted_pkey = pkey_manage_get_csr_pkey (id); dn = ca_file_get_dn_from_id (CA_FILE_ELEMENT_TYPE_CSR, id); } if (!crypted_pkey || !dn) { pkey_manage_data_free(crypted_pkey); g_free (dn); return (_("There was an error while getting private key.")); } pem = pkey_manage_uncrypt (crypted_pkey, dn); pkey_manage_data_free (crypted_pkey); g_free (dn); if (!pem) { return (_("There was an error while decrypting private key.")); } g_io_channel_write_chars (file, pem, strlen(pem), NULL, &error); if (error) { return (_("There was an error while exporting private key.")); } g_free (pem); g_io_channel_shutdown (file, TRUE, &error); if (error) { g_io_channel_unref (file); return (_("There was an error while exporting private key.")); } g_io_channel_unref (file); return NULL; } gchar * export_pkcs12 (guint64 id, gint type, gchar *filename) { GIOChannel * file = NULL; gchar * password = NULL; GError * error = NULL; gchar * crt_pem = NULL; PkeyManageData * crypted_pkey = NULL; gchar * dn = NULL; gchar * privatekey = NULL; gnutls_datum_t * pkcs12_datum = NULL; if (type == CA_FILE_ELEMENT_TYPE_CERT) { crypted_pkey = pkey_manage_get_certificate_pkey (id); dn = ca_file_get_dn_from_id (CA_FILE_ELEMENT_TYPE_CERT, id); crt_pem = ca_file_get_public_pem_from_id (CA_FILE_ELEMENT_TYPE_CERT, id); } else { return (_("Unsupported operation: you cannot generate a PKCS#12 for a CSR.")); } if (! crypted_pkey || ! dn || ! crt_pem) { pkey_manage_data_free (crypted_pkey); g_free (dn); g_free (crt_pem); return (_("There was an error while getting the certificate and private key from the internal database.")); } privatekey = pkey_manage_uncrypt (crypted_pkey, dn); if (! privatekey) { pkey_manage_data_free (crypted_pkey); g_free (dn); g_free (crt_pem); return (_("There was an error while getting the certificate and private key from the internal database.")); } password = dialog_get_password (_("You need to supply a passphrase for protecting the exported certificate, " "so nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate."), _("Insert passphrase (8 characters or more):"), _("Insert passphrase (confirm):"), _("The introduced passphrases are distinct."), 8); if (! password) { pkey_manage_data_free (crypted_pkey); g_free (dn); g_free (crt_pem); g_free (privatekey); return ""; } pkcs12_datum = tls_generate_pkcs12 (crt_pem, privatekey, password); g_free (password); g_free (privatekey); pkey_manage_data_free (crypted_pkey); g_free (dn); g_free (crt_pem); if (!pkcs12_datum) { return (_("There was an error while generating the PKCS#12 package.")); } file = g_io_channel_new_file (filename, "w", &error); if (error) { return (_("There was an error while exporting certificate.")); } g_io_channel_set_encoding (file, NULL, NULL); g_io_channel_write_chars (file, (gchar *) pkcs12_datum->data, pkcs12_datum->size, NULL, &error); if (error) { g_free (pkcs12_datum->data); g_free (pkcs12_datum); return (_("There was an error while exporting the certificate.")); } g_free (pkcs12_datum->data); g_free (pkcs12_datum); g_io_channel_shutdown (file, TRUE, &error); if (error) { g_io_channel_unref (file); return (_("There was an error while exporting the certificate.")); } g_io_channel_unref (file); return NULL; } gnomint-1.3.0/src/certificate_properties.c0000664000175000017500000012523312672062215015613 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include "tls.h" #include "ca_policy.h" #include "certificate_properties.h" #include typedef struct { const gchar *oid; const gchar *label; } certificate_properties_oid_label_couple_t; enum { CERTIFICATE_PROPERTIES_COL_NAME = 0, CERTIFICATE_PROPERTIES_COL_VALUE, CERTIFICATE_PROPERTIES_N_COLUMNS }; typedef void (*certificate_properties_fill_t) (GtkTreeStore *, GtkTreeIter *, gnutls_x509_crt_t *); typedef struct { const gchar *oid; certificate_properties_fill_t function; } certificate_properties_oid_function_couple_t; const certificate_properties_oid_label_couple_t certificate_properties_oid_label_table[] = { {"1.3.6.1.5.5.7.3.1", "TLS WWW Server"}, {"1.3.6.1.5.5.7.3.2", "TLS WWW Client"}, {"1.3.6.1.5.5.7.3.3", "Code signing"}, {"1.3.6.1.5.5.7.3.4", "Email protection"}, {"1.3.6.1.5.5.7.3.8", "Time stamping"}, {"1.3.6.1.5.5.7.3.9", "OCSP signing"}, {"2.5.29.37.0", "Any purpose"}, {"2.5.29.9", "Subject Directory Attributes"}, {"2.5.29.14", "Subject Key Identifier"}, {"2.5.29.15", "Key Usage"}, {"2.5.29.16", "Private Key Usage Period"}, {"2.5.29.17", "Subject Alternative Name"}, {"2.5.29.19", "Basic Constraints"}, {"2.5.29.30", "Name Constraints"}, {"2.5.29.31", "CRL Distribution Points"}, {"2.5.29.32", "Certificate Policies"}, {"2.5.29.33", "Policy Mappings"}, {"2.5.29.35", "Authority Key Identifier"}, {"2.5.29.36", "Policy Constraints"}, {"2.5.29.37", "Extended Key Usage"}, {"2.5.29.46", "Delta CRL Distribution Point"}, {"2.5.29.54", "Inhibit Any-Policy"}, {0, 0}, }; void __certificate_properties_fill_cert_ext_SubjectKeyIdentifier(GtkTreeStore *, GtkTreeIter *, gnutls_x509_crt_t *); void __certificate_properties_fill_cert_ext_KeyUsage(GtkTreeStore *, GtkTreeIter *, gnutls_x509_crt_t *); void __certificate_properties_fill_cert_ext_SubjectAltName(GtkTreeStore *, GtkTreeIter *, gnutls_x509_crt_t *); void __certificate_properties_fill_cert_ext_BasicConstraints(GtkTreeStore *, GtkTreeIter *, gnutls_x509_crt_t *); void __certificate_properties_fill_cert_ext_CRLDistributionPoints(GtkTreeStore *, GtkTreeIter *, gnutls_x509_crt_t *); void __certificate_properties_fill_cert_ext_AuthorityKeyIdentifier(GtkTreeStore *, GtkTreeIter *, gnutls_x509_crt_t *); void __certificate_properties_fill_cert_ext_ExtKeyUsage(GtkTreeStore *, GtkTreeIter *, gnutls_x509_crt_t *); gchar * __certificate_properties_dump_raw_data(const unsigned char *buffer, size_t buffer_size); const gchar * __certificate_properties_lookup_oid_label(const certificate_properties_oid_label_couple_t *oid_label_table, const gchar *oid); certificate_properties_fill_t __certificate_properties_lookup_oid_function (const certificate_properties_oid_function_couple_t *oid_func_table, const gchar *oid); gchar * __certificate_properties_dump_RDNSequence(const gchar *buffer, gsize buffer_size); gchar * __certificate_properties_dump_key_usage(guint key_usage); void __certificate_properties_fill_cert_version(GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_cert_serialNumber(GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_cert_signature(GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_cert_issuer(GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_cert_validity (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_cert_subject (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_cert_subjectPublicKeyInfo (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_cert_issuerUniqueID (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_cert_subjectUniqueID (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_cert_ext (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_cert (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_signatureAlgorithm (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_signatureValue (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate); void __certificate_properties_fill_certificate(GtkTreeStore *store, gnutls_x509_crt_t *certificate); const certificate_properties_oid_function_couple_t certificate_properties_oid_function_table[] = { {"2.5.29.14", __certificate_properties_fill_cert_ext_SubjectKeyIdentifier}, {"2.5.29.15", __certificate_properties_fill_cert_ext_KeyUsage}, {"2.5.29.17", __certificate_properties_fill_cert_ext_SubjectAltName}, {"2.5.29.19", __certificate_properties_fill_cert_ext_BasicConstraints}, {"2.5.29.31", __certificate_properties_fill_cert_ext_CRLDistributionPoints}, {"2.5.29.35", __certificate_properties_fill_cert_ext_AuthorityKeyIdentifier}, {"2.5.29.37", __certificate_properties_fill_cert_ext_ExtKeyUsage}, {0, 0}, }; GtkBuilder * certificate_properties_window_gtkb = NULL; void __certificate_properties_populate (const char *certificate_pem); void __certificate_details_populate (const char *certificate_pem); void certificate_properties_display(guint64 cert_id, const char *certificate_pem, gboolean privkey_in_db, gboolean is_ca) { GObject * widget = NULL; certificate_properties_window_gtkb = gtk_builder_new(); gtk_builder_add_from_file (certificate_properties_window_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "certificate_properties_dialog.ui", NULL), NULL); gtk_builder_connect_signals (certificate_properties_window_gtkb, NULL); __certificate_properties_populate (certificate_pem); __certificate_details_populate (certificate_pem); if (! is_ca) { widget = gtk_builder_get_object (certificate_properties_window_gtkb, "notebook2"); gtk_notebook_remove_page (GTK_NOTEBOOK(widget), 2); } else { ca_policy_populate (cert_id); } widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certificate_properties_dialog"); g_object_set_data (G_OBJECT(widget), "cert_id", g_strdup_printf("%" G_GUINT64_FORMAT, cert_id)); gtk_widget_show (GTK_WIDGET(widget)); } void __certificate_properties_populate (const char *certificate_pem) { GObject *widget = NULL; #ifndef WIN32 struct tm tim; #else struct tm* tim = NULL; #endif TlsCert * cert = NULL; gchar model_time_str[100]; gchar * aux; UInt160 * serial_number; cert = tls_parse_cert_pem (certificate_pem); serial_number = &cert->serial_number; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certActivationDateLabel"); #ifndef WIN32 gmtime_r (&cert->activation_time, &tim); strftime (model_time_str, 100, _("%m/%d/%Y %R GMT"), &tim); #else tim = gmtime (&cert->activation_time); strftime (model_time_str, 100, _("%m/%d/%Y %H:%M GMT"), tim); #endif gtk_label_set_text (GTK_LABEL(widget), model_time_str); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certExpirationDateLabel"); #ifndef WIN32 gmtime_r (&cert->expiration_time, &tim); strftime (model_time_str, 100, _("%m/%d/%Y %R GMT"), &tim); #else tim = gmtime (&cert->expiration_time); strftime (model_time_str, 100, _("%m/%d/%Y %H:%M GMT"), tim); #endif gtk_label_set_text (GTK_LABEL(widget), model_time_str); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certSNLabel"); aux = uint160_strdup_printf (serial_number); gtk_label_set_text (GTK_LABEL(widget), aux); g_free (aux); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certSubjectCNLabel"); gtk_label_set_text (GTK_LABEL(widget), cert->cn); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certSubjectOLabel"); gtk_label_set_text (GTK_LABEL(widget), cert->o); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certSubjectOULabel"); gtk_label_set_text (GTK_LABEL(widget), cert->ou); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certIssuerCNLabel"); gtk_label_set_text (GTK_LABEL(widget), cert->i_cn); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certIssuerOLabel"); gtk_label_set_text (GTK_LABEL(widget), cert->i_o); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certIssuerOULabel"); gtk_label_set_text (GTK_LABEL(widget), cert->i_ou); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "sha1Label"); gtk_label_set_text (GTK_LABEL(widget), cert->sha1); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "md5Label"); gtk_label_set_text (GTK_LABEL(widget), cert->md5); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "sha256Label"); gtk_label_set_text (GTK_LABEL(widget), cert->sha256); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "sha512Label"); gtk_label_set_text (GTK_LABEL(widget), cert->sha512); if (g_list_length (cert->uses)) { GValue * valtrue = g_new0 (GValue, 1); int i; g_value_init (valtrue, G_TYPE_BOOLEAN); g_value_set_boolean (valtrue, TRUE); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certPropSeparator"); gtk_widget_show (GTK_WIDGET(widget)); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "vboxCertCapabilities"); for (i = g_list_length(cert->uses) - 1; i >= 0; i--) { GtkLabel *label = NULL; label = GTK_LABEL(gtk_label_new ((gchar *) g_list_nth_data (cert->uses, i))); gtk_misc_set_alignment (GTK_MISC(label), 0.0, 0.5); gtk_box_pack_end (GTK_BOX(widget), GTK_WIDGET(label), 0, 0, 0); } gtk_widget_show_all (GTK_WIDGET(widget)); g_free (valtrue); } tls_cert_free (cert); return; } G_MODULE_EXPORT void certificate_properties_close_clicked (const char *certificate_pem) { GObject *widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certificate_properties_dialog"); gtk_widget_destroy (GTK_WIDGET(widget)); } gchar * __certificate_properties_dump_raw_data(const unsigned char *buffer, size_t buffer_size) { const gint BYTES_PER_LINE = 16; gchar *result = g_new0 (gchar, 4 * buffer_size); size_t i; gchar *result_iterator = result; if (!result) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, "Not enough memory\n"); return result; } for (i = 0; i < buffer_size; i++) { result_iterator += sprintf(result_iterator, "%02x:", buffer[i]); if ((i % BYTES_PER_LINE) == BYTES_PER_LINE - 1) *result_iterator++ = '\n'; } if ((i % BYTES_PER_LINE) == 0) *(result_iterator - 1) = 0; return result; } const gchar * __certificate_properties_lookup_oid_label(const certificate_properties_oid_label_couple_t *oid_label_table, const gchar *oid) { const certificate_properties_oid_label_couple_t *i; if (!oid) return 0; for (i = certificate_properties_oid_label_table; i->oid; i++) if (strcmp(i->oid, oid) == 0) break; return _(i->label); } certificate_properties_fill_t __certificate_properties_lookup_oid_function (const certificate_properties_oid_function_couple_t *oid_func_table, const gchar *oid) { const certificate_properties_oid_function_couple_t *i; if (!oid) return 0; for (i = oid_func_table; i->oid; i++) if (strcmp(i->oid, oid) == 0) break; return i->function; } gchar * __certificate_properties_dump_RDNSequence(const gchar *buffer, gsize buffer_size) { const char ESCAPE = '\\'; const char SEPARATOR = ','; gchar *result = g_new0 (gchar, buffer_size + 1); gsize i; gchar *result_iterator = result; gint previous_was_escape = 0; if (! result) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, "Not enough memory\n"); return result; } for (i = 0; i < buffer_size; i++) { if (previous_was_escape) { *result_iterator++ = *buffer++; previous_was_escape = 0; } else if (*buffer == ESCAPE) { buffer++; previous_was_escape = 1; } else if (*buffer == SEPARATOR) { *result_iterator++ = '\n'; buffer++; } else *result_iterator++ = *buffer++; } *result_iterator++ = 0; return result; } gchar * __certificate_properties_dump_key_usage(guint key_usage) { const gint BUFFER_SIZE_MAX = 1024; gchar *result = g_new0 (gchar, BUFFER_SIZE_MAX + 1); gchar *buffer_iterator = result; if (key_usage & GNUTLS_KEY_DIGITAL_SIGNATURE) buffer_iterator += sprintf(buffer_iterator, "%s\n", _("Digital signature")); if (key_usage & GNUTLS_KEY_NON_REPUDIATION) buffer_iterator += sprintf(buffer_iterator, "%s\n", _("Non repudiation")); if (key_usage & GNUTLS_KEY_KEY_ENCIPHERMENT) buffer_iterator += sprintf(buffer_iterator, "%s\n", _("Key encipherment")); if (key_usage & GNUTLS_KEY_DATA_ENCIPHERMENT) buffer_iterator += sprintf(buffer_iterator, "%s\n", _("Data encipherment")); if (key_usage & GNUTLS_KEY_KEY_AGREEMENT) buffer_iterator += sprintf(buffer_iterator, "%s\n", _("Key agreement")); if (key_usage & GNUTLS_KEY_KEY_CERT_SIGN) buffer_iterator += sprintf(buffer_iterator, "%s\n", _("Certificate signing")); if (key_usage & GNUTLS_KEY_CRL_SIGN) buffer_iterator += sprintf(buffer_iterator, "%s\n", _("CRL signing")); if (key_usage & GNUTLS_KEY_ENCIPHER_ONLY) buffer_iterator += sprintf(buffer_iterator, "%s\n", _("Key encipherment only")); if (key_usage & GNUTLS_KEY_DECIPHER_ONLY) buffer_iterator += sprintf(buffer_iterator, "%s\n", _("Key decipherment only")); *(buffer_iterator - 1) = 0; return result; } void __certificate_properties_fill_cert_version(GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { gint result; gchar value[4]; GtkTreeIter j; result = gnutls_x509_crt_get_version(*certificate); sprintf(value, "v%d", result); gtk_tree_store_append(store, &j, parent); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Version"), CERTIFICATE_PROPERTIES_COL_VALUE, value, -1); } void __certificate_properties_fill_cert_serialNumber(GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { gint result; gsize buffer_size = 0; GtkTreeIter j; gchar *buffer = NULL; gchar *value = NULL; result = gnutls_x509_crt_get_serial(*certificate, 0, &buffer_size); if (result != GNUTLS_E_SHORT_MEMORY_BUFFER) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } buffer = g_new0(gchar, buffer_size); if (!buffer) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, "Not enough memory!"); return; } result = gnutls_x509_crt_get_serial(*certificate, buffer, &buffer_size); if (result < 0) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } value = __certificate_properties_dump_raw_data((unsigned char *) buffer, buffer_size); g_free(buffer); gtk_tree_store_append(store, &j, parent); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Serial Number"), CERTIFICATE_PROPERTIES_COL_VALUE, value, -1); g_free(value); } void __certificate_properties_fill_cert_signature(GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { int result; GtkTreeIter j; GtkTreeIter k; const gchar *name = NULL; result = gnutls_x509_crt_get_signature_algorithm(*certificate); name = gnutls_sign_algorithm_get_name(result); gtk_tree_store_append(store, &j, parent); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Signature"), -1); gtk_tree_store_append(store, &k, &j); gtk_tree_store_set(store, &k, CERTIFICATE_PROPERTIES_COL_NAME, _("Algorithm"), CERTIFICATE_PROPERTIES_COL_VALUE, name, -1); gtk_tree_store_append(store, &k, &j); gtk_tree_store_set(store, &k, CERTIFICATE_PROPERTIES_COL_NAME, _("Parameters"), CERTIFICATE_PROPERTIES_COL_VALUE, _("(unknown)"), -1); } void __certificate_properties_fill_cert_issuer(GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { int result; size_t buffer_size = 0; gchar * buffer = NULL; gchar * value = NULL; GtkTreeIter j; result = gnutls_x509_crt_get_issuer_dn(*certificate, 0, &buffer_size); if (result != GNUTLS_E_SHORT_MEMORY_BUFFER) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } buffer = g_new (gchar, buffer_size); if (!buffer) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, "Not enough memory!"); return; } result = gnutls_x509_crt_get_issuer_dn(*certificate, buffer, &buffer_size); if (result < 0) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } value = __certificate_properties_dump_RDNSequence(buffer, buffer_size); g_free(buffer); gtk_tree_store_append(store, &j, parent); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Issuer"), CERTIFICATE_PROPERTIES_COL_VALUE, value, -1); g_free(value); } void __certificate_properties_fill_cert_validity (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { time_t not_before; #ifndef WIN32 struct tm not_before_broken_down_time; #else struct tm *not_before_broken_down_time = NULL; #endif gchar not_before_asctime[32]; time_t not_after; #ifndef WIN32 struct tm not_after_broken_down_time; #else struct tm *not_after_broken_down_time = NULL; #endif gchar not_after_asctime[32]; GtkTreeIter j; GtkTreeIter k; #ifndef WIN32 not_before = gnutls_x509_crt_get_activation_time(*certificate); gmtime_r (¬_before, ¬_before_broken_down_time); asctime_r(¬_before_broken_down_time, not_before_asctime); not_before_asctime[strlen(not_before_asctime) - 1] = 0; #else not_before = gnutls_x509_crt_get_activation_time(*certificate); not_before_broken_down_time = gmtime(¬_before); snprintf(not_before_asctime, sizeof(not_before_asctime), "%s", asctime(not_before_broken_down_time)); // not_before_asctime[strlen(not_before_asctime) - 1] = 0; // ??? #endif #ifndef WIN32 not_after = gnutls_x509_crt_get_expiration_time(*certificate); gmtime_r(¬_after, ¬_after_broken_down_time); asctime_r(¬_after_broken_down_time, not_after_asctime); not_after_asctime[strlen(not_after_asctime) - 1] = 0; #else not_after = gnutls_x509_crt_get_expiration_time(*certificate); not_after_broken_down_time = gmtime(¬_after); snprintf(not_after_asctime, sizeof(not_after_asctime), "%s", asctime(not_after_broken_down_time)); // not_after_asctime[strlen(not_after_asctime) - 1] = 0; // ??? #endif gtk_tree_store_append(store, &j, parent); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Validity"), -1); gtk_tree_store_append(store, &k, &j); gtk_tree_store_set(store, &k, CERTIFICATE_PROPERTIES_COL_NAME, _("Not Before"), CERTIFICATE_PROPERTIES_COL_VALUE, not_before_asctime, -1); gtk_tree_store_append(store, &k, &j); gtk_tree_store_set(store, &k, CERTIFICATE_PROPERTIES_COL_NAME, _("Not After"), CERTIFICATE_PROPERTIES_COL_VALUE, not_after_asctime, -1); } void __certificate_properties_fill_cert_subject (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { int result; size_t buffer_size = 0; gchar *buffer = NULL; gchar *value = NULL; GtkTreeIter j; result = gnutls_x509_crt_get_dn(*certificate, 0, &buffer_size); if (result != GNUTLS_E_SHORT_MEMORY_BUFFER) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } buffer = g_new0 (gchar, buffer_size); if (!buffer) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, "Not enough memory!"); return; } result = gnutls_x509_crt_get_dn(*certificate, buffer, &buffer_size); if (result < 0) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } value = __certificate_properties_dump_RDNSequence(buffer, buffer_size); g_free(buffer); gtk_tree_store_append(store, &j, parent); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Subject"), CERTIFICATE_PROPERTIES_COL_VALUE, value, -1); g_free(value); } void __certificate_properties_fill_cert_subjectPublicKeyInfo (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { int result; unsigned int bits = 0; const gchar * name = NULL; GtkTreeIter j; GtkTreeIter k; GtkTreeIter l; gchar *value; GtkTreeIter m; gnutls_datum_t modulus, publicExponent; gnutls_datum_t p, q, g, y; result = gnutls_x509_crt_get_pk_algorithm(*certificate, &bits); name = gnutls_pk_algorithm_get_name(result); gtk_tree_store_append(store, &j, parent); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Subject Public Key Info"), -1); gtk_tree_store_append(store, &k, &j); gtk_tree_store_set(store, &k, CERTIFICATE_PROPERTIES_COL_NAME, _("Algorithm"), -1); gtk_tree_store_append(store, &l, &k); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Algorithm"), CERTIFICATE_PROPERTIES_COL_VALUE, name, -1); switch (result) { case GNUTLS_PK_RSA: gtk_tree_store_append(store, &l, &k); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Parameters"), CERTIFICATE_PROPERTIES_COL_VALUE, _("(unknown)"), -1); gtk_tree_store_append(store, &k, &j); gtk_tree_store_set(store, &k, CERTIFICATE_PROPERTIES_COL_NAME, _("RSA PublicKey"), -1); result = gnutls_x509_crt_get_pk_rsa_raw(*certificate, &modulus, &publicExponent); if (result < 0) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); break; } value = __certificate_properties_dump_raw_data(modulus.data, modulus.size); gnutls_free(modulus.data); gtk_tree_store_append(store, &l, &k); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Modulus"), CERTIFICATE_PROPERTIES_COL_VALUE, value, -1); g_free(value); value = __certificate_properties_dump_raw_data(publicExponent.data, publicExponent.size); gnutls_free(publicExponent.data); gtk_tree_store_append(store, &l, &k); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Public Exponent"), CERTIFICATE_PROPERTIES_COL_VALUE, value, -1); g_free(value); break; case GNUTLS_PK_DSA: result = gnutls_x509_crt_get_pk_dsa_raw(*certificate, &p, &q, &g, &y); if (result < 0) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); break; } gtk_tree_store_append(store, &l, &k); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Parameters"), -1); value = __certificate_properties_dump_raw_data(p.data, p.size); gnutls_free(p.data); gtk_tree_store_append(store, &m, &l); gtk_tree_store_set(store, &m, CERTIFICATE_PROPERTIES_COL_NAME, "p", CERTIFICATE_PROPERTIES_COL_VALUE, value, -1); g_free(value); value = __certificate_properties_dump_raw_data(q.data, q.size); gnutls_free(q.data); gtk_tree_store_append(store, &m, &l); gtk_tree_store_set(store, &m, CERTIFICATE_PROPERTIES_COL_NAME, "p", CERTIFICATE_PROPERTIES_COL_VALUE, value, -1); g_free(value); value = __certificate_properties_dump_raw_data(g.data, g.size); gnutls_free(g.data); gtk_tree_store_append(store, &m, &l); gtk_tree_store_set(store, &m, CERTIFICATE_PROPERTIES_COL_NAME, "g", CERTIFICATE_PROPERTIES_COL_VALUE, value, -1); g_free(value); value = __certificate_properties_dump_raw_data(y.data, y.size); gnutls_free(y.data); gtk_tree_store_append(store, &k, &j); gtk_tree_store_set(store, &k, CERTIFICATE_PROPERTIES_COL_NAME, _("DSA PublicKey"), CERTIFICATE_PROPERTIES_COL_VALUE, value, -1); g_free(value); break; default: gtk_tree_store_append(store, &l, &k); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Parameters"), CERTIFICATE_PROPERTIES_COL_VALUE, _("(unknown)"), -1); gtk_tree_store_append(store, &k, &j); gtk_tree_store_set(store, &k, CERTIFICATE_PROPERTIES_COL_NAME, _("Subject Public Key"), CERTIFICATE_PROPERTIES_COL_VALUE, _("(unknown)"), -1); break; } } void __certificate_properties_fill_cert_issuerUniqueID (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { GtkTreeIter j; gtk_tree_store_append(store, &j, parent); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Issuer Unique ID"), CERTIFICATE_PROPERTIES_COL_VALUE, _("(unknown)"), -1); } void __certificate_properties_fill_cert_subjectUniqueID (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { GtkTreeIter j; gtk_tree_store_append(store, &j, parent); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Subject Unique ID"), CERTIFICATE_PROPERTIES_COL_VALUE, _("(unknown)"), -1); } void __certificate_properties_fill_cert_ext_SubjectKeyIdentifier (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { guint critical; gint result; const gint BUFFER_SIZE_MAX = 256; gchar buffer[BUFFER_SIZE_MAX]; gsize buffer_size = BUFFER_SIZE_MAX; gchar *hex_buffer; GtkTreeIter l; result = gnutls_x509_crt_get_subject_key_id(*certificate, buffer, &buffer_size, &critical); if (result < 0) { fprintf(stderr, "Error: %s\n", gnutls_strerror(result)); return; } hex_buffer = __certificate_properties_dump_raw_data((guchar *) buffer, buffer_size); gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Value"), CERTIFICATE_PROPERTIES_COL_VALUE, hex_buffer, -1); g_free(hex_buffer); } void __certificate_properties_fill_cert_ext_KeyUsage (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { guint critical; guint key_usage; gint result; gchar * buffer = NULL; GtkTreeIter l; result = gnutls_x509_crt_get_key_usage(*certificate, &key_usage, &critical); if (result < 0) { fprintf(stderr, "Error: %s\n", gnutls_strerror(result)); return; } buffer = __certificate_properties_dump_key_usage(key_usage); gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Value"), CERTIFICATE_PROPERTIES_COL_VALUE, buffer, -1); g_free(buffer); } void __certificate_properties_fill_cert_ext_SubjectAltName (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { gint i; for (i = 0; i < 1; i++) { gint result; guint critical; const gint BUFFER_SIZE_MAX = 1024; gchar buffer[BUFFER_SIZE_MAX]; gsize buffer_size = BUFFER_SIZE_MAX; gchar *hex_buffer; GtkTreeIter l; result = gnutls_x509_crt_get_subject_alt_name(*certificate, i, buffer, &buffer_size, &critical); if (result == GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); break; } if (result == GNUTLS_E_SHORT_MEMORY_BUFFER) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); break; } if (result < 0) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); break; } switch (result) { case GNUTLS_SAN_DNSNAME: gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("DNS Name"), CERTIFICATE_PROPERTIES_COL_VALUE, buffer, -1); break; case GNUTLS_SAN_RFC822NAME: gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("RFC822 Name"), CERTIFICATE_PROPERTIES_COL_VALUE, buffer, -1); break; case GNUTLS_SAN_URI: gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("URI"), CERTIFICATE_PROPERTIES_COL_VALUE, buffer, -1); break; case GNUTLS_SAN_IPADDRESS: hex_buffer = __certificate_properties_dump_raw_data ((guchar *) buffer, buffer_size); gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("IP"), CERTIFICATE_PROPERTIES_COL_VALUE, hex_buffer, -1); g_free(hex_buffer); break; case GNUTLS_SAN_DN: hex_buffer = __certificate_properties_dump_RDNSequence (buffer, buffer_size); gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Directory Name"), CERTIFICATE_PROPERTIES_COL_VALUE, hex_buffer, -1); g_free(hex_buffer); break; default: hex_buffer = __certificate_properties_dump_raw_data((guchar *) buffer, buffer_size); gtk_tree_store_append (store, &l, parent); gtk_tree_store_set (store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Value"), CERTIFICATE_PROPERTIES_COL_VALUE, hex_buffer, -1); g_free(hex_buffer); break; } } } void __certificate_properties_fill_cert_ext_BasicConstraints (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { guint critical; gint result; guint ca; gint path_len_constraint; gchar *pathlen_as_string = NULL; GtkTreeIter l; gchar *ca_as_string = NULL; result = gnutls_x509_crt_get_basic_constraints(*certificate, &critical, &ca, &path_len_constraint); if (result < 0) { fprintf(stderr, "Error: %s\n", gnutls_strerror(result)); return; } ca_as_string = ca ? _("TRUE") : _("FALSE"); pathlen_as_string = g_strdup_printf ("%d", path_len_constraint); gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("CA"), CERTIFICATE_PROPERTIES_COL_VALUE, ca_as_string, -1); gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Path Length Constraint"), CERTIFICATE_PROPERTIES_COL_VALUE, pathlen_as_string, -1); g_free (pathlen_as_string); } void __certificate_properties_fill_cert_ext_CRLDistributionPoints (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { gint i; for (i = 0;; i++) { gint result; guint critical; const gint BUFFER_SIZE_MAX = 1024; gchar buffer[BUFFER_SIZE_MAX]; gsize buffer_size = BUFFER_SIZE_MAX; gchar *hex_buffer; GtkTreeIter l; result = gnutls_x509_crt_get_crl_dist_points(*certificate, i, buffer, &buffer_size, 0, &critical); if (result == GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE) break; if (result == GNUTLS_E_SHORT_MEMORY_BUFFER) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); break; } if (result < 0) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); break; } switch (result) { case GNUTLS_SAN_DNSNAME: gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("DNS Name"), CERTIFICATE_PROPERTIES_COL_VALUE, buffer, -1); break; case GNUTLS_SAN_RFC822NAME: gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("RFC822 Name"), CERTIFICATE_PROPERTIES_COL_VALUE, buffer, -1); break; case GNUTLS_SAN_URI: gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("URI"), CERTIFICATE_PROPERTIES_COL_VALUE, buffer, -1); break; case GNUTLS_SAN_IPADDRESS: hex_buffer = __certificate_properties_dump_raw_data ((guchar *) buffer, buffer_size); gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("IP Address"), CERTIFICATE_PROPERTIES_COL_VALUE, hex_buffer, -1); g_free(hex_buffer); break; case GNUTLS_SAN_DN: hex_buffer = __certificate_properties_dump_RDNSequence (buffer, buffer_size); gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Directory Name"), CERTIFICATE_PROPERTIES_COL_VALUE, hex_buffer, -1); g_free(hex_buffer); break; default: hex_buffer = __certificate_properties_dump_raw_data((guchar *) buffer, buffer_size); gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Value"), CERTIFICATE_PROPERTIES_COL_VALUE, hex_buffer, -1); g_free(hex_buffer); break; } } } void __certificate_properties_fill_cert_ext_AuthorityKeyIdentifier (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { gint result; guint critical; const gint BUFFER_SIZE_MAX = 256; gchar buffer[BUFFER_SIZE_MAX]; gsize buffer_size = BUFFER_SIZE_MAX; gchar *hex_buffer = NULL; GtkTreeIter l; result = gnutls_x509_crt_get_authority_key_id(*certificate, buffer, &buffer_size, &critical); if (result < 0) { fprintf(stderr, "Error: %s\n", gnutls_strerror(result)); return; } hex_buffer = __certificate_properties_dump_raw_data((guchar *) buffer, buffer_size); gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Value"), CERTIFICATE_PROPERTIES_COL_VALUE, hex_buffer, -1); g_free(hex_buffer); } void __certificate_properties_fill_cert_ext_ExtKeyUsage (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { gint i; const gint BUFFER_SIZE_MAX = 1024; gchar usage_buffer[BUFFER_SIZE_MAX]; gchar *usage_buffer_iterator = usage_buffer; GtkTreeIter l; for (i = 0;; i++) { gint result; gchar buffer[BUFFER_SIZE_MAX]; gsize buffer_size = BUFFER_SIZE_MAX; const gchar *label = NULL; result = gnutls_x509_crt_get_key_purpose_oid(*certificate, i, buffer, &buffer_size, 0); if (result == GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE) { break; } if (result == GNUTLS_E_SHORT_MEMORY_BUFFER) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } if (result < 0) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } label = __certificate_properties_lookup_oid_label(certificate_properties_oid_label_table, buffer); usage_buffer_iterator += sprintf(usage_buffer_iterator, "%s\n", label); } *(usage_buffer_iterator - 1) = 0; gtk_tree_store_append(store, &l, parent); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Value"), CERTIFICATE_PROPERTIES_COL_VALUE, usage_buffer, -1); } void __certificate_properties_fill_cert_ext (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { gint result; const gint OID_SIZE_MAX = 128; gchar oid[OID_SIZE_MAX]; gsize oid_size = OID_SIZE_MAX; guint critical; guint i; GtkTreeIter j; GtkTreeIter k; GtkTreeIter l; for (i = 0;; i++) { const gchar *label = NULL; const gchar *critical_as_string = NULL; certificate_properties_fill_t function; oid_size = OID_SIZE_MAX; result = gnutls_x509_crt_get_extension_info(*certificate, i, oid, &oid_size, &critical); if (result == GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE) break; if (result < 0) { fprintf(stderr, "Error: %s\n", gnutls_strerror(result)); break; } if (i == 0) { gtk_tree_store_append(store, &j, parent); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Extensions"), -1); } label = __certificate_properties_lookup_oid_label(certificate_properties_oid_label_table, oid); gtk_tree_store_append(store, &k, &j); if (!label) label = oid; gtk_tree_store_set(store, &k, CERTIFICATE_PROPERTIES_COL_NAME, label, -1); critical_as_string = critical ? _("TRUE") : _("FALSE"); gtk_tree_store_append(store, &l, &k); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Critical"), CERTIFICATE_PROPERTIES_COL_VALUE, critical_as_string, -1); function = __certificate_properties_lookup_oid_function(certificate_properties_oid_function_table, oid); if (function) function(store, &k, certificate); else { const gint BUFFER_SIZE_MAX = 1024; gchar buffer[BUFFER_SIZE_MAX]; gsize buffer_size = BUFFER_SIZE_MAX; gchar *hex_buffer = NULL; gnutls_x509_crt_get_extension_data(*certificate, i, buffer, &buffer_size); hex_buffer = __certificate_properties_dump_raw_data((unsigned char *) buffer, buffer_size); gtk_tree_store_append(store, &l, &k); gtk_tree_store_set(store, &l, CERTIFICATE_PROPERTIES_COL_NAME, _("Value"), CERTIFICATE_PROPERTIES_COL_VALUE, hex_buffer, -1); g_free(hex_buffer); } } } void __certificate_properties_fill_cert (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { GtkTreeIter i; gtk_tree_store_append(store, &i, parent); gtk_tree_store_set(store, &i, CERTIFICATE_PROPERTIES_COL_NAME, _("Certificate"), -1); __certificate_properties_fill_cert_version(store, &i, certificate); __certificate_properties_fill_cert_serialNumber(store, &i, certificate); __certificate_properties_fill_cert_signature(store, &i, certificate); __certificate_properties_fill_cert_issuer(store, &i, certificate); __certificate_properties_fill_cert_validity(store, &i, certificate); __certificate_properties_fill_cert_subject(store, &i, certificate); __certificate_properties_fill_cert_subjectPublicKeyInfo(store, &i, certificate); __certificate_properties_fill_cert_issuerUniqueID(store, &i, certificate); __certificate_properties_fill_cert_subjectUniqueID(store, &i, certificate); __certificate_properties_fill_cert_ext(store, &i, certificate); } void __certificate_properties_fill_signatureAlgorithm (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { GtkTreeIter i; gint result; const gchar *name = NULL; GtkTreeIter j; gtk_tree_store_append(store, &i, parent); result = gnutls_x509_crt_get_signature_algorithm(*certificate); name = gnutls_sign_algorithm_get_name(result); gtk_tree_store_set(store, &i, CERTIFICATE_PROPERTIES_COL_NAME, _("Signature Algorithm"), -1); gtk_tree_store_append(store, &j, &i); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Algorithm"), CERTIFICATE_PROPERTIES_COL_VALUE, name, -1); gtk_tree_store_append(store, &j, &i); gtk_tree_store_set(store, &j, CERTIFICATE_PROPERTIES_COL_NAME, _("Parameters"), CERTIFICATE_PROPERTIES_COL_VALUE, _("(unknown)"), -1); } void __certificate_properties_fill_signatureValue (GtkTreeStore *store, GtkTreeIter *parent, gnutls_x509_crt_t *certificate) { GtkTreeIter i; gint result; gchar *buffer = NULL; gsize buffer_size = 0; gchar *hex_buffer = NULL; gtk_tree_store_append(store, &i, parent); result = gnutls_x509_crt_get_signature(*certificate, 0, &buffer_size); if (result != GNUTLS_E_SHORT_MEMORY_BUFFER) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } buffer = g_new0 (gchar, buffer_size); result = gnutls_x509_crt_get_signature(*certificate, buffer, &buffer_size); if (result < 0) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } hex_buffer = __certificate_properties_dump_raw_data((guchar *) buffer, buffer_size); gtk_tree_store_set(store, &i, CERTIFICATE_PROPERTIES_COL_NAME, _("Signature"), CERTIFICATE_PROPERTIES_COL_VALUE, hex_buffer, -1); g_free(hex_buffer); } void __certificate_properties_fill_certificate(GtkTreeStore *store, gnutls_x509_crt_t *certificate) { __certificate_properties_fill_cert(store, 0, certificate); __certificate_properties_fill_signatureAlgorithm(store, 0, certificate); __certificate_properties_fill_signatureValue(store, 0, certificate); } void __certificate_details_populate(const char *certificate_pem) { gint result; gnutls_datum_t pem_datum; gnutls_x509_crt_t certificate; GtkTreeStore *store = NULL; GObject *view = NULL; GtkCellRenderer *renderer = NULL; pem_datum.data = (guchar *) certificate_pem; pem_datum.size = strlen(certificate_pem); result = gnutls_x509_crt_init(&certificate); if (result < 0) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } gnutls_x509_crt_import(certificate, &pem_datum, GNUTLS_X509_FMT_PEM); if (result < 0) { fprintf(stderr, "Error: (%s,%d): %s\n", __FILE__, __LINE__, gnutls_strerror(result)); return; } store = gtk_tree_store_new(CERTIFICATE_PROPERTIES_N_COLUMNS, G_TYPE_STRING, G_TYPE_STRING); __certificate_properties_fill_certificate(store, &certificate); gnutls_x509_crt_deinit(certificate); view = gtk_builder_get_object(certificate_properties_window_gtkb, "certTreeView"); renderer = gtk_cell_renderer_text_new(); g_object_set(renderer, "yalign", 0.0, NULL); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(view), -1, _("Name"), renderer, "text", CERTIFICATE_PROPERTIES_COL_NAME, NULL); renderer = gtk_cell_renderer_text_new(); g_object_set(renderer, "family", "Monospace", "family-set", 1, NULL); gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(view), -1, _("Value"), renderer, "text", CERTIFICATE_PROPERTIES_COL_VALUE, NULL); gtk_tree_view_set_model(GTK_TREE_VIEW(view), GTK_TREE_MODEL(store)); g_object_unref(store); } #if 0 //Function included for generating extra gettext strings. Do not remove. void useless_function () { printf ("%s",_("TLS WWW Server")); printf ("%s",_("TLS WWW Client")); printf ("%s",_("Code signing")); printf ("%s",_("Email protection")); printf ("%s",_("Time stamping")); printf ("%s",_("OCSP signing")); printf ("%s",_("Any purpose")); printf ("%s",_("Subject Directory Attributes")); printf ("%s",_("Subject Key Identifier")); printf ("%s",_("Key Usage")); printf ("%s",_("Private Key Usage Period")); printf ("%s",_("Subject Alternative Name")); printf ("%s",_("Basic Constraints")); printf ("%s",_("Name Constraints")); printf ("%s",_("CRL Distribution Points")); printf ("%s",_("Certificate Policies")); printf ("%s",_("Policy Mappings")); printf ("%s",_("Authority Key Identifier")); printf ("%s",_("Policy Constraints")); printf ("%s",_("Extended Key Usage")); printf ("%s",_("Delta CRL Distribution Point")); printf ("%s",_("Inhibit Any-Policy")); } #endif gnomint-1.3.0/src/pkey_manage.h0000664000175000017500000000405412672052326013341 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _PKEY_MANAGE_H_ #define _PKEY_MANAGE_H_ #include /* FUNCTIONS RELATED WITH PRIVATE KEY BEING SAVED IN EXTERNAL FILES */ typedef struct { gchar *pkey_data; gboolean is_in_db; gboolean is_ciphered_with_db_pwd; gchar *external_file; } PkeyManageData; PkeyManageData * pkey_manage_get_certificate_pkey (guint64 id); PkeyManageData * pkey_manage_get_csr_pkey (guint64 id); void pkey_manage_data_free (PkeyManageData *pkeydata); /* PRIVATE KEY PASSWORD PROTECTION RELATED FUNCTIONS */ void pkey_manage_crypt_auto (gchar *password, gchar **pem_private_key, const gchar *pem_root_certificate); gchar * pkey_manage_ask_password (void); gboolean pkey_manage_check_password (const gchar *checking_password, const gchar *hashed_password); gchar * pkey_manage_crypt (const gchar *pem_private_key, const gchar *dn); gchar * pkey_manage_uncrypt (PkeyManageData *pkey, const gchar *dn); gchar * pkey_manage_crypt_w_pwd (const gchar *pem_private_key, const gchar *dn, const gchar *pwd); gchar * pkey_manage_uncrypt_w_pwd (PkeyManageData *pkey, const gchar *dn, const gchar *pwd); gchar * pkey_manage_encrypt_password (const gchar *pwd); #endif gnomint-1.3.0/src/csr_creation.c0000664000175000017500000001256112672052326013531 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include "csr_creation.h" #include "ca_file.h" #include "tls.h" #include "pkey_manage.h" #include #include #include gint csr_creation_is_launched = -1; static GMutex csr_creation_thread_status_mutex = G_STATIC_MUTEX_INIT; gint csr_creation_thread_status = 0; gchar * csr_creation_message = ""; gchar * csr_creation_database_save (TlsCreationData * creation_data, gchar * private_key, gchar * root_certificate); gpointer csr_creation_thread (gpointer data) { TlsCreationData *creation_data = (TlsCreationData *) data; gchar * private_key = NULL; gchar * pkey = NULL; gnutls_x509_privkey_t * csr_key = NULL; gchar * certificate_sign_request = NULL; gchar * error_message = NULL; TlsCsr *tlscsr; switch (creation_data->key_type){ case 0: /* RSA */ g_mutex_lock (&csr_creation_thread_status_mutex); csr_creation_message = _("Generating new RSA key pair"); g_mutex_unlock (&csr_creation_thread_status_mutex); error_message = tls_generate_rsa_keys (creation_data, &private_key, &csr_key); if (error_message) { printf ("%s\n\n", error_message); g_mutex_lock (&csr_creation_thread_status_mutex); csr_creation_message = g_strdup_printf ("%s:\n%s",_("Key generation failed"), error_message); csr_creation_thread_status = -1; g_mutex_unlock (&csr_creation_thread_status_mutex); return NULL; // return error_message; } break; case 1: /* DSA */ g_mutex_lock (&csr_creation_thread_status_mutex); csr_creation_message = _("Generating new DSA key pair"); g_mutex_unlock (&csr_creation_thread_status_mutex); error_message = tls_generate_dsa_keys (creation_data, &private_key, &csr_key); if (error_message) { printf ("%s\n\n", error_message); g_mutex_lock (&csr_creation_thread_status_mutex); csr_creation_message = g_strdup_printf ("%s:\n%s",_("Key generation failed"), error_message); csr_creation_thread_status = -1; g_mutex_unlock (&csr_creation_thread_status_mutex); //return error_message; return NULL; } break; } g_mutex_lock (&csr_creation_thread_status_mutex); csr_creation_message = _("Generating CSR"); g_mutex_unlock (&csr_creation_thread_status_mutex); error_message = tls_generate_csr (creation_data, csr_key, &certificate_sign_request); if (error_message) { printf ("%s\n\n", error_message); g_mutex_lock (&csr_creation_thread_status_mutex); csr_creation_message = g_strdup_printf ("%s:\n%s",_("CSR generation failed"), error_message); csr_creation_thread_status = -1; g_mutex_unlock (&csr_creation_thread_status_mutex); g_free (error_message); //return error_message; return NULL; } g_mutex_lock (&csr_creation_thread_status_mutex); csr_creation_message = _("Saving CSR in database"); g_mutex_unlock (&csr_creation_thread_status_mutex); tlscsr = tls_parse_csr_pem (certificate_sign_request); pkey = pkey_manage_crypt_w_pwd (private_key, tlscsr->dn, creation_data->password); tls_csr_free (tlscsr); if (! pkey) return NULL; g_free (private_key); error_message = csr_creation_database_save (creation_data, pkey, certificate_sign_request); if (error_message) { g_mutex_lock (&csr_creation_thread_status_mutex); csr_creation_message = g_strdup_printf ("%s:\n%s",_("CSR couldn't be saved"), error_message); csr_creation_thread_status = -1; g_mutex_unlock (&csr_creation_thread_status_mutex); g_free (error_message); return NULL; } g_mutex_lock (&csr_creation_thread_status_mutex); csr_creation_message = _("CSR generated successfully"); csr_creation_thread_status = 1; g_mutex_unlock (&csr_creation_thread_status_mutex); if (csr_key) { gnutls_x509_privkey_deinit ((* csr_key)); g_free (csr_key); } return NULL; } GThread * csr_creation_launch_thread (TlsCreationData *creation_data) { return g_thread_new("csr_creation", csr_creation_thread, creation_data); } void csr_creation_lock_status_mutex () { g_mutex_lock(&csr_creation_thread_status_mutex); } void csr_creation_unlock_status_mutex () { g_mutex_unlock (&csr_creation_thread_status_mutex); } gint csr_creation_get_thread_status () { return csr_creation_thread_status; } gchar * csr_creation_get_thread_message() { return csr_creation_message; } gchar * csr_creation_database_save (TlsCreationData * creation_data, gchar * private_key, gchar * certificate_sign_request) { return ca_file_insert_csr (private_key, certificate_sign_request, creation_data->parent_ca_id_str, NULL); } gnomint-1.3.0/src/csr_creation.h0000664000175000017500000000245412672052326013536 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _CSR_CREATION_H_ #define _CSR_CREATION_H_ #include #include #include "tls.h" GThread * csr_creation_launch_thread (TlsCreationData *creation_data); void csr_creation_lock_status_mutex (void); void csr_creation_unlock_status_mutex (void); gpointer csr_creation_thread (gpointer data); gint csr_creation_get_thread_status (void); gchar * csr_creation_get_thread_message(void); #endif gnomint-1.3.0/src/ca-cli.c0000664000175000017500000002704212672052326012206 00000000000000 // gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include #include #include #include "ca-cli.h" #include "ca_file.h" #include "ca-cli-callbacks.h" CaCommand ca_commands[] = { {"newdb", 1, 1, N_("newdb "), N_("Close current file and create a new database with given filename"), ca_cli_callback_newdb}, // 0 {"opendb", 1, 1, N_("opendb "), N_("Close current file and open the file with given filename"), ca_cli_callback_opendb}, // 1 {"savedbas", 1, 1, N_("savedbas "), N_("Save the current file with a different filename"), ca_cli_callback_savedbas}, // 2 {"status", 0, 0, "status", N_("Get current status (opened file, no. of certificates, etc...)"), ca_cli_callback_status}, // 3 {"listcert", 0, 1, "listcert [--see-revoked]", N_("List the certificates in database. With option --see-revoked, " "lists also the revoked ones"), ca_cli_callback_listcert}, // 4 {"listcsr", 0, 0, "listcsr", N_("List the CSRs in database"), ca_cli_callback_listcsr}, // 5 {"addcsr", 0, 1, N_("addcsr [ca-id-for-inherit-fields]"), N_("Start a new CSR creation process"), ca_cli_callback_addcsr}, // 6 {"addca", 0, 0, "addca", N_("Start a new self-signed CA creation process"), ca_cli_callback_addca}, //7 {"extractcertpkey", 2, 2, N_("extractcertpkey "), N_("Extract the private key of the certificate with the given " "internal id and saves it into the given file"), ca_cli_callback_extractcertpkey}, // 8 {"extractcsrpkey", 2, 2, N_("extractcsrpkey "), N_("Extract the private key of the CSR with the given " "internal id and saves it into the given file"), ca_cli_callback_extractcsrpkey}, // 9 {"revoke", 1, 1, N_("revoke "), N_("Revoke the certificate with the given internal ID"), ca_cli_callback_revoke}, // 10 {"sign", 2, 2, N_("sign "), N_("Generate a certificate signing the given CSR with the given CA"), ca_cli_callback_sign}, // 11 {"delete", 1, 1, N_("delete "), N_("Delete the given CSR from the database"), ca_cli_callback_delete}, // 12 {"crlgen", 2, 2, N_("crlgen "), N_("Generate a new CRL for the given CA, saving it into the file "), ca_cli_callback_crlgen}, // 13 {"dhgen", 2, 2, N_("dhgen "), N_("Generate a new DH-parameter set, saving it into the file "), ca_cli_callback_dhgen}, // 14 {"changepassword", 0, 0, "changepassword", N_("Change password for the current database"), ca_cli_callback_changepassword}, // 15 {"importfile", 1, 1, N_("importfile "), N_("Import the file with the given name "), ca_cli_callback_importfile}, // 16 {"importdir", 1, 1, N_("importdir "), N_("Import the given directory, as a OpenSSL-CA directory"), ca_cli_callback_importdir}, // 17 {"showcert", 1, 1, N_("showcert "), N_("Show properties of the given certificate"), ca_cli_callback_showcert}, // 18 {"showcsr", 1, 1, N_("showcsr "), N_("Show properties of the given CSR"), ca_cli_callback_showcsr}, // 19 {"showpolicy", 1, 1, N_("showpolicy "), N_("Show CA policy"), ca_cli_callback_showpolicy}, // 20 {"setpolicy", 3, 3, N_("setpolicy "), N_("Change the given CA policy"), ca_cli_callback_setpolicy}, // 21 {"showpreferences", 0, 0, "showpreferences", N_("Show program preferences"), ca_cli_callback_showpreferences}, // 22 {"setpreference", 2, 2, N_("setpreference "), N_("Set the given program preference"), ca_cli_callback_setpreference}, // 23 {"about", 0, 0, "about", N_("Show about message"), ca_cli_callback_about}, // 24 {"warranty", 0, 0, "warranty", N_("Show warranty information"), ca_cli_callback_warranty}, // 25 {"distribution", 0, 0, "distribution", N_("Show distribution information"), ca_cli_callback_distribution}, // 26 {"version", 0, 0, "version", N_("Show version information"), ca_cli_callback_version}, // 27 {"help", 0, 0, "help", N_("Show (this) help message"), ca_cli_callback_help}, // 28 {"quit", 0, 0, "quit", N_("Close database and exit program"), ca_cli_callback_exit}, // 29 {"exit", 0, 0, "exit", N_("Close database and exit program"), ca_cli_callback_exit}, // 30 {"bye", 0, 0, "bye", N_("Close database and exit program"), ca_cli_callback_exit} // 31 }; #define CA_COMMAND_NUMBER 32 GHashTable *ca_command_table = NULL; gboolean ca_refresh_model (void) { return TRUE; } gboolean ca_open (gchar *filename, gboolean create) { gboolean result; fprintf (stderr, _("Opening database %s..."), filename); result = ca_file_open (filename, create); if (result) fprintf (stderr, _(" OK.\n")); else fprintf (stderr, _(" Error.\n")); return result; } void __ca_add_commands (GHashTable *table) { gint i; for (i=0; i < CA_COMMAND_NUMBER; i++) { g_hash_table_insert (table, (gchar *) ca_commands[i].command, &(ca_commands[i])); } } void ca_command_line() { const gchar *prompt = "gnoMint > "; gchar *line = NULL; ca_command_table = g_hash_table_new (g_str_hash, g_str_equal); __ca_add_commands (ca_command_table); printf (_("\n\n%s version %s\n%s\n\n"), PACKAGE_NAME, PACKAGE_VERSION, PACKAGE_COPYRIGHT); printf (_("This program comes with ABSOLUTELY NO WARRANTY;\nfor details type 'warranty'.\n")); printf (_("This is free software, and you are welcome to redistribute it\nunder certain conditions; type 'distribution' for details.\n\n")); while (TRUE) { // Wait until read a command line = readline (prompt); // Check for EOF if (line == NULL) { printf ("\n\n"); return; } // Check for empty commands if (strlen (line) != 0) { gint i,j,k; gint argc = 0; gchar *oldaux = NULL; gchar **aux = NULL; GSList *arglist = NULL; gchar **argv = NULL; add_history (line); // Parse line aux = g_strsplit (line, "\"", -1 ); // Detect \" combinations, and discard them as a quote for (i = 0; i < (g_strv_length(aux) - 1); i++) { if (aux[i][strlen(aux[i]) - 1] == '\\') { oldaux = aux[i]; aux[i][strlen(aux[i]) - 1] = '\0'; aux[i] = g_strdup_printf ("%s\"%s", aux[i], aux[i+1]); g_free (oldaux); for (j = i+1; j < g_strv_length(aux); j++) { aux[j] = aux[j+1]; } } } if (g_strv_length(aux) % 2 == 0) { // Unpaired quotes fprintf (stderr, _("Unpaired quotes\n")); } else { // For each tuple not in quotes, detect spaces gchar **aux2[g_strv_length(aux)]; for (i=0; i < g_strv_length(aux); i++) { // Only in not-quoted terms (that is: even terms) if (i % 2 == 0) { aux2[i] = g_strsplit (aux[i], " ", -1); if (*aux2[i]) { // Detect "\ " combinations, and discard them as a quote for (j = 0; j < (g_strv_length(aux2[i]) - 1); j++) { if (aux2[i][j] && aux2[i][j][strlen(aux2[i][j]) - 1] == '\\') { oldaux = aux2[i][j]; aux2[i][j][strlen(aux2[i][j]) - 1] = '\0'; aux2[i][j] = g_strdup_printf ("%s %s", aux2[i][j], aux2[i][j+1]); g_free (oldaux); for (k = j+1; k < g_strv_length(aux2[i]); k++) { aux2[i][k] = aux2[i][k+1]; } } } // If this is a post-quote term, and begins with an empty element if (aux2[i][0][0]=='\0' && i > 0) { argc++; arglist = g_slist_append (arglist, g_strdup (aux[i-1])); } for (j=0; j < g_strv_length(aux2[i]); j++) { if (j < g_strv_length(aux2[i]) - 1 || i == g_strv_length(aux) - 1) { if (strlen(aux2[i][j])) { argc++; if (j==0 && i > 0) { arglist = g_slist_append (arglist, g_strdup_printf ("%s%s",aux[i-1],aux2[i][j])); } else { arglist = g_slist_append (arglist, g_strdup (aux2[i][j])); } } } } } else { if (i > 0) { argc++; arglist = g_slist_append (arglist, g_strdup (aux[i-1])); } } } else { if (*aux2[i-1]) { oldaux = aux[i]; aux[i] = g_strdup_printf("%s%s", aux2[i-1][g_strv_length(aux2[i-1]) - 1], aux[i]); g_free (oldaux); } } } for (i=0; i < g_strv_length(aux); i=i+2) g_strfreev (aux2[i]); } g_strfreev (aux); // fprintf (stderr, "Argc: %d\n", argc); argv = g_new (gchar*, argc + 1); argv[argc] = NULL; for (i=0; i < argc; i++) { argv[i] = (gchar *) g_slist_nth_data (arglist, i); // fprintf (stderr, "%d: «%s»\n", i, (gchar *) g_slist_nth_data (arglist, i)); } g_slist_free (arglist); // If the given command is defined if (argc > 0) { CaCommand *command_entry = ((CaCommand *) g_hash_table_lookup (ca_command_table, argv[0])); if (!command_entry) { fprintf (stderr, _("Invalid command. Try 'help' for getting a list of recognized commands.\n")); } else { // Check for parameter number if (argc - 1 < command_entry->mandatory_params || argc - 1 > command_entry->optional_params) { fprintf (stderr, _("Incorrect number of parameters.\n")); fprintf (stderr, _("Syntax: %s\n"), _(command_entry->syntax)); } else { // Call it command_entry->callback (argc, argv); } } } if (argv) { for (i=0; i < argc; i++) g_free (argv[i]); } } free (line); } } gnomint-1.3.0/src/tls.h0000664000175000017500000001110412672057730011661 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _TLS_H_ #define _TLS_H_ #include "uint160.h" #include #include #include #include #define TLS_INVALID_PASSWORD GNUTLS_E_DECRYPTION_FAILED #define TLS_NON_MATCHING_PRIVATE_KEY -2000 typedef struct { gchar * country; gchar * state; gchar * city; gchar * org; gchar * ou; gchar * cn; gchar * emailAddress; gint key_type; gint key_bitlength; gint key_months_before_expiration; time_t activation; time_t expiration; gchar * crl_distribution_point; gchar * password; gchar * parent_ca_id_str; } TlsCreationData; typedef struct { gint key_months_before_expiration; time_t activation; time_t expiration; UInt160 serial; gboolean ca; gboolean crl_signing; gboolean digital_signature; gboolean data_encipherment; gboolean key_encipherment; gboolean non_repudiation; gboolean key_agreement; gboolean email_protection; gboolean code_signing; gboolean web_client; gboolean web_server; gboolean time_stamping; gboolean ocsp_signing; gboolean any_purpose; gchar * crl_distribution_point; gchar * cadb_password; } TlsCertCreationData; typedef struct __TlsCert { UInt160 serial_number; gchar * cn; gchar * o; gchar * ou; gchar * c; gchar * st; gchar * l; gchar * dn; gchar * i_cn; gchar * i_o; gchar * i_ou; gchar * i_c; gchar * i_st; gchar * i_l; gchar * i_dn; gchar * sha1; gchar * md5; gchar * sha256; gchar * sha512; gchar * key_id; gchar * subject_key_id; gchar * issuer_key_id; gchar * crl_distribution_point; GList * uses; time_t expiration_time; time_t activation_time; } TlsCert; typedef struct __TlsCsr { gchar * cn; gchar * o; gchar * ou; gchar * c; gchar * st; gchar * l; gchar * dn; gchar * key_id; } TlsCsr; void tls_init (void); gchar * tls_generate_rsa_keys (TlsCreationData *creation_data, gchar ** private_key, gnutls_x509_privkey_t **key); gchar * tls_generate_dsa_keys (TlsCreationData *creation_data, gchar ** private_key, gnutls_x509_privkey_t **key); gchar * tls_generate_pkcs8_encrypted_private_key (gchar *private_key, gchar *passphrase); gchar * tls_load_pkcs8_private_key (gchar *pem, gchar *passphrase, const gchar * key_id, gint *tls_error); gnutls_datum_t * tls_generate_pkcs12 (gchar *certificate, gchar *private_key, gchar *passphrase); gchar * tls_generate_self_signed_certificate (TlsCreationData * creation_data, gnutls_x509_privkey_t *key, gchar ** certificate); gchar * tls_generate_csr (TlsCreationData * creation_data, gnutls_x509_privkey_t *key, gchar ** csr); gchar * tls_generate_certificate (TlsCertCreationData * creation_data, gchar *csr_pem, gchar *ca_cert_pem, gchar *ca_priv_key_pem, gchar **certificate); TlsCert * tls_parse_cert_pem (const char * pem_certificate); gboolean tls_is_ca_pem (const char * pem_certificate); void tls_cert_free (TlsCert *); TlsCsr * tls_parse_csr_pem (const char * pem_csr); void tls_csr_free (TlsCsr *); void tls_creation_data_free (TlsCreationData *cd); gchar * tls_generate_crl (GList * revoked_certs, guchar *ca_pem, guchar *ca_private_key, gint crl_version, time_t current_timestamp, time_t next_crl_timestamp); gchar * tls_generate_dh_params (guint bits); gboolean tls_cert_check_issuer (const gchar *cert_pem, const gchar *ca_pem); gchar * tls_get_private_key_id (const gchar *privkey_pem); gchar * tls_get_public_key_id (const gchar *certificate_pem); #ifdef ADVANCED_GNUTLS gchar * tls_get_csr_public_key_id (const gchar *csr_pem); #endif #endif gnomint-1.3.0/src/gnomint-cli.c0000664000175000017500000000430712672052326013275 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include "tls.h" #include "ca_file.h" #include "ca-cli.h" #include "preferences.h" gchar * gnomint_current_opened_file = NULL; int main (int argc, char **argv) { gchar *defaultfile = NULL; GOptionContext *ctx; GError *err = NULL; GOptionEntry entries[] = { { NULL } }; #ifdef ENABLE_NLS #include setlocale (LC_ALL, ""); bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); #endif g_set_application_name (PACKAGE); g_set_prgname (PACKAGE); tls_init (); preferences_init (argc, argv); ctx = g_option_context_new (_("- A Certification Authority manager")); g_option_context_add_main_entries (ctx, entries, GETTEXT_PACKAGE); if (!g_option_context_parse (ctx, &argc, &argv, &err)) { g_print (_("Failed to initialize: %s\n"), err->message); g_error_free (err); return 1; } if (argc >= 2 && ca_open (g_strdup(argv[1]), TRUE)) { } else { /* No arguments, or failure when opening file */ defaultfile = g_build_filename (g_get_home_dir(), ".gnomint", "default.gnomint", NULL); ca_open (defaultfile, TRUE); } ca_command_line (); return 0; } gnomint-1.3.0/src/ca_creation.h0000664000175000017500000000247312672052326013333 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _CA_CREATION_H_ #define _CA_CREATION_H_ #include #include #include "uint160.h" #include "tls.h" GThread * ca_creation_launch_thread (TlsCreationData *creation_data); void ca_creation_lock_status_mutex (void); void ca_creation_unlock_status_mutex (void); gint ca_creation_get_thread_status (void); gchar * ca_creation_get_thread_message(void); gpointer ca_creation_thread (gpointer data); #endif gnomint-1.3.0/src/certificate_properties.h0000664000175000017500000000216612672052326015621 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _CERTIFICATE_PROPERTIES_H_ #define _CERTIFICATE_PROPERTIES_H_ void certificate_properties_display (guint64, const char *, gboolean, gboolean); void certificate_properties_close_clicked (const char *certificate_pem); #endif gnomint-1.3.0/src/new_req_window.h0000664000175000017500000000356412672052326014115 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _NEW_REQ_WINDOW_H_ #define _NEW_REQ_WINDOW_H_ #ifndef GNOMINTCLI void new_req_window_display (void); void new_req_inherit_fields_toggled (GtkToggleButton *button, gpointer user_data); void new_req_tab_activate (int tab_number); void on_new_req_cn_entry_changed (GtkEditable *editable, gpointer user_data); void on_new_req_next1_clicked (GtkButton *button, gpointer user_data); void on_new_req_previous2_clicked (GtkButton *widget, gpointer user_data); void on_new_req_next2_clicked (GtkButton *widget, gpointer user_data); void on_new_req_previous3_clicked (GtkButton *widget, gpointer user_data); void on_new_req_cancel_clicked (GtkButton *widget, gpointer user_data); void on_new_req_commit_clicked (GtkButton *widg, gpointer user_data); #endif #endif gnomint-1.3.0/src/import.h0000664000175000017500000000404012672052326012366 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _IMPORT_H_ #define _IMPORT_H_ #include #include // All these functions return 0 if the file is not recognized as the given format // 1 if the file is correctly recognized and imported // <0 if the file is recognized, but it is not imported gint import_csr (guchar *file_contents, gsize file_contents_size, gchar **csr_dn, guint64 *id); gint import_certlist (guchar *file_contents, gsize file_contents_size, gchar **cert_dn, guint64 *id); gint import_pkey_wo_passwd (guchar *file_contents, gsize file_contents_size); gint import_crl (guchar *file_contents, gsize file_contents_size); /* PKCS#7 importing was removed in libgnutls 2.6.0 */ /* gint import_pkcs7 (guchar *file_contents, gsize file_contents_size); */ gint import_pkcs8 (guchar *file_contents, gsize file_contents_size); gint import_pkcs12 (guchar *file_contents, gsize file_contents_size); gint import_openssl_private_key (const gchar *filename, gchar **last_password, gchar *file_description); gboolean import_single_file (gchar *filename, gchar **dn, guint64 *id); gchar * import_whole_dir (gchar *dirname); #endif gnomint-1.3.0/src/ca-cli-callbacks.h0000664000175000017500000000474712672052326014137 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA int ca_cli_callback_newdb (int argc, char **argv); int ca_cli_callback_opendb (int argc, char **argv); int ca_cli_callback_savedbas (int argc, char **argv); int ca_cli_callback_status (int argc, char **argv); int ca_cli_callback_listcert (int argc, char **argv); int ca_cli_callback_listcsr (int argc, char **argv); int ca_cli_callback_addcsr (int argc, char **argv); int ca_cli_callback_addca (int argc, char **argv); int ca_cli_callback_extractcertpkey (int argc, char **argv); int ca_cli_callback_extractcsrpkey (int argc, char **argv); int ca_cli_callback_revoke (int argc, char **argv); int ca_cli_callback_sign (int argc, char **argv); int ca_cli_callback_delete (int argc, char **argv); int ca_cli_callback_crlgen (int argc, char **argv); int ca_cli_callback_dhgen (int argc, char **argv); int ca_cli_callback_changepassword (int argc, char **argv); int ca_cli_callback_importfile (int argc, char **argv); int ca_cli_callback_importdir (int argc, char **argv); int ca_cli_callback_showcert (int argc, char **argv); int ca_cli_callback_showcsr (int argc, char **argv); int ca_cli_callback_showpolicy (int argc, char **argv); int ca_cli_callback_setpolicy (int argc, char **argv); int ca_cli_callback_showpreferences (int argc, char **argv); int ca_cli_callback_setpreference (int argc, char **argv); int ca_cli_callback_about (int argc, char **argv); int ca_cli_callback_warranty (int argc, char **argv); int ca_cli_callback_distribution (int argc, char **argv); int ca_cli_callback_version (int argc, char **argv); int ca_cli_callback_help (int argc, char **argv); int ca_cli_callback_exit (int argc, char **argv); gnomint-1.3.0/src/uint160.h0000664000175000017500000000354512672052326012273 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _UINT160_H_ #define _UINT160_H_ #include typedef struct _UInt160 { guint64 value0; guint64 value1; guint32 value2; } UInt160; UInt160 * uint160_new(void); void uint160_assign (UInt160 *var, guint64 new_value); gboolean uint160_assign_hexstr (UInt160 *var, const gchar *new_value); void uint160_add (UInt160 *var, guint64 new_value); void uint160_inc (UInt160 *var); void uint160_dec (UInt160 *var); void uint160_shift (UInt160 *var, guint positions); gboolean uint160_write (const UInt160 *var, guchar *buffer, gsize * max_size); gboolean uint160_read (UInt160 *var, guchar *buffer, gsize size); gboolean uint160_write_escaped (const UInt160 *var, gchar *buffer, gsize * max_size); gboolean uint160_read_escaped (UInt160 *var, gchar *buffer, gsize size); gboolean uint160_read_escaped_old_format (UInt160 *var, gchar *buffer, gsize size); gchar * uint160_strdup_printf (const UInt160 *var); void uint160_free (UInt160 *var); #endif gnomint-1.3.0/src/ca.c0000664000175000017500000020634712672054230011444 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef GNOMINTCLI #include #include #include #include #endif #include #include #include "ca.h" #include "ca_file.h" #include "certificate_properties.h" #include "crl.h" #include "csr_properties.h" #include "dialog.h" #include "export.h" #include "new_ca_window.h" #include "new_req_window.h" #include "new_cert.h" #include "preferences-gui.h" #include "preferences-window.h" #include "import.h" #ifndef GNOMINTCLI #define GNOMINT_MIME_TYPE "application/x-gnomint" enum {CA_MODEL_COLUMN_ID=0, CA_MODEL_COLUMN_IS_CA=1, CA_MODEL_COLUMN_SERIAL=2, CA_MODEL_COLUMN_SUBJECT=3, CA_MODEL_COLUMN_ACTIVATION=4, CA_MODEL_COLUMN_EXPIRATION=5, CA_MODEL_COLUMN_REVOCATION=6, CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB=7, CA_MODEL_COLUMN_PEM=8, CA_MODEL_COLUMN_DN=9, CA_MODEL_COLUMN_PARENT_DN=10, CA_MODEL_COLUMN_PARENT_ROUTE=11, CA_MODEL_COLUMN_ITEM_TYPE=12, CA_MODEL_COLUMN_PARENT_ID=13, /* Only for CSRs */ CA_MODEL_COLUMN_NUMBER=14} CaModelColumns; enum {CSR_MODEL_COLUMN_ID=0, CSR_MODEL_COLUMN_SUBJECT=1, CSR_MODEL_COLUMN_PRIVATE_KEY_IN_DB=2, CSR_MODEL_COLUMN_PEM=3, CSR_MODEL_COLUMN_PARENT_ID=4, CSR_MODEL_COLUMN_NUMBER=5} CsrModelColumns; extern GtkBuilder * main_window_gtkb; extern GtkBuilder * cert_popup_menu_gtkb; extern GtkBuilder * csr_popup_menu_gtkb; static GtkTreeStore * ca_model = NULL; static gboolean cert_title_inserted = FALSE; static GtkTreeIter * cert_parent_iter = NULL; static GtkTreeIter * last_parent_iter = NULL; static GtkTreeIter * last_cert_iter = NULL; static gboolean csr_title_inserted=FALSE; static GtkTreeIter * csr_parent_iter = NULL; static gboolean view_csr = TRUE; static gboolean view_rcrt = TRUE; int __ca_refresh_model_add_certificate (void *pArg, int argc, char **argv, char **columnNames); int __ca_refresh_model_add_csr (void *pArg, int argc, char **argv, char **columnNames); void __ca_tree_view_date_datafunc (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data); void __ca_tree_view_is_ca_datafunc (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data); void __ca_tree_view_private_key_in_db_datafunc (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data); void __ca_certificate_activated (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void __ca_csr_activated (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data); void __ca_activate_certificate_selection (GtkTreeIter *iter); void __ca_activate_csr_selection (GtkTreeIter *iter); void __ca_deactivate_actions (void); gint __ca_selection_type (GtkTreeView *tree_view, GtkTreeIter **iter); void __ca_export_public_pem (GtkTreeIter *iter, gint type); gchar * __ca_export_private_pkcs8 (GtkTreeIter *iter, gint type); void __ca_export_private_pem (GtkTreeIter *iter, gint type); void __ca_export_pkcs12 (GtkTreeIter *iter, gint type); void __disable_widget (gchar *widget_name); void __enable_widget (gchar *widget_name); int __ca_refresh_model_add_certificate (void *pArg, int argc, char **argv, char **columnNames) { GtkTreeIter iter; GtkTreeStore * new_model = GTK_TREE_STORE (pArg); GValue *last_id_value = g_new0 (GValue, 1); GValue *last_parent_route_value = g_new0 (GValue, 1); guint64 uint64_value; const gchar * string_value; gchar * last_node_route = NULL; if (cert_title_inserted == FALSE) { gtk_tree_store_append (new_model, &iter, NULL); gtk_tree_store_set (new_model, &iter, 3, _("Certificates"), -1); cert_parent_iter = gtk_tree_iter_copy (&iter); cert_title_inserted = TRUE; } if (! last_cert_iter || (! strcmp (argv[CA_FILE_CERT_COLUMN_PARENT_ROUTE],":"))) { if (last_parent_iter) gtk_tree_iter_free (last_parent_iter); last_parent_iter = NULL; } else { // If not, then we must find the parent of the current node gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), last_cert_iter, CA_MODEL_COLUMN_ID, last_id_value); gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), last_cert_iter, CA_MODEL_COLUMN_PARENT_ROUTE, last_parent_route_value); uint64_value = g_value_get_uint64 (last_id_value); string_value = g_value_get_string (last_parent_route_value); g_assert (string_value); last_node_route = g_strdup_printf ("%s%"G_GUINT64_FORMAT":", string_value, uint64_value); if (! strcmp (argv[CA_FILE_CERT_COLUMN_PARENT_ROUTE], last_node_route)) { // Last node is parent of the current node if (last_parent_iter) gtk_tree_iter_free (last_parent_iter); last_parent_iter = gtk_tree_iter_copy (last_cert_iter); g_free (last_node_route); last_node_route = NULL; } else { // We go back in the hierarchical tree, starting in the current parent, until we find the parent of the // current certificate. if (last_parent_iter) gtk_tree_iter_free (last_parent_iter); last_parent_iter = gtk_tree_iter_copy (last_cert_iter); while (last_node_route && strcmp (argv[CA_FILE_CERT_COLUMN_PARENT_ROUTE], last_node_route)) { g_free (last_node_route); last_node_route = NULL; if (! gtk_tree_model_iter_parent(GTK_TREE_MODEL(new_model), &iter, last_parent_iter)) { // Last ca iter is a top_level if (last_parent_iter) gtk_tree_iter_free (last_parent_iter); last_parent_iter = NULL; } else { if (last_parent_iter) gtk_tree_iter_free (last_parent_iter); last_parent_iter = gtk_tree_iter_copy (&iter); g_value_unset (last_parent_route_value); g_value_unset (last_id_value); gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), last_parent_iter, CA_MODEL_COLUMN_ID, last_id_value); gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), last_parent_iter, CA_MODEL_COLUMN_PARENT_ROUTE, last_parent_route_value); uint64_value = g_value_get_uint64 (last_id_value); string_value = g_value_get_string (last_parent_route_value); if (string_value != NULL) last_node_route = g_strdup_printf ("%s%"G_GUINT64_FORMAT":", string_value, uint64_value); else last_node_route = NULL; } } if (last_node_route) g_free (last_node_route); } } gtk_tree_store_append (new_model, &iter, (last_parent_iter ? last_parent_iter: cert_parent_iter)); if (! argv[CA_FILE_CERT_COLUMN_REVOCATION]) gtk_tree_store_set (new_model, &iter, CA_MODEL_COLUMN_ID, atoll(argv[CA_FILE_CERT_COLUMN_ID]), CA_MODEL_COLUMN_IS_CA, atoi(argv[CA_FILE_CERT_COLUMN_IS_CA]), CA_MODEL_COLUMN_SERIAL, argv[CA_FILE_CERT_COLUMN_SERIAL], CA_MODEL_COLUMN_SUBJECT, argv[CA_FILE_CERT_COLUMN_SUBJECT], CA_MODEL_COLUMN_ACTIVATION, atoi(argv[CA_FILE_CERT_COLUMN_ACTIVATION]), CA_MODEL_COLUMN_EXPIRATION, atoi(argv[CA_FILE_CERT_COLUMN_EXPIRATION]), CA_MODEL_COLUMN_REVOCATION, 0, CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB, atoi(argv[CA_FILE_CERT_COLUMN_PRIVATE_KEY_IN_DB]), CA_MODEL_COLUMN_PEM, argv[CA_FILE_CERT_COLUMN_PEM], CA_MODEL_COLUMN_DN, argv[CA_FILE_CERT_COLUMN_DN], CA_MODEL_COLUMN_PARENT_DN, argv[CA_FILE_CERT_COLUMN_PARENT_DN], CA_MODEL_COLUMN_PARENT_ROUTE, argv[CA_FILE_CERT_COLUMN_PARENT_ROUTE], CA_MODEL_COLUMN_ITEM_TYPE, 0, -1); else { gchar * revoked_subject = g_markup_printf_escaped ("%s", argv[CA_FILE_CERT_COLUMN_SUBJECT]); gtk_tree_store_set (new_model, &iter, CA_MODEL_COLUMN_ID, atoll(argv[CA_FILE_CERT_COLUMN_ID]), CA_MODEL_COLUMN_IS_CA, atoi(argv[CA_FILE_CERT_COLUMN_IS_CA]), CA_MODEL_COLUMN_SERIAL, argv[CA_FILE_CERT_COLUMN_SERIAL], CA_MODEL_COLUMN_SUBJECT, revoked_subject, CA_MODEL_COLUMN_ACTIVATION, atoi(argv[CA_FILE_CERT_COLUMN_ACTIVATION]), CA_MODEL_COLUMN_EXPIRATION, atoi(argv[CA_FILE_CERT_COLUMN_EXPIRATION]), CA_MODEL_COLUMN_REVOCATION, atoi(argv[CA_FILE_CERT_COLUMN_REVOCATION]), CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB, atoi(argv[CA_FILE_CERT_COLUMN_PRIVATE_KEY_IN_DB]), CA_MODEL_COLUMN_PEM, argv[CA_FILE_CERT_COLUMN_PEM], CA_MODEL_COLUMN_DN, argv[CA_FILE_CERT_COLUMN_DN], CA_MODEL_COLUMN_PARENT_DN, argv[CA_FILE_CERT_COLUMN_PARENT_DN], CA_MODEL_COLUMN_PARENT_ROUTE, argv[CA_FILE_CERT_COLUMN_PARENT_ROUTE], CA_MODEL_COLUMN_ITEM_TYPE, 0, -1); g_free (revoked_subject); } if (last_cert_iter) gtk_tree_iter_free (last_cert_iter); last_cert_iter = gtk_tree_iter_copy (&iter); g_free (last_id_value); g_free (last_parent_route_value); return 0; } int __ca_refresh_model_add_csr (void *pArg, int argc, char **argv, char **columnNames) { GtkTreeIter iter; GtkTreeStore * new_model = GTK_TREE_STORE(pArg); if (csr_title_inserted == 0) { gtk_tree_store_append (new_model, &iter, NULL); gtk_tree_store_set (new_model, &iter, 3, _("Certificate Signing Requests"), -1); csr_parent_iter = gtk_tree_iter_copy (&iter); csr_title_inserted = TRUE; } gtk_tree_store_append (new_model, &iter, csr_parent_iter); gtk_tree_store_set (new_model, &iter, CA_MODEL_COLUMN_ID, atoll(argv[CA_FILE_CSR_COLUMN_ID]), CA_MODEL_COLUMN_SUBJECT, argv[CA_FILE_CSR_COLUMN_SUBJECT], CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB, atoi(argv[CA_FILE_CSR_COLUMN_PRIVATE_KEY_IN_DB]), CA_MODEL_COLUMN_PEM, argv[CA_FILE_CSR_COLUMN_PEM], CA_MODEL_COLUMN_PARENT_ID, argv[CA_FILE_CSR_COLUMN_PARENT_ID], CA_MODEL_COLUMN_ITEM_TYPE, 1, -1); return 0; } void __ca_tree_view_date_datafunc (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data) { time_t model_time = 0; #ifndef WIN32 struct tm model_time_tm; #else struct tm *model_time_tm = NULL; #endif gchar model_time_str[100]; gchar *result = NULL; gtk_tree_model_get(tree_model, iter, GPOINTER_TO_INT(data), &model_time, -1); if (model_time == 0) { g_object_set (G_OBJECT(cell), "text", "", NULL); return; } #ifndef WIN32 gmtime_r (&model_time, &model_time_tm); strftime (model_time_str, 100, _("%m/%d/%Y %R GMT"), &model_time_tm); #else model_time_tm = gmtime(&model_time); strftime(model_time_str, 100, _("%m/%d/%Y %H:%M GMT"), model_time_tm); #endif result = g_strdup (model_time_str); g_object_set(G_OBJECT(cell), "text", result, NULL); g_free (result); } void __ca_tree_view_is_ca_datafunc (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data) { gboolean is_ca; gchar *file = g_build_filename (PACKAGE_DATA_DIR, "gnomint", "ca-stamp-16.png", NULL); static GdkPixbuf * is_ca_pixbuf = NULL; static GdkPixbuf * null_pixbuf = NULL; GError *gerror = NULL; if (is_ca_pixbuf == NULL) { is_ca_pixbuf = gdk_pixbuf_new_from_file (file, &gerror); if (gerror) g_print ("%s\n", gerror->message); } g_free (file); if (null_pixbuf == NULL) { null_pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8, 1, 1); } gtk_tree_model_get(tree_model, iter, CA_MODEL_COLUMN_IS_CA, &is_ca, -1); if (is_ca) { g_object_set (G_OBJECT(cell), "pixbuf", is_ca_pixbuf, NULL); } else { g_object_set (G_OBJECT(cell), "pixbuf", null_pixbuf, NULL); } } void __ca_tree_view_private_key_in_db_datafunc (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel *tree_model, GtkTreeIter *iter, gpointer data) { gboolean pk_indb; gchar *file = g_build_filename (PACKAGE_DATA_DIR, "gnomint", "key-16.png", NULL); static GdkPixbuf * pk_in_db_pixbuf = NULL; static GdkPixbuf * null_pixbuf = NULL; GError *gerror = NULL; if (pk_in_db_pixbuf == NULL) { pk_in_db_pixbuf = gdk_pixbuf_new_from_file (file, &gerror); if (gerror) g_print ("%s\n", gerror->message); } g_free (file); if (null_pixbuf == NULL) { null_pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8, 1, 1); } gtk_tree_model_get(tree_model, iter, CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB, &pk_indb, -1); if (pk_indb) { g_object_set (G_OBJECT(cell), "pixbuf", pk_in_db_pixbuf, NULL); } else { g_object_set (G_OBJECT(cell), "pixbuf", null_pixbuf, NULL); } } gboolean ca_refresh_model_callback () { GtkTreeStore * new_model = NULL; GtkTreeView * treeview = NULL; GtkCellRenderer * renderer = NULL; GtkTreeViewColumn * column = NULL; guint columns_number; /* Models have these columns: - Id - Is CA - Serial - Subject - Activation - Expiration - Revocation - Private key is in DB - PEM data - DN - Parent DN - Parent route - Item type - Parent ID (only for CSR) */ new_model = gtk_tree_store_new (CA_MODEL_COLUMN_NUMBER, G_TYPE_UINT64, G_TYPE_BOOLEAN, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_BOOLEAN, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT, G_TYPE_STRING); cert_title_inserted = FALSE; cert_parent_iter = NULL; last_parent_iter = NULL; last_cert_iter = NULL; csr_title_inserted=FALSE; csr_parent_iter = NULL; ca_file_foreach_crt (__ca_refresh_model_add_certificate, view_rcrt, new_model); if (view_csr) ca_file_foreach_csr (__ca_refresh_model_add_csr, new_model); treeview = GTK_TREE_VIEW(gtk_builder_get_object (main_window_gtkb, "ca_treeview")); if (ca_model) { GList * column_list; g_object_unref (ca_model); // Remove revocation column column_list = gtk_tree_view_get_columns (treeview); columns_number = g_list_length (column_list); g_list_free (column_list); } else { /* GtkTooltips * table_tooltips = gtk_tooltips_new(); */ /* There's no model assigned to the treeview yet, so we add its columns */ renderer = GTK_CELL_RENDERER(gtk_cell_renderer_text_new ()); gtk_tree_view_insert_column_with_attributes (treeview, -1, _("Subject"), renderer, "markup", CA_MODEL_COLUMN_SUBJECT, NULL); /* gtk_tooltips_set_tip (table_tooltips, GTK_WIDGET(gtk_tree_view_get_column(treeview, column_number - 1)), */ /* _("Subject of the certificate or request"), */ /* _("This is the distinguished name (DN) of the certificate or request")); */ renderer = GTK_CELL_RENDERER(gtk_cell_renderer_pixbuf_new ()); gtk_tree_view_insert_column_with_data_func (treeview, -1, "", renderer, __ca_tree_view_is_ca_datafunc, NULL, NULL); /* gtk_tooltips_set_tip (table_tooltips, GTK_WIDGET(gtk_tree_view_get_column(treeview, column_number - 1)), */ /* _("It's a CA certificate"), */ /* _("An icon in this column shows that the certificate is able to generate and sign " */ /* "new certificates.")); */ renderer = GTK_CELL_RENDERER(gtk_cell_renderer_pixbuf_new ()); gtk_tree_view_insert_column_with_data_func (treeview, -1, "", renderer, __ca_tree_view_private_key_in_db_datafunc, NULL, NULL); /* gtk_tooltips_set_tip (table_tooltips, GTK_WIDGET(gtk_tree_view_get_column(treeview, column_number - 1)), */ /* _("Private key kept in internal database"), */ /* _("An icon in this column shows that the private key related to the certificate " */ /* "is kept in the gnoMint database.")); */ renderer = GTK_CELL_RENDERER(gtk_cell_renderer_text_new ()); gtk_tree_view_insert_column_with_attributes (treeview, -1, _("Serial"), renderer, "markup", CA_MODEL_COLUMN_SERIAL, NULL); renderer = GTK_CELL_RENDERER(gtk_cell_renderer_text_new ()); gtk_tree_view_insert_column_with_data_func (treeview, -1, _("Activation"), renderer, __ca_tree_view_date_datafunc, GINT_TO_POINTER(CA_MODEL_COLUMN_ACTIVATION), g_free); renderer = GTK_CELL_RENDERER(gtk_cell_renderer_text_new ()); gtk_tree_view_insert_column_with_data_func (treeview, -1, _("Expiration"), renderer, __ca_tree_view_date_datafunc, GINT_TO_POINTER(CA_MODEL_COLUMN_EXPIRATION), g_free); renderer = GTK_CELL_RENDERER(gtk_cell_renderer_text_new ()); columns_number = gtk_tree_view_insert_column_with_data_func (treeview, -1, _("Revocation"), renderer, __ca_tree_view_date_datafunc, GINT_TO_POINTER(CA_MODEL_COLUMN_REVOCATION), g_free); } column = gtk_tree_view_get_column(treeview, columns_number - 1); gtk_tree_view_column_set_visible (column, view_rcrt); gtk_tree_view_set_model (treeview, GTK_TREE_MODEL(new_model)); ca_model = new_model; gtk_tree_view_expand_all (treeview); return TRUE; } void __ca_certificate_activated (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data) { GValue * valueid = g_new0 (GValue, 1); GValue * valuestr = g_new0 (GValue, 1); GValue * value_pkey_in_db = g_new0 (GValue, 1); GValue * value_is_ca = g_new0 (GValue, 1); GtkTreeIter iter; GtkTreeModel * tree_model = gtk_tree_view_get_model (tree_view); gtk_tree_model_get_iter (tree_model, &iter, path); gtk_tree_model_get_value (tree_model, &iter, CA_MODEL_COLUMN_ID, valueid); gtk_tree_model_get_value (tree_model, &iter, CA_MODEL_COLUMN_PEM, valuestr); gtk_tree_model_get_value (tree_model, &iter, CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB, value_pkey_in_db); gtk_tree_model_get_value (tree_model, &iter, CA_MODEL_COLUMN_IS_CA, value_is_ca); certificate_properties_display (g_value_get_uint64 (valueid), g_value_get_string(valuestr), g_value_get_boolean(value_pkey_in_db), g_value_get_boolean (value_is_ca)); g_free (valuestr); g_free (value_pkey_in_db); g_free (value_is_ca); } void __ca_csr_activated (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data) { GValue * value = g_new0 (GValue, 1); GValue * valuebool = g_new0 (GValue, 1); GtkTreeIter iter; GtkTreeModel * tree_model = gtk_tree_view_get_model (tree_view); gtk_tree_model_get_iter (tree_model, &iter, path); gtk_tree_model_get_value (tree_model, &iter, CA_MODEL_COLUMN_PEM, value); gtk_tree_model_get_value (tree_model, &iter, CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB, valuebool); csr_properties_display (g_value_get_string(value), g_value_get_boolean (valuebool)); free (value); free (valuebool); } G_MODULE_EXPORT gboolean ca_treeview_row_activated (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data) { GtkTreePath *parent = NULL; if (tree_view == NULL) { GtkTreeSelection *selection; GtkTreeIter selection_iter; tree_view = GTK_TREE_VIEW(gtk_builder_get_object (main_window_gtkb, "ca_treeview")); selection = gtk_tree_view_get_selection (tree_view); if (gtk_tree_selection_count_selected_rows (selection) != 1) return FALSE; gtk_tree_selection_get_selected (selection, NULL, &selection_iter); path = gtk_tree_model_get_path (gtk_tree_view_get_model(tree_view), &selection_iter); } parent = gtk_tree_model_get_path (gtk_tree_view_get_model(tree_view), cert_parent_iter); if (gtk_tree_path_is_ancestor (parent, path) && gtk_tree_path_compare (parent, path)) { __ca_certificate_activated (tree_view, path, column, user_data); } else { gtk_tree_path_free (parent); parent = gtk_tree_model_get_path (gtk_tree_view_get_model(tree_view), csr_parent_iter); if (gtk_tree_path_is_ancestor (parent, path) && gtk_tree_path_compare (parent, path)) { __ca_csr_activated (tree_view, path, column, user_data); } } gtk_tree_path_free (parent); return FALSE; } void __ca_activate_certificate_selection (GtkTreeIter *iter) { GObject *widget; gboolean is_ca = FALSE; gboolean pk_indb = FALSE; gint is_revoked = FALSE; widget = gtk_builder_get_object (main_window_gtkb, "export1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_IS_CA, &is_ca, CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB, &pk_indb, CA_MODEL_COLUMN_REVOCATION, &is_revoked, -1); widget = gtk_builder_get_object (main_window_gtkb, "extractprivatekey1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), pk_indb); widget = gtk_builder_get_object (main_window_gtkb, "extractpkey_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), pk_indb); widget = gtk_builder_get_object (main_window_gtkb, "revoke1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), (! is_revoked)); widget = gtk_builder_get_object (main_window_gtkb, "revoke_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), (! is_revoked)); widget = gtk_builder_get_object (main_window_gtkb, "sign1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "sign_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "delete2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "delete_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "properties1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); } void __ca_activate_csr_selection (GtkTreeIter *iter) { GObject *widget; gboolean pk_indb = FALSE; widget = gtk_builder_get_object (main_window_gtkb, "export1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB, &pk_indb, -1); widget = gtk_builder_get_object (main_window_gtkb, "extractprivatekey1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), pk_indb); widget = gtk_builder_get_object (main_window_gtkb, "extractpkey_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), pk_indb); widget = gtk_builder_get_object (main_window_gtkb, "revoke1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "revoke_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "sign1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); widget = gtk_builder_get_object (main_window_gtkb, "sign_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); widget = gtk_builder_get_object (main_window_gtkb, "delete2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); widget = gtk_builder_get_object (main_window_gtkb, "delete_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); widget = gtk_builder_get_object (main_window_gtkb, "properties1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); } void __ca_deactivate_actions () { GObject *widget; widget = gtk_builder_get_object (main_window_gtkb, "export1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "extractprivatekey1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "extractpkey_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "revoke1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "revoke_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "sign1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "sign_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "delete2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "delete_toolbutton"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (main_window_gtkb, "properties1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); } gint __ca_selection_type (GtkTreeView *tree_view, GtkTreeIter **iter) { GtkTreeSelection *selection = gtk_tree_view_get_selection (tree_view); GtkTreeIter selection_iter; GtkTreePath *parent = NULL; GtkTreePath *selection_path = NULL; if (gtk_tree_selection_count_selected_rows (selection) != 1) return -1; gtk_tree_selection_get_selected (selection, NULL, &selection_iter); if (iter) (*iter) = gtk_tree_iter_copy (&selection_iter); selection_path = gtk_tree_model_get_path (gtk_tree_view_get_model(tree_view), &selection_iter); parent = gtk_tree_model_get_path (gtk_tree_view_get_model(tree_view), cert_parent_iter); if (gtk_tree_path_is_ancestor (parent, selection_path) && gtk_tree_path_compare (parent, selection_path)) { gtk_tree_path_free (parent); /* It's a certificate */ return CA_FILE_ELEMENT_TYPE_CERT; } gtk_tree_path_free (parent); parent = gtk_tree_model_get_path (gtk_tree_view_get_model(tree_view), csr_parent_iter); if (gtk_tree_path_is_ancestor (parent, selection_path) && gtk_tree_path_compare (parent, selection_path)) { gtk_tree_path_free (parent); /* It's a CSR */ return CA_FILE_ELEMENT_TYPE_CSR; } gtk_tree_path_free (parent); return -1; } G_MODULE_EXPORT gboolean ca_treeview_selection_change (GtkTreeView *tree_view, gpointer user_data) { GtkTreeIter *selection_iter; switch (__ca_selection_type (tree_view, &selection_iter)) { case CA_FILE_ELEMENT_TYPE_CERT: __ca_activate_certificate_selection (selection_iter); break; case CA_FILE_ELEMENT_TYPE_CSR: __ca_activate_csr_selection (selection_iter); break; case -1: default: __ca_deactivate_actions(); break; } return FALSE; } void __ca_export_public_pem (GtkTreeIter *iter, gint type) { GObject *widget = NULL; GIOChannel * file = NULL; gchar * filename = NULL; gchar * pem = NULL; gchar * parent_route = NULL; GtkDialog * dialog = NULL; GError * error = NULL; widget = gtk_builder_get_object (main_window_gtkb, "main_window1"); if (type == 1) dialog = GTK_DIALOG (gtk_file_chooser_dialog_new (_("Export certificate"), GTK_WINDOW(widget), GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL)); else dialog = GTK_DIALOG (gtk_file_chooser_dialog_new (_("Export certificate signing request"), GTK_WINDOW(widget), GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL)); gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE); if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) { filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); file = g_io_channel_new_file (filename, "w", &error); if (error) { gtk_widget_destroy (GTK_WIDGET(dialog)); if (type == 1) dialog_error (_("There was an error while exporting certificate.")); else dialog_error (_("There was an error while exporting CSR.")); return; } gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_PEM, &pem, -1); if (type == 1) gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_PARENT_ROUTE, &parent_route, -1); g_io_channel_write_chars (file, pem, strlen(pem), NULL, &error); if (parent_route && strcmp (parent_route, ":")) { // The parent of the certificate is in the data base. // We then export all the certificates up to the root, after the given certificate // so it can be validated gchar ** tokens = g_strsplit (parent_route, ":", -1); // First and last tokens are always empty, as all parent ids start and end by ':' guint num_tokens = g_strv_length (tokens) - 2; gint i; for (i=num_tokens; i>=1; i--) { gchar * parent_pem = ca_file_get_public_pem_from_id (CA_FILE_ELEMENT_TYPE_CERT, atoll(tokens[i])); if (parent_pem) { g_io_channel_write_chars (file, parent_pem, strlen(parent_pem), NULL, &error); g_free (parent_pem); } } g_strfreev (tokens); } if (error) { gtk_widget_destroy (GTK_WIDGET(dialog)); if (type == CA_FILE_ELEMENT_TYPE_CERT) dialog_error (_("There was an error while exporting certificate.")); else dialog_error (_("There was an error while exporting CSR.")); return; } g_io_channel_shutdown (file, TRUE, &error); if (error) { gtk_widget_destroy (GTK_WIDGET(dialog)); if (type == CA_FILE_ELEMENT_TYPE_CERT) dialog_error (_("There was an error while exporting certificate.")); else dialog_error (_("There was an error while exporting CSR.")); return; } g_io_channel_unref (file); gtk_widget_destroy (GTK_WIDGET(dialog)); if (type == CA_FILE_ELEMENT_TYPE_CERT) dialog = GTK_DIALOG(gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("Certificate exported successfully"))); else dialog = GTK_DIALOG(gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("Certificate signing request exported successfully"))); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); } } gchar * __ca_export_private_pkcs8 (GtkTreeIter *iter, gint type) { GObject *widget = NULL; gchar * filename = NULL; GtkDialog * dialog = NULL; gint id; gchar * strerror = NULL; widget = gtk_builder_get_object (main_window_gtkb, "main_window1"); dialog = GTK_DIALOG (gtk_file_chooser_dialog_new (_("Export crypted private key"), GTK_WINDOW(widget), GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL)); gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE); if (gtk_dialog_run (GTK_DIALOG (dialog)) != GTK_RESPONSE_ACCEPT) { gtk_widget_destroy (GTK_WIDGET(dialog)); return NULL; } filename = g_strdup(gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog))); gtk_widget_destroy (GTK_WIDGET(dialog)); gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_ID, &id, -1); strerror = export_private_pkcs8 (id, type, filename); if (! strerror) { dialog = GTK_DIALOG(gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("Private key exported successfully"))); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); } else { dialog_error (strerror); } return filename; } void __ca_export_private_pem (GtkTreeIter *iter, gint type) { GObject *widget = NULL; gchar * filename = NULL; GtkDialog * dialog = NULL; gint id; gchar * error_msg = NULL; widget = gtk_builder_get_object (main_window_gtkb, "main_window1"); dialog = GTK_DIALOG (gtk_file_chooser_dialog_new (_("Export uncrypted private key"), GTK_WINDOW(widget), GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL)); gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE); if (gtk_dialog_run (GTK_DIALOG (dialog)) != GTK_RESPONSE_ACCEPT) { gtk_widget_destroy (GTK_WIDGET(dialog)); return; } filename = g_strdup(gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog))); gtk_widget_destroy (GTK_WIDGET(dialog)); gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_ID, &id, -1); error_msg = export_private_pem (id, type, filename); g_free (filename); if (error_msg) { dialog_error (error_msg); } else { dialog = GTK_DIALOG(gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("Private key exported successfully"))); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); } } void __ca_export_pkcs12 (GtkTreeIter *iter, gint type) { GObject *widget = NULL; gchar * filename = NULL; GtkDialog * dialog = NULL; gint id; gchar *error_msg = NULL; widget = gtk_builder_get_object (main_window_gtkb, "main_window1"); dialog = GTK_DIALOG (gtk_file_chooser_dialog_new (_("Export whole certificate in PKCS#12 package"), GTK_WINDOW(widget), GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL)); gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE); if (gtk_dialog_run (GTK_DIALOG (dialog)) != GTK_RESPONSE_ACCEPT) { gtk_widget_destroy (GTK_WIDGET(dialog)); return; } filename = g_strdup(gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog))); gtk_widget_destroy (GTK_WIDGET(dialog)); gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_ID, &id, -1); error_msg = export_pkcs12 (id, type, filename); g_free (filename); if (error_msg && strlen(error_msg)) { dialog_error (error_msg); return; } if (error_msg) { // Export cancelled by user return; } dialog = GTK_DIALOG(gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("Certificate exported successfully"))); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); } G_MODULE_EXPORT void ca_on_export1_activate (GtkMenuItem *menuitem, gpointer user_data) { GObject * widget = NULL; //GtkDialog * dialog = NULL; GtkTreeIter *iter; gint type = __ca_selection_type (GTK_TREE_VIEW(gtk_builder_get_object (main_window_gtkb, "ca_treeview")), &iter); GtkBuilder * dialog_gtkb = NULL; gboolean has_pk_in_db = FALSE; gint response = 0; dialog_gtkb = gtk_builder_new(); gtk_builder_add_from_file (dialog_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "export_certificate_dialog.ui", NULL ), NULL); gtk_builder_connect_signals (dialog_gtkb, NULL); gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB, &has_pk_in_db, -1); widget = gtk_builder_get_object (dialog_gtkb, "privatepart_radiobutton2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), has_pk_in_db); widget = gtk_builder_get_object (dialog_gtkb, "bothparts_radiobutton3"); gtk_widget_set_sensitive (GTK_WIDGET(widget), has_pk_in_db); if (type == CA_FILE_ELEMENT_TYPE_CSR) { widget = gtk_builder_get_object (dialog_gtkb, "export_certificate_dialog"); gtk_window_set_title (GTK_WINDOW(widget), _("Export CSR - gnoMint")); widget = gtk_builder_get_object (dialog_gtkb, "label2"); gtk_label_set_text (GTK_LABEL(widget), _("Please, choose which part of the saved Certificate Signing Request you want to export:")); widget = gtk_builder_get_object (dialog_gtkb, "label5"); gtk_label_set_markup (GTK_LABEL(widget), _("Export the Certificate Signing Request to a public file, in PEM format.")); widget = gtk_builder_get_object (dialog_gtkb, "label15"); gtk_label_set_markup (GTK_LABEL(widget), _("Export the saved private key to a PKCS#8 password-protected file. This file should only be accessed by the subject of the Certificate Signing Request.")); widget = gtk_builder_get_object (dialog_gtkb, "bothparts_radiobutton3"); g_object_set (G_OBJECT (widget), "visible", FALSE, NULL); widget = gtk_builder_get_object (dialog_gtkb, "label19"); g_object_set (G_OBJECT (widget), "visible", FALSE, NULL); } widget = gtk_builder_get_object (dialog_gtkb, "export_certificate_dialog"); response = gtk_dialog_run(GTK_DIALOG(widget)); if (!response || response == GTK_RESPONSE_CANCEL) { gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object (dialog_gtkb, "publicpart_radiobutton1")))) { /* Export public part */ __ca_export_public_pem (iter, type); gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object (dialog_gtkb, "privatepart_radiobutton2")))) { /* Export private part (crypted) */ g_free (__ca_export_private_pkcs8 (iter, type)); gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object (dialog_gtkb, "privatepart_uncrypted_radiobutton2")))) { /* Export private part (uncrypted) */ __ca_export_private_pem (iter, type); gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return; } if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object (dialog_gtkb, "bothparts_radiobutton3")))) { /* Export PKCS#12 structure */ __ca_export_pkcs12 (iter, type); gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return; } gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); dialog_error (_("Unexpected error")); } G_MODULE_EXPORT void ca_on_extractprivatekey1_activate (GtkMenuItem *menuitem, gpointer user_data) { GtkTreeIter *iter; gint type; gchar *filename = NULL; gint id; type = __ca_selection_type (GTK_TREE_VIEW(gtk_builder_get_object (main_window_gtkb, "ca_treeview")), &iter); gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_ID, &id, -1); filename = __ca_export_private_pkcs8 (iter, type); if (! filename) { return; } if (type == CA_FILE_ELEMENT_TYPE_CERT) ca_file_mark_pkey_as_extracted_for_id (CA_FILE_ELEMENT_TYPE_CERT, filename, id); else ca_file_mark_pkey_as_extracted_for_id (CA_FILE_ELEMENT_TYPE_CSR, filename, id); g_free (filename); dialog_refresh_list(); } G_MODULE_EXPORT void ca_on_revoke_activate (GtkMenuItem *menuitem, gpointer user_data) { GObject * widget = NULL; GtkDialog * dialog = NULL; gchar * errmsg = NULL; GtkTreeIter *iter; gint type = __ca_selection_type (GTK_TREE_VIEW(gtk_builder_get_object (main_window_gtkb, "ca_treeview")), &iter); gint response = 0; gint id = 0; if (type == CA_FILE_ELEMENT_TYPE_CSR) return; gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_ID, &id, -1); widget = gtk_builder_get_object (main_window_gtkb, "main_window1"); if (! ca_file_check_if_is_ca_id (id)) { dialog = GTK_DIALOG(gtk_message_dialog_new_with_markup (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, "%s\n\n%s", _("Are you sure you want to revoke this certificate?"), _("Revoking a certificate will include it in the next CRL, marking it as invalid. This way, any future use of the certificate will be denied (as long as the CRL is checked)."))); } else { dialog = GTK_DIALOG(gtk_message_dialog_new_with_markup (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, "%s\n\n%s", _("Are you sure you want to revoke this CA certificate?"), _("Revoking a certificate will include it in the next CRL, marking it as invalid. This way, any future use of the certificate will be denied (as long as the CRL is checked). \n\nMoreover, revoking a CA certificate can invalidate all the certificates generated with it, so all them should be regenerated with a new CA certificate."))); } response = gtk_dialog_run(dialog); gtk_widget_destroy (GTK_WIDGET(dialog)); if (response == GTK_RESPONSE_NO) { return; } errmsg = ca_file_revoke_crt (id); if (errmsg) { dialog_error (_(errmsg)); } dialog_refresh_list(); } G_MODULE_EXPORT void ca_on_delete2_activate (GtkMenuItem *menuitem, gpointer user_data) { GObject * widget = NULL; GtkDialog * dialog = NULL; GtkTreeIter *iter; gint type = __ca_selection_type (GTK_TREE_VIEW(gtk_builder_get_object (main_window_gtkb, "ca_treeview")), &iter); gint response = 0; gint id = 0; if (type != CA_FILE_ELEMENT_TYPE_CSR) return; widget = gtk_builder_get_object (main_window_gtkb, "main_window1"); dialog = GTK_DIALOG(gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, "%s", _("Are you sure you want to delete this Certificate Signing Request?"))); response = gtk_dialog_run(dialog); gtk_widget_destroy (GTK_WIDGET(dialog)); if (response == GTK_RESPONSE_NO) { return; } gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_ID, &id, -1); ca_file_remove_csr (id); dialog_refresh_list(); } G_MODULE_EXPORT void ca_on_sign1_activate (GtkMenuItem *menuitem, gpointer user_data) { GtkTreeIter *iter; gint type = __ca_selection_type (GTK_TREE_VIEW(gtk_builder_get_object (main_window_gtkb, "ca_treeview")), &iter); gchar * csr_pem; gchar * csr_parent_id; guint64 csr_id; if (type != CA_FILE_ELEMENT_TYPE_CSR) return; gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_ID, &csr_id, CA_MODEL_COLUMN_PEM, &csr_pem, CA_MODEL_COLUMN_PARENT_ID, &csr_parent_id, -1); new_cert_window_display (csr_id, csr_pem, csr_parent_id); g_free (csr_pem); g_free (csr_parent_id); } gboolean ca_open (gchar *filename, gboolean create) { if (! ca_file_open (filename, create)) return FALSE; __enable_widget ("new_certificate1"); __enable_widget ("save_as1"); __enable_widget ("preferences1"); dialog_refresh_list(); return TRUE; } guint64 ca_get_selected_row_id () { GtkTreeIter *iter; guint64 result; __ca_selection_type (GTK_TREE_VIEW(gtk_builder_get_object (main_window_gtkb, "ca_treeview")), &iter); gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_ID, &result, -1); return result; } gchar * ca_get_selected_row_pem () { GtkTreeIter *iter; gchar * result; __ca_selection_type (GTK_TREE_VIEW(gtk_builder_get_object (main_window_gtkb, "ca_treeview")), &iter); gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_PEM, &result, -1); return result; } void ca_update_csr_view (gboolean new_value, gboolean refresh) { view_csr = new_value; gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM(gtk_builder_get_object(main_window_gtkb, "csr_view_menuitem")), new_value); if (refresh) dialog_refresh_list(); } G_MODULE_EXPORT gboolean ca_csr_view_toggled (GtkCheckMenuItem *button, gpointer user_data) { ca_update_csr_view (gtk_check_menu_item_get_active (button), TRUE); if (view_csr != preferences_get_crq_visible()) preferences_set_crq_visible (view_csr); return TRUE; } void ca_update_revoked_view (gboolean new_value, gboolean refresh) { view_rcrt = new_value; gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM(gtk_builder_get_object(main_window_gtkb, "revoked_view_menuitem")), new_value); if (refresh) dialog_refresh_list(); } G_MODULE_EXPORT gboolean ca_rcrt_view_toggled (GtkCheckMenuItem *button, gpointer user_data) { ca_update_revoked_view (gtk_check_menu_item_get_active (button), TRUE); if (view_rcrt != preferences_get_revoked_visible()) preferences_set_revoked_visible (view_rcrt); return TRUE; } G_MODULE_EXPORT void ca_generate_crl (GtkCheckMenuItem *item, gpointer user_data) { crl_window_display (); } gboolean ca_treeview_popup_timeout_program_cb (gpointer data) { GObject *menu, *widget; GtkTreeView * tree_view = GTK_TREE_VIEW(gtk_builder_get_object (main_window_gtkb, "ca_treeview")); GdkEventButton *event_button = (GdkEventButton *) data; GtkTreeIter *iter; gboolean pk_indb, is_revoked; gint selection_type; selection_type = __ca_selection_type (tree_view, &iter); switch (selection_type) { case CA_FILE_ELEMENT_TYPE_CERT: menu = gtk_builder_get_object (cert_popup_menu_gtkb, "certificate_popup_menu"); gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB, &pk_indb, CA_MODEL_COLUMN_REVOCATION, &is_revoked, -1); widget = gtk_builder_get_object (cert_popup_menu_gtkb, "extract_pkey_menuitem"); gtk_widget_set_sensitive (GTK_WIDGET(widget), pk_indb); widget = gtk_builder_get_object (cert_popup_menu_gtkb, "revoke_menuitem"); gtk_widget_set_sensitive (GTK_WIDGET(widget), (! is_revoked)); gtk_menu_popup (GTK_MENU(menu), NULL, NULL, NULL, NULL, event_button->button, event_button->time); return FALSE; case CA_FILE_ELEMENT_TYPE_CSR: menu = gtk_builder_get_object (csr_popup_menu_gtkb, "csr_popup_menu"); gtk_tree_model_get(GTK_TREE_MODEL(ca_model), iter, CA_MODEL_COLUMN_PRIVATE_KEY_IN_DB, &pk_indb, -1); widget = gtk_builder_get_object (csr_popup_menu_gtkb, "extract_pkey_menuitem3"); gtk_widget_set_sensitive (GTK_WIDGET(widget), pk_indb); gtk_menu_popup (GTK_MENU(menu), NULL, NULL, NULL, NULL, event_button->button, event_button->time); return FALSE; default: case -1: return FALSE; } } void ca_treeview_popup_timeout_program (GdkEventButton *event) { g_timeout_add (1, ca_treeview_popup_timeout_program_cb, event); } G_MODULE_EXPORT gboolean ca_treeview_popup_handler (GtkTreeView *tree_view, GdkEvent *event, gpointer user_data) { GdkEventButton *event_button; g_return_val_if_fail (event != NULL, FALSE); if (event->type == GDK_BUTTON_PRESS) { event_button = (GdkEventButton *) event; if (event_button->button == 3) { ca_treeview_popup_timeout_program (event_button); } } return FALSE; } G_MODULE_EXPORT void ca_on_change_pwd_menuitem_activate (GtkMenuItem *menuitem, gpointer user_data) { GObject * widget = NULL; GtkDialog * dialog = NULL; GtkBuilder * dialog_gtkb = NULL; const gchar *newpwd; const gchar *currpwd; gint response = 0; gboolean repeat; dialog_gtkb = gtk_builder_new(); gtk_builder_add_from_file (dialog_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "change_password_dialog.ui", NULL), NULL); gtk_builder_connect_signals (dialog_gtkb, NULL); if (ca_file_is_password_protected()) { widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_pwd_protect_yes_radiobutton"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), TRUE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_label1"); g_object_set (G_OBJECT(widget), "visible", TRUE, NULL); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_current_pwd_entry"); g_object_set (G_OBJECT(widget), "visible", TRUE, NULL); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_label2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_label3"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_commit_button"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); } else { widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_pwd_protect_no_radiobutton"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), TRUE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_label1"); g_object_set (G_OBJECT(widget), "visible", FALSE, NULL); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_current_pwd_entry"); g_object_set (G_OBJECT(widget), "visible", FALSE, NULL); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_label2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_label3"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); } widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_pwd_protect_yes_radiobutton"); g_object_set_data (G_OBJECT(widget), "dialog_gtkb", dialog_gtkb); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry1"); g_object_set_data (G_OBJECT(widget), "dialog_gtkb", dialog_gtkb); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry2"); g_object_set_data (G_OBJECT(widget), "dialog_gtkb", dialog_gtkb); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_current_pwd_entry"); g_object_set_data (G_OBJECT(widget), "dialog_gtkb", dialog_gtkb); do { widget = gtk_builder_get_object (dialog_gtkb, "change_password_dialog"); gtk_window_set_title (GTK_WINDOW(widget), _("Change CA password - gnoMint")); response = gtk_dialog_run(GTK_DIALOG(widget)); if (!response || response == GTK_RESPONSE_CANCEL) { gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return; } widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry1"); newpwd = gtk_entry_get_text (GTK_ENTRY(widget)); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_current_pwd_entry"); currpwd = gtk_entry_get_text (GTK_ENTRY(widget)); repeat = (ca_file_is_password_protected() && ! ca_file_check_password (currpwd)); if (repeat) { dialog_error (_("The current password you have entered " "doesn't match with the actual current database password.")); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_current_pwd_entry"); gtk_widget_grab_focus (GTK_WIDGET(widget)); } } while (repeat); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_pwd_protect_yes_radiobutton"); if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget))) { if (ca_file_is_password_protected()) { // It's a password change if (! ca_file_password_change (currpwd, newpwd)) { dialog_error (_("Error while changing database password. " "The operation was cancelled.")); } else { widget = gtk_builder_get_object (dialog_gtkb, "change_password_dialog"); dialog = GTK_DIALOG(gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("Password changed successfully"))); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); } } else { // It's a new password if (! ca_file_password_protect (newpwd)) { dialog_error (_("Error while establishing database password. " "The operation was cancelled.")); } else { widget = gtk_builder_get_object (dialog_gtkb, "change_password_dialog"); dialog = GTK_DIALOG(gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("Password established successfully"))); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); } } } else { if (ca_file_is_password_protected()) { // Remove password protection if (! ca_file_password_unprotect (currpwd)) { dialog_error (_("Error while removing database password. " "The operation was cancelled.")); } else { widget = gtk_builder_get_object (dialog_gtkb, "change_password_dialog"); dialog = GTK_DIALOG(gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("Password removed successfully"))); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); } } else { // Don't do anything } } widget = gtk_builder_get_object (dialog_gtkb, "change_password_dialog"); gtk_widget_destroy (GTK_WIDGET(widget)); } G_MODULE_EXPORT gboolean ca_changepwd_newpwd_entry_changed (GtkWidget *entry, gpointer user_data) { GtkBuilder * dialog_gtkb = g_object_get_data (G_OBJECT(entry), "dialog_gtkb"); GObject *widget; const gchar *pwd1; const gchar *pwd2; const gchar *currpwd; gboolean pwd_protect; widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_pwd_protect_yes_radiobutton"); pwd_protect = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry1"); pwd1 = gtk_entry_get_text (GTK_ENTRY(widget)); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry2"); pwd2 = gtk_entry_get_text (GTK_ENTRY(widget)); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_current_pwd_entry"); currpwd = gtk_entry_get_text (GTK_ENTRY(widget)); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_commit_button"); if (pwd_protect) { if (strlen(pwd1) && strlen(pwd2) && ! strcmp(pwd1, pwd2)) { if (!ca_file_is_password_protected() || (ca_file_is_password_protected() && strlen(currpwd))) gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); else gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); } else { gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); } } else { gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); } return FALSE; } G_MODULE_EXPORT gboolean ca_changepwd_pwd_protect_radiobutton_toggled (GtkWidget *button, gpointer user_data) { GtkBuilder * dialog_gtkb; GObject * widget = NULL; if (! G_IS_OBJECT(button)) return TRUE; dialog_gtkb = g_object_get_data (G_OBJECT(button), "dialog_gtkb"); if (! dialog_gtkb) return TRUE; widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_pwd_protect_yes_radiobutton"); if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget))) { /* We want to password-protect the database */ widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_label2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_label3"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), TRUE); ca_changepwd_newpwd_entry_changed (button, NULL); } else { widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_label2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_label3"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry1"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); widget = gtk_builder_get_object (dialog_gtkb, "ca_changepwd_newpwd_entry2"); gtk_widget_set_sensitive (GTK_WIDGET(widget), FALSE); } return FALSE; } G_MODULE_EXPORT void ca_generate_dh_param_show (GtkWidget *menuitem, gpointer user_data) { GObject * widget = NULL; GtkDialog * dialog = NULL, * dialog2 = NULL; GtkBuilder * dialog_gtkb = NULL; gchar *filename; gint response = 0; guint dh_size; gchar *strerror; dialog_gtkb = gtk_builder_new(); gtk_builder_add_from_file (dialog_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "dh_parameters_dialog.ui", NULL), NULL); gtk_builder_connect_signals (dialog_gtkb, NULL); dialog = GTK_DIALOG(gtk_builder_get_object (dialog_gtkb, "dh_parameters_dialog")); response = gtk_dialog_run(dialog); if (!response) { gtk_widget_destroy (GTK_WIDGET(dialog)); g_object_unref (G_OBJECT(dialog_gtkb)); return; } widget = gtk_builder_get_object (dialog_gtkb, "dh_prime_size_spinbutton"); dh_size = gtk_spin_button_get_value (GTK_SPIN_BUTTON(widget)); dialog2 = GTK_DIALOG (gtk_file_chooser_dialog_new (_("Save Diffie-Hellman parameters"), GTK_WINDOW(widget), GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL)); gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog2), TRUE); if (gtk_dialog_run (GTK_DIALOG (dialog2)) == GTK_RESPONSE_ACCEPT) { filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog2)); strerror = export_dh_param (dh_size, filename); if (strerror) { gtk_widget_destroy (GTK_WIDGET(dialog2)); gtk_widget_destroy (GTK_WIDGET(dialog)); dialog_error (strerror); } else { gtk_widget_destroy (GTK_WIDGET(dialog2)); gtk_widget_destroy (GTK_WIDGET(dialog)); dialog = GTK_DIALOG(gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("Diffie-Hellman parameters saved successfully"))); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); } } return; } /* * * FILE MENU CALLBACKS * */ G_MODULE_EXPORT void on_add_self_signed_ca_activate (GtkMenuItem *menuitem, gpointer user_data) { new_ca_window_display(); } G_MODULE_EXPORT void on_add_csr_activate (GtkMenuItem *menuitem, gpointer user_data) { new_req_window_display(); } G_MODULE_EXPORT void on_import1_activate (GtkMenuItem *menuitem, gpointer user_data) { gchar *filename; GObject *main_window_widget, *widget; GtkWidget *dialog; GtkBuilder * dialog_gtkb = NULL; GtkToggleButton *radiobutton = NULL; gint response = 0; gboolean import_file = TRUE; main_window_widget = gtk_builder_get_object (main_window_gtkb, "main_window"); dialog_gtkb = gtk_builder_new(); gtk_builder_add_from_file (dialog_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "import_file_or_directory_dialog.ui", NULL), NULL); gtk_builder_connect_signals (dialog_gtkb, NULL); widget = gtk_builder_get_object (dialog_gtkb, "import_file_or_directory_dialog"); response = gtk_dialog_run (GTK_DIALOG(widget)); if (response < 0) { gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return; } radiobutton = GTK_TOGGLE_BUTTON(gtk_builder_get_object (dialog_gtkb, "importfile_radiobutton")); import_file = gtk_toggle_button_get_active(radiobutton); gtk_widget_destroy (GTK_WIDGET(widget)); if (import_file) { // Import single file dialog = gtk_file_chooser_dialog_new (_("Select PEM file to import"), GTK_WINDOW(main_window_widget), GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL); if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) { filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); gtk_widget_destroy (dialog); } else { gtk_widget_destroy (dialog); return; } if (! import_single_file (filename, NULL, NULL)) { dialog = gtk_message_dialog_new (GTK_WINDOW(main_window_widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, _("Problem when importing '%s' file"), filename); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (dialog); } return; } else { // Import directory gchar * result = NULL; dialog = gtk_file_chooser_dialog_new (_("Select directory to import"), GTK_WINDOW(main_window_widget), GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL); if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) { filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); gtk_widget_destroy (dialog); } else { gtk_widget_destroy (dialog); return; } result = import_whole_dir (filename); if (result) { dialog = gtk_message_dialog_new (GTK_WINDOW(main_window_widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, "%s", result); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (dialog); } return; } } /* * * EDIT MENU CALLBACKS * */ G_MODULE_EXPORT void on_preferences1_activate (GtkMenuItem *menuitem, gpointer user_data) { preferences_window_display (); } G_MODULE_EXPORT void on_properties1_activate (GtkMenuItem *menuitem, gpointer user_data) { ca_treeview_row_activated (NULL, NULL, NULL, NULL); } #endif gnomint-1.3.0/src/crl.c0000664000175000017500000003107412672054741011641 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #ifndef GNOMINTCLI #include #include #endif #include "crl.h" #include "ca_file.h" #include "pkey_manage.h" #include "dialog.h" #include "tls.h" void __crl_gfree_gfunc (gpointer data, gpointer user_data); #ifndef GNOMINTCLI GtkBuilder *crl_window_gtkb = NULL; GtkTreeStore * crl_ca_list_model = NULL; enum {CRL_CA_MODEL_COLUMN_ID=0, CRL_CA_MODEL_COLUMN_SERIAL=1, CRL_CA_MODEL_COLUMN_SUBJECT=2, CRL_CA_MODEL_COLUMN_DN=3, CRL_CA_MODEL_COLUMN_PARENT_DN=4, CRL_CA_MODEL_COLUMN_PEM=5, CRL_CA_MODEL_COLUMN_NUMBER=6} CrlCaListModelColumns; typedef struct { GtkTreeStore * new_model; GtkTreeIter * last_parent_iter; GtkTreeIter * last_ca_iter; } __CrlRefreshModelAddCaUserData; int __crl_refresh_model_add_ca (void *pArg, int argc, char **argv, char **columnNames); void __crl_populate_ca_treeview (GtkTreeView *treeview); int __crl_refresh_model_add_ca (void *pArg, int argc, char **argv, char **columnNames) { GValue *last_dn_value = g_new0 (GValue, 1); GValue *last_parent_dn_value = g_new0 (GValue, 1); GtkTreeIter iter; __CrlRefreshModelAddCaUserData *pdata = (__CrlRefreshModelAddCaUserData *) pArg; GtkTreeStore * new_model = pdata->new_model; const gchar * string_value; // First we check if this is the first CA, or is a self-signed certificate if (! pdata->last_ca_iter || (! strcmp (argv[CRL_CA_MODEL_COLUMN_DN],argv[CRL_CA_MODEL_COLUMN_PARENT_DN])) ) { if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = NULL; } else { // If not, then we must find the parent of the current nod gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), pdata->last_ca_iter, CRL_CA_MODEL_COLUMN_DN, last_dn_value); gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), pdata->last_ca_iter, CRL_CA_MODEL_COLUMN_PARENT_DN, last_parent_dn_value); string_value = g_value_get_string (last_dn_value); g_assert (string_value); if (! strcmp (argv[CRL_CA_MODEL_COLUMN_PARENT_DN], string_value)) { // Last node is parent of the current node if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = gtk_tree_iter_copy (pdata->last_ca_iter); } else { // We go back in the hierarchical tree, starting in the current parent, until we find the parent of the // current certificate. while (pdata->last_parent_iter && strcmp (argv[CRL_CA_MODEL_COLUMN_PARENT_DN], g_value_get_string(last_parent_dn_value))) { if (! gtk_tree_model_iter_parent(GTK_TREE_MODEL(new_model), &iter, pdata->last_parent_iter)) { // Last ca iter is a top_level if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = NULL; } else { if (pdata->last_parent_iter) gtk_tree_iter_free (pdata->last_parent_iter); pdata->last_parent_iter = gtk_tree_iter_copy (&iter); } g_value_unset (last_parent_dn_value); gtk_tree_model_get_value (GTK_TREE_MODEL(new_model), pdata->last_parent_iter, CRL_CA_MODEL_COLUMN_DN, last_parent_dn_value); } } } gtk_tree_store_append (new_model, &iter, pdata->last_parent_iter); gtk_tree_store_set (new_model, &iter, CRL_CA_MODEL_COLUMN_ID, atoi(argv[CRL_CA_MODEL_COLUMN_ID]), CRL_CA_MODEL_COLUMN_SERIAL, atoll(argv[CRL_CA_MODEL_COLUMN_SERIAL]), CRL_CA_MODEL_COLUMN_SUBJECT, argv[CRL_CA_MODEL_COLUMN_SUBJECT], CRL_CA_MODEL_COLUMN_DN, argv[CRL_CA_MODEL_COLUMN_DN], CRL_CA_MODEL_COLUMN_PARENT_DN, argv[CRL_CA_MODEL_COLUMN_PARENT_DN], CRL_CA_MODEL_COLUMN_PEM, argv[CRL_CA_MODEL_COLUMN_PEM], -1); if (pdata->last_ca_iter) gtk_tree_iter_free (pdata->last_ca_iter); pdata->last_ca_iter = gtk_tree_iter_copy (&iter); g_free (last_dn_value); g_free (last_parent_dn_value); return 0; } void __crl_populate_ca_treeview (GtkTreeView *treeview) { GtkCellRenderer * renderer = NULL; __CrlRefreshModelAddCaUserData pdata; crl_ca_list_model = gtk_tree_store_new (CRL_CA_MODEL_COLUMN_NUMBER, G_TYPE_UINT, G_TYPE_UINT64, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); pdata.new_model = crl_ca_list_model; pdata.last_parent_iter = NULL; pdata.last_ca_iter = NULL; ca_file_foreach_ca (__crl_refresh_model_add_ca, &pdata); if (pdata.last_parent_iter) gtk_tree_iter_free (pdata.last_parent_iter); if (pdata.last_ca_iter) gtk_tree_iter_free (pdata.last_ca_iter); g_dataset_destroy (crl_ca_list_model); renderer = GTK_CELL_RENDERER (gtk_cell_renderer_text_new()); gtk_tree_view_insert_column_with_attributes (treeview, -1, _("Subject"), renderer, "markup", CRL_CA_MODEL_COLUMN_SUBJECT, NULL); gtk_tree_view_set_model (treeview, GTK_TREE_MODEL(crl_ca_list_model)); gtk_tree_view_expand_all (treeview); return; } G_MODULE_EXPORT void crl_treeview_cursor_changed_cb (GtkTreeView *treeview, gpointer userdata) { GtkTreeSelection *selection = gtk_tree_view_get_selection (treeview); if (gtk_tree_selection_count_selected_rows(selection) == 0) gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (crl_window_gtkb, "crl_ok_button")), FALSE); else gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (crl_window_gtkb, "crl_ok_button")), TRUE); } void crl_window_display (void) { GtkWidget * widget = NULL; crl_window_gtkb = gtk_builder_new(); gtk_builder_add_from_file (crl_window_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "new_crl_dialog.ui", NULL), NULL); gtk_builder_connect_signals (crl_window_gtkb, NULL); widget = GTK_WIDGET(gtk_builder_get_object (crl_window_gtkb, "new_crl_dialog")); gtk_widget_show (widget); __crl_populate_ca_treeview (GTK_TREE_VIEW(gtk_builder_get_object (crl_window_gtkb, "crl_ca_treeview"))); } G_MODULE_EXPORT void crl_cancel_clicked_cb (GtkButton *button, gpointer userdata) { GtkWidget * window = GTK_WIDGET(gtk_builder_get_object (crl_window_gtkb, "new_crl_dialog")); gtk_object_destroy(GTK_OBJECT(window)); } G_MODULE_EXPORT void crl_ok_clicked_cb (GtkButton *button, gpointer userdata) { GtkWidget *widget = NULL; gchar * filename = NULL; GtkDialog * dialog = NULL; guint64 ca_id = 0; gchar * strerror = NULL; GtkTreeView *treeview = GTK_TREE_VIEW(gtk_builder_get_object(crl_window_gtkb, "crl_ca_treeview")); GtkTreeSelection *selection = gtk_tree_view_get_selection (treeview); GValue *value = g_new0(GValue, 1); GtkTreeModel *model; GtkTreeIter iter; gtk_tree_selection_get_selected (selection, &model, &iter); gtk_tree_model_get_value (model, &iter, CRL_CA_MODEL_COLUMN_ID, value); ca_id = g_value_get_uint(value); widget = GTK_WIDGET(gtk_builder_get_object (crl_window_gtkb, "new_crl_dialog")); dialog = GTK_DIALOG (gtk_file_chooser_dialog_new (_("Export Certificate Revocation List"), GTK_WINDOW(widget), GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL)); gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE); if (gtk_dialog_run (GTK_DIALOG (dialog)) != GTK_RESPONSE_ACCEPT) { gtk_widget_destroy (GTK_WIDGET(dialog)); return; } filename = g_strdup(gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog))); gtk_widget_destroy (GTK_WIDGET(dialog)); strerror = crl_generate (ca_id, filename); if (strerror) { dialog_error (strerror); } else { } gtk_widget_destroy (GTK_WIDGET(dialog)); dialog = GTK_DIALOG(gtk_message_dialog_new (GTK_WINDOW(widget), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("CRL generated successfully"))); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (GTK_WIDGET(dialog)); dialog = GTK_DIALOG(gtk_builder_get_object (crl_window_gtkb, "new_crl_dialog")); gtk_object_destroy(GTK_OBJECT(dialog)); } #endif /*GNOMINTCLI*/ gchar * crl_generate (guint64 ca_id, gchar *filename) { time_t timestamp; gint crl_version = 0; gchar * dn = NULL; gchar * ca_pem = NULL; gchar * private_key = NULL; PkeyManageData * crypted_pkey = NULL; gchar * pem = NULL; GList * revoked_certs = NULL; GIOChannel * file = NULL; GError * error = NULL; gchar *strerror = NULL; file = g_io_channel_new_file (filename, "w", &error); g_free (filename); if (error) { return (_("There was an error while exporting CRL.")); } ca_pem = ca_file_get_public_pem_from_id (CA_FILE_ELEMENT_TYPE_CERT, ca_id); crypted_pkey = pkey_manage_get_certificate_pkey (ca_id); dn = ca_file_get_dn_from_id (CA_FILE_ELEMENT_TYPE_CERT, ca_id); timestamp = time (NULL); revoked_certs = ca_file_get_revoked_certs (ca_id, &strerror); if (strerror) { return (_("There was an error while getting revoked certificates.")); } crl_version = ca_file_begin_new_crl_transaction (1, timestamp); if (ca_id && ca_pem && crypted_pkey && dn) { private_key = pkey_manage_uncrypt (crypted_pkey, dn); if (!private_key) { g_free (ca_pem); pkey_manage_data_free (crypted_pkey); g_free (dn); g_list_foreach (revoked_certs, __crl_gfree_gfunc, NULL); g_list_free (revoked_certs); ca_file_rollback_new_crl_transaction (); return (_("There was an error while generating CRL.")); } pem = tls_generate_crl (revoked_certs, (guchar *) ca_pem, (guchar *) private_key, crl_version, timestamp, timestamp + (3600 * ca_file_policy_get_int (ca_id, "HOURS_BETWEEN_CRL_UPDATES"))); g_free (ca_pem); pkey_manage_data_free (crypted_pkey); g_free (dn); if (!pem) { g_list_foreach (revoked_certs, __crl_gfree_gfunc, NULL); g_list_free (revoked_certs); ca_file_rollback_new_crl_transaction (); return (_("There was an error while generating CRL.")); } g_io_channel_write_chars (file, pem, strlen(pem), NULL, &error); if (error) { g_list_foreach (revoked_certs, __crl_gfree_gfunc, NULL); g_list_free (revoked_certs); ca_file_rollback_new_crl_transaction (); return (_("There was an error while writing CRL.")); } g_free (pem); } else { g_list_foreach (revoked_certs, __crl_gfree_gfunc, NULL); g_list_free (revoked_certs); ca_file_rollback_new_crl_transaction (); return (_("There was an error while exporting CRL.")); } ca_file_commit_new_crl_transaction (ca_id, revoked_certs); g_list_foreach (revoked_certs, __crl_gfree_gfunc, NULL); g_list_free (revoked_certs); g_io_channel_shutdown (file, TRUE, &error); if (error) { g_io_channel_unref (file); return (_("There was an error while exporting CRL.")); } g_io_channel_unref (file); return NULL; } void __crl_gfree_gfunc (gpointer data, gpointer user_data) { g_free (data); } gnomint-1.3.0/src/new_ca_window.h0000664000175000017500000000356212672052326013707 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _NEW_CA_WINDOW_H_ #define _NEW_CA_WINDOW_H_ #ifndef GNOMINTCLI void new_ca_window_display (void); void new_ca_tab_activate (int tab_number); void on_cn_entry_changed (GtkEditable *editable, gpointer user_data) ; void on_new_ca_next1_clicked (GtkButton *widget, gpointer user_data); void on_new_ca_previous2_clicked (GtkButton *widget, gpointer user_data); void on_new_ca_next2_clicked (GtkButton *widget, gpointer user_data); void on_new_ca_previous3_clicked (GtkButton *widget, gpointer user_data); void on_new_ca_cancel_clicked (GtkButton *widget, gpointer user_data); void on_new_ca_pwd_entry_changed (GtkEntry *entry, gpointer user_data); void on_new_ca_pwd_protect_radiobutton_toggled (GtkRadioButton *radiobutton, gpointer user_data); void on_new_ca_commit_clicked (GtkButton *widg, gpointer user_data); #endif #endif gnomint-1.3.0/src/Makefile.am0000664000175000017500000000365512672052326012752 00000000000000bin_PROGRAMS = gnomint gnomint-cli bin_SCRIPTS = gnomint-upgrade-db gnomint_CFLAGS = \ -I$(top_srcdir) \ -I$(top_builddir) \ $(GNOMINT_CFLAGS) \ $(LIBGNUTLS_CFLAGS) \ $(LIBGCRYPT_CFLAGS) \ $(SQLITE_CFLAGS) \ -DPACKAGE_DATA_DIR=\""$(datadir)"\" \ -DCOMPILATION_DATE=`date +%s` \ -DHAVE_CONFIG_H gnomint_SOURCES = \ main.c \ country_table.c \ new_ca_window.c \ new_req_window.c \ new_cert.c \ creation_process_window.c \ dialog.c \ ca.c \ ca_creation.c \ tls.c \ ca_file.c \ certificate_properties.c \ ca_policy.c \ csr_creation.c \ csr_properties.c \ pkey_manage.c \ preferences-gui.c \ preferences-window.c \ crl.c \ uint160.c \ import.c \ export.c gnomint_LDADD = \ $(GNOMINT_LIBS) \ $(LIBGCRYPT_LIBS) \ $(LIBGNUTLS_LIBS) \ $(SQLITE_LIBS) \ $(LTLIBINTL) gnomint_LDFLAGS = \ -export-dynamic gnomint_cli_CFLAGS = \ -I$(top_srcdir) \ -I$(top_builddir) \ $(GNOMINTCLI_CFLAGS) \ $(LIBGCRYPT_LIBS) \ $(LIBGNUTLS_CFLAGS) \ $(SQLITE_CFLAGS) \ -DPACKAGE_DATA_DIR=\""$(datadir)"\" \ -DCOMPILATION_DATE=`date +%s` \ -DHAVE_CONFIG_H -DGNOMINTCLI gnomint_cli_SOURCES = \ dialog.c \ gnomint-cli.c \ export.c \ ca-cli.c \ ca-cli-callbacks.c \ ca_creation.c \ ca_file.c \ ca_policy.c \ crl.c \ csr_creation.c \ import.c \ new_cert.c \ preferences.c \ pkey_manage.c \ tls.c \ uint160.c gnomint_cli_LDADD = \ $(GNOMINTCLI_LIBS) \ $(LIBGNUTLS_LIBS) \ $(SQLITE_LIBS) \ $(READLINE_LIBS) \ $(LTLIBINTL) EXTRA_DIST = \ gnomint-upgrade-db \ ca_creation.h \ ca_file.h \ ca.h \ ca_policy.h \ certificate_properties.h \ country_table.h \ csr_creation.h \ csr_properties.h \ dialog.h \ export.h \ main.h \ creation_process_window.h \ new_ca_window.h \ new_req_window.h \ new_cert.h \ tls.h\ pkey_manage.h \ preferences.h \ preferences-gui.h \ preferences-window.h \ crl.h \ uint160.h \ import.h \ ca-cli.h \ ca-cli-callbacks.h gnomint-1.3.0/src/csr_properties.h0000664000175000017500000000207412672052326014124 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _CSR_PROPERTIES_H_ #define _CSR_PROPERTIES_H_ void csr_properties_display (const char *, gboolean); void csr_properties_close_clicked (const char *csr_pem); #endif gnomint-1.3.0/src/Makefile.in0000664000175000017500000030731112672104235012754 00000000000000# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ bin_PROGRAMS = gnomint$(EXEEXT) gnomint-cli$(EXEEXT) subdir = src ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/isc-posix.m4 $(top_srcdir)/m4/libtool.m4 \ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" PROGRAMS = $(bin_PROGRAMS) am_gnomint_OBJECTS = gnomint-main.$(OBJEXT) \ gnomint-country_table.$(OBJEXT) \ gnomint-new_ca_window.$(OBJEXT) \ gnomint-new_req_window.$(OBJEXT) gnomint-new_cert.$(OBJEXT) \ gnomint-creation_process_window.$(OBJEXT) \ gnomint-dialog.$(OBJEXT) gnomint-ca.$(OBJEXT) \ gnomint-ca_creation.$(OBJEXT) gnomint-tls.$(OBJEXT) \ gnomint-ca_file.$(OBJEXT) \ gnomint-certificate_properties.$(OBJEXT) \ gnomint-ca_policy.$(OBJEXT) gnomint-csr_creation.$(OBJEXT) \ gnomint-csr_properties.$(OBJEXT) gnomint-pkey_manage.$(OBJEXT) \ gnomint-preferences-gui.$(OBJEXT) \ gnomint-preferences-window.$(OBJEXT) gnomint-crl.$(OBJEXT) \ gnomint-uint160.$(OBJEXT) gnomint-import.$(OBJEXT) \ gnomint-export.$(OBJEXT) gnomint_OBJECTS = $(am_gnomint_OBJECTS) am__DEPENDENCIES_1 = gnomint_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent am__v_lt_1 = gnomint_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(gnomint_CFLAGS) \ $(CFLAGS) $(gnomint_LDFLAGS) $(LDFLAGS) -o $@ am_gnomint_cli_OBJECTS = gnomint_cli-dialog.$(OBJEXT) \ gnomint_cli-gnomint-cli.$(OBJEXT) gnomint_cli-export.$(OBJEXT) \ gnomint_cli-ca-cli.$(OBJEXT) \ gnomint_cli-ca-cli-callbacks.$(OBJEXT) \ gnomint_cli-ca_creation.$(OBJEXT) \ gnomint_cli-ca_file.$(OBJEXT) gnomint_cli-ca_policy.$(OBJEXT) \ gnomint_cli-crl.$(OBJEXT) gnomint_cli-csr_creation.$(OBJEXT) \ gnomint_cli-import.$(OBJEXT) gnomint_cli-new_cert.$(OBJEXT) \ gnomint_cli-preferences.$(OBJEXT) \ gnomint_cli-pkey_manage.$(OBJEXT) gnomint_cli-tls.$(OBJEXT) \ gnomint_cli-uint160.$(OBJEXT) gnomint_cli_OBJECTS = $(am_gnomint_cli_OBJECTS) gnomint_cli_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) gnomint_cli_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(gnomint_cli_CFLAGS) \ $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } SCRIPTS = $(bin_SCRIPTS) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ $(AM_CFLAGS) $(CFLAGS) AM_V_CC = $(am__v_CC_@AM_V@) am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) am__v_CC_0 = @echo " CC " $@; am__v_CC_1 = CCLD = $(CC) LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(AM_LDFLAGS) $(LDFLAGS) -o $@ AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = SOURCES = $(gnomint_SOURCES) $(gnomint_cli_SOURCES) DIST_SOURCES = $(gnomint_SOURCES) $(gnomint_cli_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is # *not* preserved. am__uniquify_input = $(AWK) '\ BEGIN { nonempty = 0; } \ { items[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in items) print i; }; } \ ' # Make sure the list of sources is unique. This is necessary because, # e.g., the same source file might be shared among _SOURCES variables # for different programs/libraries. am__define_uniq_tagged_files = \ list='$(am__tagged_files)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` ETAGS = etags CTAGS = ctags am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOMINTCLI_CFLAGS = @GNOMINTCLI_CFLAGS@ GNOMINTCLI_LIBS = @GNOMINTCLI_LIBS@ GNOMINT_CFLAGS = @GNOMINT_CFLAGS@ GNOMINT_LIBS = @GNOMINT_LIBS@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBGCRYPT_CFLAGS = @LIBGCRYPT_CFLAGS@ LIBGCRYPT_CONFIG = @LIBGCRYPT_CONFIG@ LIBGCRYPT_LIBS = @LIBGCRYPT_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ READLINE_LIBS = @READLINE_LIBS@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ bin_SCRIPTS = gnomint-upgrade-db gnomint_CFLAGS = \ -I$(top_srcdir) \ -I$(top_builddir) \ $(GNOMINT_CFLAGS) \ $(LIBGNUTLS_CFLAGS) \ $(LIBGCRYPT_CFLAGS) \ $(SQLITE_CFLAGS) \ -DPACKAGE_DATA_DIR=\""$(datadir)"\" \ -DCOMPILATION_DATE=`date +%s` \ -DHAVE_CONFIG_H gnomint_SOURCES = \ main.c \ country_table.c \ new_ca_window.c \ new_req_window.c \ new_cert.c \ creation_process_window.c \ dialog.c \ ca.c \ ca_creation.c \ tls.c \ ca_file.c \ certificate_properties.c \ ca_policy.c \ csr_creation.c \ csr_properties.c \ pkey_manage.c \ preferences-gui.c \ preferences-window.c \ crl.c \ uint160.c \ import.c \ export.c gnomint_LDADD = \ $(GNOMINT_LIBS) \ $(LIBGCRYPT_LIBS) \ $(LIBGNUTLS_LIBS) \ $(SQLITE_LIBS) \ $(LTLIBINTL) gnomint_LDFLAGS = \ -export-dynamic gnomint_cli_CFLAGS = \ -I$(top_srcdir) \ -I$(top_builddir) \ $(GNOMINTCLI_CFLAGS) \ $(LIBGCRYPT_LIBS) \ $(LIBGNUTLS_CFLAGS) \ $(SQLITE_CFLAGS) \ -DPACKAGE_DATA_DIR=\""$(datadir)"\" \ -DCOMPILATION_DATE=`date +%s` \ -DHAVE_CONFIG_H -DGNOMINTCLI gnomint_cli_SOURCES = \ dialog.c \ gnomint-cli.c \ export.c \ ca-cli.c \ ca-cli-callbacks.c \ ca_creation.c \ ca_file.c \ ca_policy.c \ crl.c \ csr_creation.c \ import.c \ new_cert.c \ preferences.c \ pkey_manage.c \ tls.c \ uint160.c gnomint_cli_LDADD = \ $(GNOMINTCLI_LIBS) \ $(LIBGNUTLS_LIBS) \ $(SQLITE_LIBS) \ $(READLINE_LIBS) \ $(LTLIBINTL) EXTRA_DIST = \ gnomint-upgrade-db \ ca_creation.h \ ca_file.h \ ca.h \ ca_policy.h \ certificate_properties.h \ country_table.h \ csr_creation.h \ csr_properties.h \ dialog.h \ export.h \ main.h \ creation_process_window.h \ new_ca_window.h \ new_req_window.h \ new_cert.h \ tls.h\ pkey_manage.h \ preferences.h \ preferences-gui.h \ preferences-window.h \ crl.h \ uint160.h \ import.h \ ca-cli.h \ ca-cli-callbacks.h all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign src/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ fi; \ for p in $$list; do echo "$$p $$p"; done | \ sed 's/$(EXEEXT)$$//' | \ while read p p1; do if test -f $$p \ || test -f $$p1 \ ; then echo "$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n;h' \ -e 's|.*|.|' \ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) files[d] = files[d] " " $$1; \ else { print "f", $$3 "/" $$4, $$1; } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ -e 's/$$/$(EXEEXT)/' \ `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \ echo " rm -f" $$list; \ rm -f $$list || exit $$?; \ test -n "$(EXEEXT)" || exit 0; \ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list gnomint$(EXEEXT): $(gnomint_OBJECTS) $(gnomint_DEPENDENCIES) $(EXTRA_gnomint_DEPENDENCIES) @rm -f gnomint$(EXEEXT) $(AM_V_CCLD)$(gnomint_LINK) $(gnomint_OBJECTS) $(gnomint_LDADD) $(LIBS) gnomint-cli$(EXEEXT): $(gnomint_cli_OBJECTS) $(gnomint_cli_DEPENDENCIES) $(EXTRA_gnomint_cli_DEPENDENCIES) @rm -f gnomint-cli$(EXEEXT) $(AM_V_CCLD)$(gnomint_cli_LINK) $(gnomint_cli_OBJECTS) $(gnomint_cli_LDADD) $(LIBS) install-binSCRIPTS: $(bin_SCRIPTS) @$(NORMAL_INSTALL) @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n' \ -e 'h;s|.*|.|' \ -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) { files[d] = files[d] " " $$1; \ if (++n[d] == $(am__install_max)) { \ print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ else { print "f", d "/" $$4, $$1 } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bindir)$$dir'"; \ $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binSCRIPTS: @$(NORMAL_UNINSTALL) @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 's,.*/,,;$(transform)'`; \ dir='$(DESTDIR)$(bindir)'; $(am__uninstall_files_from_dir) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-ca.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-ca_creation.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-ca_file.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-ca_policy.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-certificate_properties.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-country_table.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-creation_process_window.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-crl.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-csr_creation.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-csr_properties.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-dialog.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-export.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-import.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-main.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-new_ca_window.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-new_cert.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-new_req_window.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-pkey_manage.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-preferences-gui.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-preferences-window.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-tls.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint-uint160.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-ca-cli-callbacks.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-ca-cli.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-ca_creation.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-ca_file.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-ca_policy.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-crl.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-csr_creation.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-dialog.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-export.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-gnomint-cli.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-import.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-new_cert.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-pkey_manage.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-preferences.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-tls.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gnomint_cli-uint160.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< .c.obj: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` .c.lo: @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< gnomint-main.o: main.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-main.o -MD -MP -MF $(DEPDIR)/gnomint-main.Tpo -c -o gnomint-main.o `test -f 'main.c' || echo '$(srcdir)/'`main.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-main.Tpo $(DEPDIR)/gnomint-main.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='main.c' object='gnomint-main.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-main.o `test -f 'main.c' || echo '$(srcdir)/'`main.c gnomint-main.obj: main.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-main.obj -MD -MP -MF $(DEPDIR)/gnomint-main.Tpo -c -o gnomint-main.obj `if test -f 'main.c'; then $(CYGPATH_W) 'main.c'; else $(CYGPATH_W) '$(srcdir)/main.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-main.Tpo $(DEPDIR)/gnomint-main.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='main.c' object='gnomint-main.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-main.obj `if test -f 'main.c'; then $(CYGPATH_W) 'main.c'; else $(CYGPATH_W) '$(srcdir)/main.c'; fi` gnomint-country_table.o: country_table.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-country_table.o -MD -MP -MF $(DEPDIR)/gnomint-country_table.Tpo -c -o gnomint-country_table.o `test -f 'country_table.c' || echo '$(srcdir)/'`country_table.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-country_table.Tpo $(DEPDIR)/gnomint-country_table.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='country_table.c' object='gnomint-country_table.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-country_table.o `test -f 'country_table.c' || echo '$(srcdir)/'`country_table.c gnomint-country_table.obj: country_table.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-country_table.obj -MD -MP -MF $(DEPDIR)/gnomint-country_table.Tpo -c -o gnomint-country_table.obj `if test -f 'country_table.c'; then $(CYGPATH_W) 'country_table.c'; else $(CYGPATH_W) '$(srcdir)/country_table.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-country_table.Tpo $(DEPDIR)/gnomint-country_table.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='country_table.c' object='gnomint-country_table.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-country_table.obj `if test -f 'country_table.c'; then $(CYGPATH_W) 'country_table.c'; else $(CYGPATH_W) '$(srcdir)/country_table.c'; fi` gnomint-new_ca_window.o: new_ca_window.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-new_ca_window.o -MD -MP -MF $(DEPDIR)/gnomint-new_ca_window.Tpo -c -o gnomint-new_ca_window.o `test -f 'new_ca_window.c' || echo '$(srcdir)/'`new_ca_window.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-new_ca_window.Tpo $(DEPDIR)/gnomint-new_ca_window.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='new_ca_window.c' object='gnomint-new_ca_window.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-new_ca_window.o `test -f 'new_ca_window.c' || echo '$(srcdir)/'`new_ca_window.c gnomint-new_ca_window.obj: new_ca_window.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-new_ca_window.obj -MD -MP -MF $(DEPDIR)/gnomint-new_ca_window.Tpo -c -o gnomint-new_ca_window.obj `if test -f 'new_ca_window.c'; then $(CYGPATH_W) 'new_ca_window.c'; else $(CYGPATH_W) '$(srcdir)/new_ca_window.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-new_ca_window.Tpo $(DEPDIR)/gnomint-new_ca_window.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='new_ca_window.c' object='gnomint-new_ca_window.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-new_ca_window.obj `if test -f 'new_ca_window.c'; then $(CYGPATH_W) 'new_ca_window.c'; else $(CYGPATH_W) '$(srcdir)/new_ca_window.c'; fi` gnomint-new_req_window.o: new_req_window.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-new_req_window.o -MD -MP -MF $(DEPDIR)/gnomint-new_req_window.Tpo -c -o gnomint-new_req_window.o `test -f 'new_req_window.c' || echo '$(srcdir)/'`new_req_window.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-new_req_window.Tpo $(DEPDIR)/gnomint-new_req_window.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='new_req_window.c' object='gnomint-new_req_window.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-new_req_window.o `test -f 'new_req_window.c' || echo '$(srcdir)/'`new_req_window.c gnomint-new_req_window.obj: new_req_window.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-new_req_window.obj -MD -MP -MF $(DEPDIR)/gnomint-new_req_window.Tpo -c -o gnomint-new_req_window.obj `if test -f 'new_req_window.c'; then $(CYGPATH_W) 'new_req_window.c'; else $(CYGPATH_W) '$(srcdir)/new_req_window.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-new_req_window.Tpo $(DEPDIR)/gnomint-new_req_window.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='new_req_window.c' object='gnomint-new_req_window.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-new_req_window.obj `if test -f 'new_req_window.c'; then $(CYGPATH_W) 'new_req_window.c'; else $(CYGPATH_W) '$(srcdir)/new_req_window.c'; fi` gnomint-new_cert.o: new_cert.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-new_cert.o -MD -MP -MF $(DEPDIR)/gnomint-new_cert.Tpo -c -o gnomint-new_cert.o `test -f 'new_cert.c' || echo '$(srcdir)/'`new_cert.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-new_cert.Tpo $(DEPDIR)/gnomint-new_cert.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='new_cert.c' object='gnomint-new_cert.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-new_cert.o `test -f 'new_cert.c' || echo '$(srcdir)/'`new_cert.c gnomint-new_cert.obj: new_cert.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-new_cert.obj -MD -MP -MF $(DEPDIR)/gnomint-new_cert.Tpo -c -o gnomint-new_cert.obj `if test -f 'new_cert.c'; then $(CYGPATH_W) 'new_cert.c'; else $(CYGPATH_W) '$(srcdir)/new_cert.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-new_cert.Tpo $(DEPDIR)/gnomint-new_cert.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='new_cert.c' object='gnomint-new_cert.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-new_cert.obj `if test -f 'new_cert.c'; then $(CYGPATH_W) 'new_cert.c'; else $(CYGPATH_W) '$(srcdir)/new_cert.c'; fi` gnomint-creation_process_window.o: creation_process_window.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-creation_process_window.o -MD -MP -MF $(DEPDIR)/gnomint-creation_process_window.Tpo -c -o gnomint-creation_process_window.o `test -f 'creation_process_window.c' || echo '$(srcdir)/'`creation_process_window.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-creation_process_window.Tpo $(DEPDIR)/gnomint-creation_process_window.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='creation_process_window.c' object='gnomint-creation_process_window.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-creation_process_window.o `test -f 'creation_process_window.c' || echo '$(srcdir)/'`creation_process_window.c gnomint-creation_process_window.obj: creation_process_window.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-creation_process_window.obj -MD -MP -MF $(DEPDIR)/gnomint-creation_process_window.Tpo -c -o gnomint-creation_process_window.obj `if test -f 'creation_process_window.c'; then $(CYGPATH_W) 'creation_process_window.c'; else $(CYGPATH_W) '$(srcdir)/creation_process_window.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-creation_process_window.Tpo $(DEPDIR)/gnomint-creation_process_window.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='creation_process_window.c' object='gnomint-creation_process_window.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-creation_process_window.obj `if test -f 'creation_process_window.c'; then $(CYGPATH_W) 'creation_process_window.c'; else $(CYGPATH_W) '$(srcdir)/creation_process_window.c'; fi` gnomint-dialog.o: dialog.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-dialog.o -MD -MP -MF $(DEPDIR)/gnomint-dialog.Tpo -c -o gnomint-dialog.o `test -f 'dialog.c' || echo '$(srcdir)/'`dialog.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-dialog.Tpo $(DEPDIR)/gnomint-dialog.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dialog.c' object='gnomint-dialog.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-dialog.o `test -f 'dialog.c' || echo '$(srcdir)/'`dialog.c gnomint-dialog.obj: dialog.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-dialog.obj -MD -MP -MF $(DEPDIR)/gnomint-dialog.Tpo -c -o gnomint-dialog.obj `if test -f 'dialog.c'; then $(CYGPATH_W) 'dialog.c'; else $(CYGPATH_W) '$(srcdir)/dialog.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-dialog.Tpo $(DEPDIR)/gnomint-dialog.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dialog.c' object='gnomint-dialog.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-dialog.obj `if test -f 'dialog.c'; then $(CYGPATH_W) 'dialog.c'; else $(CYGPATH_W) '$(srcdir)/dialog.c'; fi` gnomint-ca.o: ca.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-ca.o -MD -MP -MF $(DEPDIR)/gnomint-ca.Tpo -c -o gnomint-ca.o `test -f 'ca.c' || echo '$(srcdir)/'`ca.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-ca.Tpo $(DEPDIR)/gnomint-ca.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca.c' object='gnomint-ca.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-ca.o `test -f 'ca.c' || echo '$(srcdir)/'`ca.c gnomint-ca.obj: ca.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-ca.obj -MD -MP -MF $(DEPDIR)/gnomint-ca.Tpo -c -o gnomint-ca.obj `if test -f 'ca.c'; then $(CYGPATH_W) 'ca.c'; else $(CYGPATH_W) '$(srcdir)/ca.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-ca.Tpo $(DEPDIR)/gnomint-ca.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca.c' object='gnomint-ca.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-ca.obj `if test -f 'ca.c'; then $(CYGPATH_W) 'ca.c'; else $(CYGPATH_W) '$(srcdir)/ca.c'; fi` gnomint-ca_creation.o: ca_creation.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-ca_creation.o -MD -MP -MF $(DEPDIR)/gnomint-ca_creation.Tpo -c -o gnomint-ca_creation.o `test -f 'ca_creation.c' || echo '$(srcdir)/'`ca_creation.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-ca_creation.Tpo $(DEPDIR)/gnomint-ca_creation.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_creation.c' object='gnomint-ca_creation.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-ca_creation.o `test -f 'ca_creation.c' || echo '$(srcdir)/'`ca_creation.c gnomint-ca_creation.obj: ca_creation.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-ca_creation.obj -MD -MP -MF $(DEPDIR)/gnomint-ca_creation.Tpo -c -o gnomint-ca_creation.obj `if test -f 'ca_creation.c'; then $(CYGPATH_W) 'ca_creation.c'; else $(CYGPATH_W) '$(srcdir)/ca_creation.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-ca_creation.Tpo $(DEPDIR)/gnomint-ca_creation.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_creation.c' object='gnomint-ca_creation.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-ca_creation.obj `if test -f 'ca_creation.c'; then $(CYGPATH_W) 'ca_creation.c'; else $(CYGPATH_W) '$(srcdir)/ca_creation.c'; fi` gnomint-tls.o: tls.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-tls.o -MD -MP -MF $(DEPDIR)/gnomint-tls.Tpo -c -o gnomint-tls.o `test -f 'tls.c' || echo '$(srcdir)/'`tls.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-tls.Tpo $(DEPDIR)/gnomint-tls.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tls.c' object='gnomint-tls.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-tls.o `test -f 'tls.c' || echo '$(srcdir)/'`tls.c gnomint-tls.obj: tls.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-tls.obj -MD -MP -MF $(DEPDIR)/gnomint-tls.Tpo -c -o gnomint-tls.obj `if test -f 'tls.c'; then $(CYGPATH_W) 'tls.c'; else $(CYGPATH_W) '$(srcdir)/tls.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-tls.Tpo $(DEPDIR)/gnomint-tls.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tls.c' object='gnomint-tls.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-tls.obj `if test -f 'tls.c'; then $(CYGPATH_W) 'tls.c'; else $(CYGPATH_W) '$(srcdir)/tls.c'; fi` gnomint-ca_file.o: ca_file.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-ca_file.o -MD -MP -MF $(DEPDIR)/gnomint-ca_file.Tpo -c -o gnomint-ca_file.o `test -f 'ca_file.c' || echo '$(srcdir)/'`ca_file.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-ca_file.Tpo $(DEPDIR)/gnomint-ca_file.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_file.c' object='gnomint-ca_file.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-ca_file.o `test -f 'ca_file.c' || echo '$(srcdir)/'`ca_file.c gnomint-ca_file.obj: ca_file.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-ca_file.obj -MD -MP -MF $(DEPDIR)/gnomint-ca_file.Tpo -c -o gnomint-ca_file.obj `if test -f 'ca_file.c'; then $(CYGPATH_W) 'ca_file.c'; else $(CYGPATH_W) '$(srcdir)/ca_file.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-ca_file.Tpo $(DEPDIR)/gnomint-ca_file.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_file.c' object='gnomint-ca_file.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-ca_file.obj `if test -f 'ca_file.c'; then $(CYGPATH_W) 'ca_file.c'; else $(CYGPATH_W) '$(srcdir)/ca_file.c'; fi` gnomint-certificate_properties.o: certificate_properties.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-certificate_properties.o -MD -MP -MF $(DEPDIR)/gnomint-certificate_properties.Tpo -c -o gnomint-certificate_properties.o `test -f 'certificate_properties.c' || echo '$(srcdir)/'`certificate_properties.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-certificate_properties.Tpo $(DEPDIR)/gnomint-certificate_properties.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='certificate_properties.c' object='gnomint-certificate_properties.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-certificate_properties.o `test -f 'certificate_properties.c' || echo '$(srcdir)/'`certificate_properties.c gnomint-certificate_properties.obj: certificate_properties.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-certificate_properties.obj -MD -MP -MF $(DEPDIR)/gnomint-certificate_properties.Tpo -c -o gnomint-certificate_properties.obj `if test -f 'certificate_properties.c'; then $(CYGPATH_W) 'certificate_properties.c'; else $(CYGPATH_W) '$(srcdir)/certificate_properties.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-certificate_properties.Tpo $(DEPDIR)/gnomint-certificate_properties.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='certificate_properties.c' object='gnomint-certificate_properties.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-certificate_properties.obj `if test -f 'certificate_properties.c'; then $(CYGPATH_W) 'certificate_properties.c'; else $(CYGPATH_W) '$(srcdir)/certificate_properties.c'; fi` gnomint-ca_policy.o: ca_policy.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-ca_policy.o -MD -MP -MF $(DEPDIR)/gnomint-ca_policy.Tpo -c -o gnomint-ca_policy.o `test -f 'ca_policy.c' || echo '$(srcdir)/'`ca_policy.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-ca_policy.Tpo $(DEPDIR)/gnomint-ca_policy.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_policy.c' object='gnomint-ca_policy.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-ca_policy.o `test -f 'ca_policy.c' || echo '$(srcdir)/'`ca_policy.c gnomint-ca_policy.obj: ca_policy.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-ca_policy.obj -MD -MP -MF $(DEPDIR)/gnomint-ca_policy.Tpo -c -o gnomint-ca_policy.obj `if test -f 'ca_policy.c'; then $(CYGPATH_W) 'ca_policy.c'; else $(CYGPATH_W) '$(srcdir)/ca_policy.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-ca_policy.Tpo $(DEPDIR)/gnomint-ca_policy.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_policy.c' object='gnomint-ca_policy.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-ca_policy.obj `if test -f 'ca_policy.c'; then $(CYGPATH_W) 'ca_policy.c'; else $(CYGPATH_W) '$(srcdir)/ca_policy.c'; fi` gnomint-csr_creation.o: csr_creation.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-csr_creation.o -MD -MP -MF $(DEPDIR)/gnomint-csr_creation.Tpo -c -o gnomint-csr_creation.o `test -f 'csr_creation.c' || echo '$(srcdir)/'`csr_creation.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-csr_creation.Tpo $(DEPDIR)/gnomint-csr_creation.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='csr_creation.c' object='gnomint-csr_creation.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-csr_creation.o `test -f 'csr_creation.c' || echo '$(srcdir)/'`csr_creation.c gnomint-csr_creation.obj: csr_creation.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-csr_creation.obj -MD -MP -MF $(DEPDIR)/gnomint-csr_creation.Tpo -c -o gnomint-csr_creation.obj `if test -f 'csr_creation.c'; then $(CYGPATH_W) 'csr_creation.c'; else $(CYGPATH_W) '$(srcdir)/csr_creation.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-csr_creation.Tpo $(DEPDIR)/gnomint-csr_creation.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='csr_creation.c' object='gnomint-csr_creation.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-csr_creation.obj `if test -f 'csr_creation.c'; then $(CYGPATH_W) 'csr_creation.c'; else $(CYGPATH_W) '$(srcdir)/csr_creation.c'; fi` gnomint-csr_properties.o: csr_properties.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-csr_properties.o -MD -MP -MF $(DEPDIR)/gnomint-csr_properties.Tpo -c -o gnomint-csr_properties.o `test -f 'csr_properties.c' || echo '$(srcdir)/'`csr_properties.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-csr_properties.Tpo $(DEPDIR)/gnomint-csr_properties.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='csr_properties.c' object='gnomint-csr_properties.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-csr_properties.o `test -f 'csr_properties.c' || echo '$(srcdir)/'`csr_properties.c gnomint-csr_properties.obj: csr_properties.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-csr_properties.obj -MD -MP -MF $(DEPDIR)/gnomint-csr_properties.Tpo -c -o gnomint-csr_properties.obj `if test -f 'csr_properties.c'; then $(CYGPATH_W) 'csr_properties.c'; else $(CYGPATH_W) '$(srcdir)/csr_properties.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-csr_properties.Tpo $(DEPDIR)/gnomint-csr_properties.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='csr_properties.c' object='gnomint-csr_properties.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-csr_properties.obj `if test -f 'csr_properties.c'; then $(CYGPATH_W) 'csr_properties.c'; else $(CYGPATH_W) '$(srcdir)/csr_properties.c'; fi` gnomint-pkey_manage.o: pkey_manage.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-pkey_manage.o -MD -MP -MF $(DEPDIR)/gnomint-pkey_manage.Tpo -c -o gnomint-pkey_manage.o `test -f 'pkey_manage.c' || echo '$(srcdir)/'`pkey_manage.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-pkey_manage.Tpo $(DEPDIR)/gnomint-pkey_manage.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pkey_manage.c' object='gnomint-pkey_manage.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-pkey_manage.o `test -f 'pkey_manage.c' || echo '$(srcdir)/'`pkey_manage.c gnomint-pkey_manage.obj: pkey_manage.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-pkey_manage.obj -MD -MP -MF $(DEPDIR)/gnomint-pkey_manage.Tpo -c -o gnomint-pkey_manage.obj `if test -f 'pkey_manage.c'; then $(CYGPATH_W) 'pkey_manage.c'; else $(CYGPATH_W) '$(srcdir)/pkey_manage.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-pkey_manage.Tpo $(DEPDIR)/gnomint-pkey_manage.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pkey_manage.c' object='gnomint-pkey_manage.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-pkey_manage.obj `if test -f 'pkey_manage.c'; then $(CYGPATH_W) 'pkey_manage.c'; else $(CYGPATH_W) '$(srcdir)/pkey_manage.c'; fi` gnomint-preferences-gui.o: preferences-gui.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-preferences-gui.o -MD -MP -MF $(DEPDIR)/gnomint-preferences-gui.Tpo -c -o gnomint-preferences-gui.o `test -f 'preferences-gui.c' || echo '$(srcdir)/'`preferences-gui.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-preferences-gui.Tpo $(DEPDIR)/gnomint-preferences-gui.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='preferences-gui.c' object='gnomint-preferences-gui.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-preferences-gui.o `test -f 'preferences-gui.c' || echo '$(srcdir)/'`preferences-gui.c gnomint-preferences-gui.obj: preferences-gui.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-preferences-gui.obj -MD -MP -MF $(DEPDIR)/gnomint-preferences-gui.Tpo -c -o gnomint-preferences-gui.obj `if test -f 'preferences-gui.c'; then $(CYGPATH_W) 'preferences-gui.c'; else $(CYGPATH_W) '$(srcdir)/preferences-gui.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-preferences-gui.Tpo $(DEPDIR)/gnomint-preferences-gui.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='preferences-gui.c' object='gnomint-preferences-gui.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-preferences-gui.obj `if test -f 'preferences-gui.c'; then $(CYGPATH_W) 'preferences-gui.c'; else $(CYGPATH_W) '$(srcdir)/preferences-gui.c'; fi` gnomint-preferences-window.o: preferences-window.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-preferences-window.o -MD -MP -MF $(DEPDIR)/gnomint-preferences-window.Tpo -c -o gnomint-preferences-window.o `test -f 'preferences-window.c' || echo '$(srcdir)/'`preferences-window.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-preferences-window.Tpo $(DEPDIR)/gnomint-preferences-window.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='preferences-window.c' object='gnomint-preferences-window.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-preferences-window.o `test -f 'preferences-window.c' || echo '$(srcdir)/'`preferences-window.c gnomint-preferences-window.obj: preferences-window.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-preferences-window.obj -MD -MP -MF $(DEPDIR)/gnomint-preferences-window.Tpo -c -o gnomint-preferences-window.obj `if test -f 'preferences-window.c'; then $(CYGPATH_W) 'preferences-window.c'; else $(CYGPATH_W) '$(srcdir)/preferences-window.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-preferences-window.Tpo $(DEPDIR)/gnomint-preferences-window.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='preferences-window.c' object='gnomint-preferences-window.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-preferences-window.obj `if test -f 'preferences-window.c'; then $(CYGPATH_W) 'preferences-window.c'; else $(CYGPATH_W) '$(srcdir)/preferences-window.c'; fi` gnomint-crl.o: crl.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-crl.o -MD -MP -MF $(DEPDIR)/gnomint-crl.Tpo -c -o gnomint-crl.o `test -f 'crl.c' || echo '$(srcdir)/'`crl.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-crl.Tpo $(DEPDIR)/gnomint-crl.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='crl.c' object='gnomint-crl.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-crl.o `test -f 'crl.c' || echo '$(srcdir)/'`crl.c gnomint-crl.obj: crl.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-crl.obj -MD -MP -MF $(DEPDIR)/gnomint-crl.Tpo -c -o gnomint-crl.obj `if test -f 'crl.c'; then $(CYGPATH_W) 'crl.c'; else $(CYGPATH_W) '$(srcdir)/crl.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-crl.Tpo $(DEPDIR)/gnomint-crl.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='crl.c' object='gnomint-crl.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-crl.obj `if test -f 'crl.c'; then $(CYGPATH_W) 'crl.c'; else $(CYGPATH_W) '$(srcdir)/crl.c'; fi` gnomint-uint160.o: uint160.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-uint160.o -MD -MP -MF $(DEPDIR)/gnomint-uint160.Tpo -c -o gnomint-uint160.o `test -f 'uint160.c' || echo '$(srcdir)/'`uint160.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-uint160.Tpo $(DEPDIR)/gnomint-uint160.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='uint160.c' object='gnomint-uint160.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-uint160.o `test -f 'uint160.c' || echo '$(srcdir)/'`uint160.c gnomint-uint160.obj: uint160.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-uint160.obj -MD -MP -MF $(DEPDIR)/gnomint-uint160.Tpo -c -o gnomint-uint160.obj `if test -f 'uint160.c'; then $(CYGPATH_W) 'uint160.c'; else $(CYGPATH_W) '$(srcdir)/uint160.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-uint160.Tpo $(DEPDIR)/gnomint-uint160.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='uint160.c' object='gnomint-uint160.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-uint160.obj `if test -f 'uint160.c'; then $(CYGPATH_W) 'uint160.c'; else $(CYGPATH_W) '$(srcdir)/uint160.c'; fi` gnomint-import.o: import.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-import.o -MD -MP -MF $(DEPDIR)/gnomint-import.Tpo -c -o gnomint-import.o `test -f 'import.c' || echo '$(srcdir)/'`import.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-import.Tpo $(DEPDIR)/gnomint-import.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='import.c' object='gnomint-import.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-import.o `test -f 'import.c' || echo '$(srcdir)/'`import.c gnomint-import.obj: import.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-import.obj -MD -MP -MF $(DEPDIR)/gnomint-import.Tpo -c -o gnomint-import.obj `if test -f 'import.c'; then $(CYGPATH_W) 'import.c'; else $(CYGPATH_W) '$(srcdir)/import.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-import.Tpo $(DEPDIR)/gnomint-import.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='import.c' object='gnomint-import.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-import.obj `if test -f 'import.c'; then $(CYGPATH_W) 'import.c'; else $(CYGPATH_W) '$(srcdir)/import.c'; fi` gnomint-export.o: export.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-export.o -MD -MP -MF $(DEPDIR)/gnomint-export.Tpo -c -o gnomint-export.o `test -f 'export.c' || echo '$(srcdir)/'`export.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-export.Tpo $(DEPDIR)/gnomint-export.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='export.c' object='gnomint-export.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-export.o `test -f 'export.c' || echo '$(srcdir)/'`export.c gnomint-export.obj: export.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -MT gnomint-export.obj -MD -MP -MF $(DEPDIR)/gnomint-export.Tpo -c -o gnomint-export.obj `if test -f 'export.c'; then $(CYGPATH_W) 'export.c'; else $(CYGPATH_W) '$(srcdir)/export.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint-export.Tpo $(DEPDIR)/gnomint-export.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='export.c' object='gnomint-export.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_CFLAGS) $(CFLAGS) -c -o gnomint-export.obj `if test -f 'export.c'; then $(CYGPATH_W) 'export.c'; else $(CYGPATH_W) '$(srcdir)/export.c'; fi` gnomint_cli-dialog.o: dialog.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-dialog.o -MD -MP -MF $(DEPDIR)/gnomint_cli-dialog.Tpo -c -o gnomint_cli-dialog.o `test -f 'dialog.c' || echo '$(srcdir)/'`dialog.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-dialog.Tpo $(DEPDIR)/gnomint_cli-dialog.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dialog.c' object='gnomint_cli-dialog.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-dialog.o `test -f 'dialog.c' || echo '$(srcdir)/'`dialog.c gnomint_cli-dialog.obj: dialog.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-dialog.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-dialog.Tpo -c -o gnomint_cli-dialog.obj `if test -f 'dialog.c'; then $(CYGPATH_W) 'dialog.c'; else $(CYGPATH_W) '$(srcdir)/dialog.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-dialog.Tpo $(DEPDIR)/gnomint_cli-dialog.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dialog.c' object='gnomint_cli-dialog.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-dialog.obj `if test -f 'dialog.c'; then $(CYGPATH_W) 'dialog.c'; else $(CYGPATH_W) '$(srcdir)/dialog.c'; fi` gnomint_cli-gnomint-cli.o: gnomint-cli.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-gnomint-cli.o -MD -MP -MF $(DEPDIR)/gnomint_cli-gnomint-cli.Tpo -c -o gnomint_cli-gnomint-cli.o `test -f 'gnomint-cli.c' || echo '$(srcdir)/'`gnomint-cli.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-gnomint-cli.Tpo $(DEPDIR)/gnomint_cli-gnomint-cli.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gnomint-cli.c' object='gnomint_cli-gnomint-cli.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-gnomint-cli.o `test -f 'gnomint-cli.c' || echo '$(srcdir)/'`gnomint-cli.c gnomint_cli-gnomint-cli.obj: gnomint-cli.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-gnomint-cli.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-gnomint-cli.Tpo -c -o gnomint_cli-gnomint-cli.obj `if test -f 'gnomint-cli.c'; then $(CYGPATH_W) 'gnomint-cli.c'; else $(CYGPATH_W) '$(srcdir)/gnomint-cli.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-gnomint-cli.Tpo $(DEPDIR)/gnomint_cli-gnomint-cli.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gnomint-cli.c' object='gnomint_cli-gnomint-cli.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-gnomint-cli.obj `if test -f 'gnomint-cli.c'; then $(CYGPATH_W) 'gnomint-cli.c'; else $(CYGPATH_W) '$(srcdir)/gnomint-cli.c'; fi` gnomint_cli-export.o: export.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-export.o -MD -MP -MF $(DEPDIR)/gnomint_cli-export.Tpo -c -o gnomint_cli-export.o `test -f 'export.c' || echo '$(srcdir)/'`export.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-export.Tpo $(DEPDIR)/gnomint_cli-export.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='export.c' object='gnomint_cli-export.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-export.o `test -f 'export.c' || echo '$(srcdir)/'`export.c gnomint_cli-export.obj: export.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-export.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-export.Tpo -c -o gnomint_cli-export.obj `if test -f 'export.c'; then $(CYGPATH_W) 'export.c'; else $(CYGPATH_W) '$(srcdir)/export.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-export.Tpo $(DEPDIR)/gnomint_cli-export.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='export.c' object='gnomint_cli-export.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-export.obj `if test -f 'export.c'; then $(CYGPATH_W) 'export.c'; else $(CYGPATH_W) '$(srcdir)/export.c'; fi` gnomint_cli-ca-cli.o: ca-cli.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-ca-cli.o -MD -MP -MF $(DEPDIR)/gnomint_cli-ca-cli.Tpo -c -o gnomint_cli-ca-cli.o `test -f 'ca-cli.c' || echo '$(srcdir)/'`ca-cli.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-ca-cli.Tpo $(DEPDIR)/gnomint_cli-ca-cli.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca-cli.c' object='gnomint_cli-ca-cli.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-ca-cli.o `test -f 'ca-cli.c' || echo '$(srcdir)/'`ca-cli.c gnomint_cli-ca-cli.obj: ca-cli.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-ca-cli.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-ca-cli.Tpo -c -o gnomint_cli-ca-cli.obj `if test -f 'ca-cli.c'; then $(CYGPATH_W) 'ca-cli.c'; else $(CYGPATH_W) '$(srcdir)/ca-cli.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-ca-cli.Tpo $(DEPDIR)/gnomint_cli-ca-cli.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca-cli.c' object='gnomint_cli-ca-cli.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-ca-cli.obj `if test -f 'ca-cli.c'; then $(CYGPATH_W) 'ca-cli.c'; else $(CYGPATH_W) '$(srcdir)/ca-cli.c'; fi` gnomint_cli-ca-cli-callbacks.o: ca-cli-callbacks.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-ca-cli-callbacks.o -MD -MP -MF $(DEPDIR)/gnomint_cli-ca-cli-callbacks.Tpo -c -o gnomint_cli-ca-cli-callbacks.o `test -f 'ca-cli-callbacks.c' || echo '$(srcdir)/'`ca-cli-callbacks.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-ca-cli-callbacks.Tpo $(DEPDIR)/gnomint_cli-ca-cli-callbacks.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca-cli-callbacks.c' object='gnomint_cli-ca-cli-callbacks.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-ca-cli-callbacks.o `test -f 'ca-cli-callbacks.c' || echo '$(srcdir)/'`ca-cli-callbacks.c gnomint_cli-ca-cli-callbacks.obj: ca-cli-callbacks.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-ca-cli-callbacks.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-ca-cli-callbacks.Tpo -c -o gnomint_cli-ca-cli-callbacks.obj `if test -f 'ca-cli-callbacks.c'; then $(CYGPATH_W) 'ca-cli-callbacks.c'; else $(CYGPATH_W) '$(srcdir)/ca-cli-callbacks.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-ca-cli-callbacks.Tpo $(DEPDIR)/gnomint_cli-ca-cli-callbacks.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca-cli-callbacks.c' object='gnomint_cli-ca-cli-callbacks.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-ca-cli-callbacks.obj `if test -f 'ca-cli-callbacks.c'; then $(CYGPATH_W) 'ca-cli-callbacks.c'; else $(CYGPATH_W) '$(srcdir)/ca-cli-callbacks.c'; fi` gnomint_cli-ca_creation.o: ca_creation.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-ca_creation.o -MD -MP -MF $(DEPDIR)/gnomint_cli-ca_creation.Tpo -c -o gnomint_cli-ca_creation.o `test -f 'ca_creation.c' || echo '$(srcdir)/'`ca_creation.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-ca_creation.Tpo $(DEPDIR)/gnomint_cli-ca_creation.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_creation.c' object='gnomint_cli-ca_creation.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-ca_creation.o `test -f 'ca_creation.c' || echo '$(srcdir)/'`ca_creation.c gnomint_cli-ca_creation.obj: ca_creation.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-ca_creation.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-ca_creation.Tpo -c -o gnomint_cli-ca_creation.obj `if test -f 'ca_creation.c'; then $(CYGPATH_W) 'ca_creation.c'; else $(CYGPATH_W) '$(srcdir)/ca_creation.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-ca_creation.Tpo $(DEPDIR)/gnomint_cli-ca_creation.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_creation.c' object='gnomint_cli-ca_creation.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-ca_creation.obj `if test -f 'ca_creation.c'; then $(CYGPATH_W) 'ca_creation.c'; else $(CYGPATH_W) '$(srcdir)/ca_creation.c'; fi` gnomint_cli-ca_file.o: ca_file.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-ca_file.o -MD -MP -MF $(DEPDIR)/gnomint_cli-ca_file.Tpo -c -o gnomint_cli-ca_file.o `test -f 'ca_file.c' || echo '$(srcdir)/'`ca_file.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-ca_file.Tpo $(DEPDIR)/gnomint_cli-ca_file.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_file.c' object='gnomint_cli-ca_file.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-ca_file.o `test -f 'ca_file.c' || echo '$(srcdir)/'`ca_file.c gnomint_cli-ca_file.obj: ca_file.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-ca_file.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-ca_file.Tpo -c -o gnomint_cli-ca_file.obj `if test -f 'ca_file.c'; then $(CYGPATH_W) 'ca_file.c'; else $(CYGPATH_W) '$(srcdir)/ca_file.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-ca_file.Tpo $(DEPDIR)/gnomint_cli-ca_file.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_file.c' object='gnomint_cli-ca_file.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-ca_file.obj `if test -f 'ca_file.c'; then $(CYGPATH_W) 'ca_file.c'; else $(CYGPATH_W) '$(srcdir)/ca_file.c'; fi` gnomint_cli-ca_policy.o: ca_policy.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-ca_policy.o -MD -MP -MF $(DEPDIR)/gnomint_cli-ca_policy.Tpo -c -o gnomint_cli-ca_policy.o `test -f 'ca_policy.c' || echo '$(srcdir)/'`ca_policy.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-ca_policy.Tpo $(DEPDIR)/gnomint_cli-ca_policy.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_policy.c' object='gnomint_cli-ca_policy.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-ca_policy.o `test -f 'ca_policy.c' || echo '$(srcdir)/'`ca_policy.c gnomint_cli-ca_policy.obj: ca_policy.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-ca_policy.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-ca_policy.Tpo -c -o gnomint_cli-ca_policy.obj `if test -f 'ca_policy.c'; then $(CYGPATH_W) 'ca_policy.c'; else $(CYGPATH_W) '$(srcdir)/ca_policy.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-ca_policy.Tpo $(DEPDIR)/gnomint_cli-ca_policy.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ca_policy.c' object='gnomint_cli-ca_policy.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-ca_policy.obj `if test -f 'ca_policy.c'; then $(CYGPATH_W) 'ca_policy.c'; else $(CYGPATH_W) '$(srcdir)/ca_policy.c'; fi` gnomint_cli-crl.o: crl.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-crl.o -MD -MP -MF $(DEPDIR)/gnomint_cli-crl.Tpo -c -o gnomint_cli-crl.o `test -f 'crl.c' || echo '$(srcdir)/'`crl.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-crl.Tpo $(DEPDIR)/gnomint_cli-crl.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='crl.c' object='gnomint_cli-crl.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-crl.o `test -f 'crl.c' || echo '$(srcdir)/'`crl.c gnomint_cli-crl.obj: crl.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-crl.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-crl.Tpo -c -o gnomint_cli-crl.obj `if test -f 'crl.c'; then $(CYGPATH_W) 'crl.c'; else $(CYGPATH_W) '$(srcdir)/crl.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-crl.Tpo $(DEPDIR)/gnomint_cli-crl.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='crl.c' object='gnomint_cli-crl.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-crl.obj `if test -f 'crl.c'; then $(CYGPATH_W) 'crl.c'; else $(CYGPATH_W) '$(srcdir)/crl.c'; fi` gnomint_cli-csr_creation.o: csr_creation.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-csr_creation.o -MD -MP -MF $(DEPDIR)/gnomint_cli-csr_creation.Tpo -c -o gnomint_cli-csr_creation.o `test -f 'csr_creation.c' || echo '$(srcdir)/'`csr_creation.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-csr_creation.Tpo $(DEPDIR)/gnomint_cli-csr_creation.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='csr_creation.c' object='gnomint_cli-csr_creation.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-csr_creation.o `test -f 'csr_creation.c' || echo '$(srcdir)/'`csr_creation.c gnomint_cli-csr_creation.obj: csr_creation.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-csr_creation.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-csr_creation.Tpo -c -o gnomint_cli-csr_creation.obj `if test -f 'csr_creation.c'; then $(CYGPATH_W) 'csr_creation.c'; else $(CYGPATH_W) '$(srcdir)/csr_creation.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-csr_creation.Tpo $(DEPDIR)/gnomint_cli-csr_creation.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='csr_creation.c' object='gnomint_cli-csr_creation.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-csr_creation.obj `if test -f 'csr_creation.c'; then $(CYGPATH_W) 'csr_creation.c'; else $(CYGPATH_W) '$(srcdir)/csr_creation.c'; fi` gnomint_cli-import.o: import.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-import.o -MD -MP -MF $(DEPDIR)/gnomint_cli-import.Tpo -c -o gnomint_cli-import.o `test -f 'import.c' || echo '$(srcdir)/'`import.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-import.Tpo $(DEPDIR)/gnomint_cli-import.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='import.c' object='gnomint_cli-import.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-import.o `test -f 'import.c' || echo '$(srcdir)/'`import.c gnomint_cli-import.obj: import.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-import.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-import.Tpo -c -o gnomint_cli-import.obj `if test -f 'import.c'; then $(CYGPATH_W) 'import.c'; else $(CYGPATH_W) '$(srcdir)/import.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-import.Tpo $(DEPDIR)/gnomint_cli-import.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='import.c' object='gnomint_cli-import.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-import.obj `if test -f 'import.c'; then $(CYGPATH_W) 'import.c'; else $(CYGPATH_W) '$(srcdir)/import.c'; fi` gnomint_cli-new_cert.o: new_cert.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-new_cert.o -MD -MP -MF $(DEPDIR)/gnomint_cli-new_cert.Tpo -c -o gnomint_cli-new_cert.o `test -f 'new_cert.c' || echo '$(srcdir)/'`new_cert.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-new_cert.Tpo $(DEPDIR)/gnomint_cli-new_cert.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='new_cert.c' object='gnomint_cli-new_cert.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-new_cert.o `test -f 'new_cert.c' || echo '$(srcdir)/'`new_cert.c gnomint_cli-new_cert.obj: new_cert.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-new_cert.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-new_cert.Tpo -c -o gnomint_cli-new_cert.obj `if test -f 'new_cert.c'; then $(CYGPATH_W) 'new_cert.c'; else $(CYGPATH_W) '$(srcdir)/new_cert.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-new_cert.Tpo $(DEPDIR)/gnomint_cli-new_cert.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='new_cert.c' object='gnomint_cli-new_cert.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-new_cert.obj `if test -f 'new_cert.c'; then $(CYGPATH_W) 'new_cert.c'; else $(CYGPATH_W) '$(srcdir)/new_cert.c'; fi` gnomint_cli-preferences.o: preferences.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-preferences.o -MD -MP -MF $(DEPDIR)/gnomint_cli-preferences.Tpo -c -o gnomint_cli-preferences.o `test -f 'preferences.c' || echo '$(srcdir)/'`preferences.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-preferences.Tpo $(DEPDIR)/gnomint_cli-preferences.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='preferences.c' object='gnomint_cli-preferences.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-preferences.o `test -f 'preferences.c' || echo '$(srcdir)/'`preferences.c gnomint_cli-preferences.obj: preferences.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-preferences.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-preferences.Tpo -c -o gnomint_cli-preferences.obj `if test -f 'preferences.c'; then $(CYGPATH_W) 'preferences.c'; else $(CYGPATH_W) '$(srcdir)/preferences.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-preferences.Tpo $(DEPDIR)/gnomint_cli-preferences.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='preferences.c' object='gnomint_cli-preferences.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-preferences.obj `if test -f 'preferences.c'; then $(CYGPATH_W) 'preferences.c'; else $(CYGPATH_W) '$(srcdir)/preferences.c'; fi` gnomint_cli-pkey_manage.o: pkey_manage.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-pkey_manage.o -MD -MP -MF $(DEPDIR)/gnomint_cli-pkey_manage.Tpo -c -o gnomint_cli-pkey_manage.o `test -f 'pkey_manage.c' || echo '$(srcdir)/'`pkey_manage.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-pkey_manage.Tpo $(DEPDIR)/gnomint_cli-pkey_manage.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pkey_manage.c' object='gnomint_cli-pkey_manage.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-pkey_manage.o `test -f 'pkey_manage.c' || echo '$(srcdir)/'`pkey_manage.c gnomint_cli-pkey_manage.obj: pkey_manage.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-pkey_manage.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-pkey_manage.Tpo -c -o gnomint_cli-pkey_manage.obj `if test -f 'pkey_manage.c'; then $(CYGPATH_W) 'pkey_manage.c'; else $(CYGPATH_W) '$(srcdir)/pkey_manage.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-pkey_manage.Tpo $(DEPDIR)/gnomint_cli-pkey_manage.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pkey_manage.c' object='gnomint_cli-pkey_manage.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-pkey_manage.obj `if test -f 'pkey_manage.c'; then $(CYGPATH_W) 'pkey_manage.c'; else $(CYGPATH_W) '$(srcdir)/pkey_manage.c'; fi` gnomint_cli-tls.o: tls.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-tls.o -MD -MP -MF $(DEPDIR)/gnomint_cli-tls.Tpo -c -o gnomint_cli-tls.o `test -f 'tls.c' || echo '$(srcdir)/'`tls.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-tls.Tpo $(DEPDIR)/gnomint_cli-tls.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tls.c' object='gnomint_cli-tls.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-tls.o `test -f 'tls.c' || echo '$(srcdir)/'`tls.c gnomint_cli-tls.obj: tls.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-tls.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-tls.Tpo -c -o gnomint_cli-tls.obj `if test -f 'tls.c'; then $(CYGPATH_W) 'tls.c'; else $(CYGPATH_W) '$(srcdir)/tls.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-tls.Tpo $(DEPDIR)/gnomint_cli-tls.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tls.c' object='gnomint_cli-tls.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-tls.obj `if test -f 'tls.c'; then $(CYGPATH_W) 'tls.c'; else $(CYGPATH_W) '$(srcdir)/tls.c'; fi` gnomint_cli-uint160.o: uint160.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-uint160.o -MD -MP -MF $(DEPDIR)/gnomint_cli-uint160.Tpo -c -o gnomint_cli-uint160.o `test -f 'uint160.c' || echo '$(srcdir)/'`uint160.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-uint160.Tpo $(DEPDIR)/gnomint_cli-uint160.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='uint160.c' object='gnomint_cli-uint160.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-uint160.o `test -f 'uint160.c' || echo '$(srcdir)/'`uint160.c gnomint_cli-uint160.obj: uint160.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -MT gnomint_cli-uint160.obj -MD -MP -MF $(DEPDIR)/gnomint_cli-uint160.Tpo -c -o gnomint_cli-uint160.obj `if test -f 'uint160.c'; then $(CYGPATH_W) 'uint160.c'; else $(CYGPATH_W) '$(srcdir)/uint160.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/gnomint_cli-uint160.Tpo $(DEPDIR)/gnomint_cli-uint160.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='uint160.c' object='gnomint_cli-uint160.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(gnomint_cli_CFLAGS) $(CFLAGS) -c -o gnomint_cli-uint160.obj `if test -f 'uint160.c'; then $(CYGPATH_W) 'uint160.c'; else $(CYGPATH_W) '$(srcdir)/uint160.c'; fi` mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs ID: $(am__tagged_files) $(am__define_uniq_tagged_files); mkid -fID $$unique tags: tags-am TAGS: tags tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) set x; \ here=`pwd`; \ $(am__define_uniq_tagged_files); \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: ctags-am CTAGS: ctags ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) $(am__define_uniq_tagged_files); \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" cscopelist: cscopelist-am cscopelist-am: $(am__tagged_files) list='$(am__tagged_files)'; \ case "$(srcdir)" in \ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ *) sdir=$(subdir)/$(srcdir) ;; \ esac; \ for i in $$list; do \ if test -f "$$i"; then \ echo "$(subdir)/$$i"; \ else \ echo "$$sdir/$$i"; \ fi; \ done >> $(top_builddir)/cscope.files distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(PROGRAMS) $(SCRIPTS) installdirs: for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-binPROGRAMS install-binSCRIPTS install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic \ mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS .MAKE: install-am install-strip .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \ ctags ctags-am distclean distclean-compile distclean-generic \ distclean-libtool distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-binPROGRAMS \ install-binSCRIPTS install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \ uninstall-binPROGRAMS uninstall-binSCRIPTS .PRECIOUS: Makefile # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: gnomint-1.3.0/src/preferences-gui.c0000664000175000017500000001005412672052326014134 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include "preferences-gui.h" #include static GConfClient * preferences_client; PreferencesGuiChangeCallback csr_visible_callback = NULL; PreferencesGuiChangeCallback revoked_visible_callback = NULL; void preferences_gui_set_csr_visible_callback (PreferencesGuiChangeCallback callback) { csr_visible_callback = callback; } void preferences_gui_set_revoked_visible_callback (PreferencesGuiChangeCallback callback) { revoked_visible_callback = callback; } void preferences_changed_callback(GConfClient* client, guint cnxn_id, GConfEntry *entry, gpointer user_data) { gboolean value = gconf_value_get_bool (gconf_entry_get_value(entry)); if (! strcmp (gconf_entry_get_key(entry), "/apps/gnomint/crq_visible") && csr_visible_callback) csr_visible_callback (value, TRUE); if (! strcmp (gconf_entry_get_key(entry), "/apps/gnomint/revoked_visible") && revoked_visible_callback) revoked_visible_callback (value, TRUE); } void preferences_init (int argc, char ** argv) { gconf_init(argc, argv, NULL); preferences_client = gconf_client_get_default(); gconf_client_add_dir(preferences_client, "/apps/gnomint", GCONF_CLIENT_PRELOAD_NONE, NULL); gconf_client_notify_add (preferences_client, "/apps/gnomint/revoked_visible", preferences_changed_callback, NULL, NULL, NULL); gconf_client_notify_add (preferences_client, "/apps/gnomint/crq_visible", preferences_changed_callback, NULL, NULL, NULL); } gchar * preferences_get_size () { return gconf_client_get_string (preferences_client, "/apps/gnomint/size", NULL); } void preferences_set_size (const gchar *new_value) { gconf_client_set_string (preferences_client, "/apps/gnomint/size", new_value, NULL); } gboolean preferences_get_revoked_visible () { return gconf_client_get_bool (preferences_client, "/apps/gnomint/revoked_visible", NULL); } void preferences_set_revoked_visible (gboolean new_value) { gconf_client_set_bool (preferences_client, "/apps/gnomint/revoked_visible", new_value, NULL); } gboolean preferences_get_crq_visible () { return gconf_client_get_bool (preferences_client, "/apps/gnomint/crq_visible", NULL); } void preferences_set_crq_visible (gboolean new_value) { gconf_client_set_bool (preferences_client, "/apps/gnomint/crq_visible", new_value, NULL); } gboolean preferences_get_gnome_keyring_export () { return gconf_client_get_bool (preferences_client, "/apps/gnomint/gnome_keyring_export", NULL); } void preferences_set_gnome_keyring_export (gboolean new_value) { gconf_client_set_bool (preferences_client, "/apps/gnomint/gnome_keyring_export", new_value, NULL); } void preferences_deinit () { g_object_unref (preferences_client); preferences_client = NULL; } gnomint-1.3.0/src/creation_process_window.h0000664000175000017500000000305612672052326016013 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _CREATION_PROCESS_WINDOW_H_ #define _CREATION_PROCESS_WINDOW_H_ #include "tls.h" #ifndef GNOMINTCLI void creation_process_window_error_dialog (gchar *message); void on_cancel_creation_process_clicked (GtkButton *button, gpointer user_data); void creation_process_window_ca_display (TlsCreationData * ca_creation_data); void creation_process_window_csr_display (TlsCreationData * ca_creation_data); void creation_process_window_ca_finish (void); gint creation_process_window_ca_pulse (gpointer data); void creation_process_window_csr_finish (void); gint creation_process_window_csr_pulse (gpointer data); #endif #endif gnomint-1.3.0/src/preferences.h0000664000175000017500000000220412672052326013355 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _PREFERENCES_H_ #define _PREFERENCES_H_ void preferences_init (int, char**); gboolean preferences_get_gnome_keyring_export (void); void preferences_set_gnome_keyring_export (gboolean new_value); void preferences_deinit (void); #endif gnomint-1.3.0/src/ca_file.h0000664000175000017500000001310512672052326012440 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _CA_FILE_H_ #define _CA_FILE_H_ #include #include "uint160.h" typedef int (*CaFileCallbackFunc) (void *pArg, int argc, char **argv, char **columnNames); typedef enum { CA_FILE_ELEMENT_TYPE_CERT=0, CA_FILE_ELEMENT_TYPE_CSR=1 } CaFileElementType; gchar * ca_file_create (const gchar *filename); gboolean ca_file_open (gchar *file_name, gboolean create); void ca_file_close (void); gboolean ca_file_save_as (gchar *new_file_name); gint ca_file_get_number_of_certs (); gint ca_file_get_number_of_csrs (); void ca_file_get_next_serial (UInt160 *serial, guint64 ca_id); gboolean ca_file_set_next_serial (UInt160 *serial, guint64 ca_id); gchar * ca_file_insert_self_signed_ca (gchar *pem_ca_private_key, gchar *pem_ca_certificate); gchar * ca_file_insert_cert (gboolean is_ca, gboolean private_key_in_db, gchar *pem_private_key_info, gchar *pem_certificate); gchar * ca_file_insert_imported_cert (gboolean is_ca, const UInt160 serial, const gchar *pem_certificate, guint64 *id); gchar * ca_file_insert_csr (gchar *pem_private_key, gchar *pem_csr, gchar *parent_ca_id_str, guint64 *id); gchar * ca_file_insert_imported_privkey (const gchar *privkey_pem); gchar * ca_file_remove_csr (guint64 id); gchar * ca_file_revoke_crt (guint64 id); gchar * ca_file_revoke_crt_with_date (guint64 id, time_t date); GList * ca_file_get_revoked_certs (guint64 ca_id, gchar **error); enum {CA_FILE_CA_COLUMN_ID=0, CA_FILE_CA_COLUMN_SERIAL=1, CA_FILE_CA_COLUMN_SUBJECT=2, CA_FILE_CA_COLUMN_DN=3, CA_FILE_CA_COLUMN_PARENT_DN=4, CA_FILE_CA_COLUMN_PEM=5, CA_FILE_CA_COLUMN_NUMBER=6} CaFileCAColumns; enum {CA_FILE_CERT_COLUMN_ID=0, CA_FILE_CERT_COLUMN_IS_CA=1, CA_FILE_CERT_COLUMN_SERIAL=2, CA_FILE_CERT_COLUMN_SUBJECT=3, CA_FILE_CERT_COLUMN_ACTIVATION=4, CA_FILE_CERT_COLUMN_EXPIRATION=5, CA_FILE_CERT_COLUMN_REVOCATION=6, CA_FILE_CERT_COLUMN_PRIVATE_KEY_IN_DB=7, CA_FILE_CERT_COLUMN_PEM=8, CA_FILE_CERT_COLUMN_DN=9, CA_FILE_CERT_COLUMN_PARENT_DN=10, CA_FILE_CERT_COLUMN_PARENT_ROUTE=11, CA_FILE_CERT_COLUMN_NUMBER=12} CaFileCertColumns; enum {CA_FILE_CSR_COLUMN_ID=0, CA_FILE_CSR_COLUMN_SUBJECT=1, CA_FILE_CSR_COLUMN_PRIVATE_KEY_IN_DB=2, CA_FILE_CSR_COLUMN_PEM=3, CA_FILE_CSR_COLUMN_PARENT_ID=4, CA_FILE_CSR_COLUMN_NUMBER=5} CaFileCSRColumns; gboolean ca_file_foreach_ca (CaFileCallbackFunc func, gpointer userdata); gboolean ca_file_foreach_crt (CaFileCallbackFunc func, gboolean view_revoked, gpointer userdata); gboolean ca_file_foreach_csr (CaFileCallbackFunc func, gpointer userdata); gboolean ca_file_foreach_policy (CaFileCallbackFunc func, guint64 ca_id, gpointer userdata); gboolean ca_file_get_id_from_serial_issuer_id (const UInt160 *serial, const guint64 issuer_id, guint64 *db_id); gboolean ca_file_get_id_from_dn (CaFileElementType type, const gchar *dn, guint64 *db_id); gchar * ca_file_get_dn_from_id (CaFileElementType type, guint64 db_id); gchar * ca_file_get_public_pem_from_id (CaFileElementType type, guint64 db_id); gchar * ca_file_get_pkey_field_from_id (CaFileElementType type, guint64 db_id); gboolean ca_file_get_pkey_in_db_from_id (CaFileElementType type, guint64 db_id); gboolean ca_file_set_pkey_field_for_id (CaFileElementType type, const gchar *new_value, guint64 db_id); gboolean ca_file_mark_pkey_as_extracted_for_id (CaFileElementType type, const gchar *filename, guint64 db_id); gint ca_file_begin_new_crl_transaction (guint64 ca_id, time_t timestamp); void ca_file_commit_new_crl_transaction (guint64 ca_id, const GList *revoked_certs); void ca_file_rollback_new_crl_transaction (void); gchar * ca_file_policy_get (guint64 ca_id, gchar *property_name); gboolean ca_file_policy_set (guint64 ca_id, gchar *property_name, const gchar *value); gint ca_file_policy_get_int (guint64 ca_id, gchar *property_name); gboolean ca_file_policy_set_int (guint64 ca_id, gchar *property_name, gint value); gboolean ca_file_is_password_protected(void); gboolean ca_file_check_password (const gchar *password); gboolean ca_file_password_unprotect(const gchar *old_password); gboolean ca_file_password_protect(const gchar *new_password); gboolean ca_file_password_change(const gchar *old_password, const gchar *new_password); gboolean ca_file_check_if_is_ca_id (guint64 ca_id); gboolean ca_file_check_if_is_cert_id (guint64 cert_id); gboolean ca_file_check_if_is_csr_id (guint64 csr_id); #endif gnomint-1.3.0/src/country_table.c0000664000175000017500000005115012672052326013725 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include #define D_(x) dgettext ("iso_3166", x) typedef struct { char * name; char * code; } CountryItem; #define NUMBER_OF_COUNTRIES 244 CountryItem country_table[NUMBER_OF_COUNTRIES]; static int country_table_comp_countries(const void *m1, const void *m2) { CountryItem *mi1 = (CountryItem *) m1; CountryItem *mi2 = (CountryItem *) m2; return g_ascii_strcasecmp (mi1->name, mi2->name); } void country_table_populate() { int i = 0; country_table[i].name = D_("Afghanistan"); country_table[i++].code = "AF"; country_table[i].name = D_("Åland Islands"); country_table[i++].code = "AX"; country_table[i].name = D_("Albania"); country_table[i++].code = "AL"; country_table[i].name = D_("Algeria"); country_table[i++].code = "DZ"; country_table[i].name = D_("American Samoa"); country_table[i++].code = "AS"; country_table[i].name = D_("Andorra"); country_table[i++].code = "AD"; country_table[i].name = D_("Angola"); country_table[i++].code = "AO"; country_table[i].name = D_("Anguilla"); country_table[i++].code = "AI"; country_table[i].name = D_("Antarctica"); country_table[i++].code = "AQ"; country_table[i].name = D_("Antigua and Barbuda"); country_table[i++].code = "AG"; country_table[i].name = D_("Argentina"); country_table[i++].code = "AR"; country_table[i].name = D_("Armenia"); country_table[i++].code = "AM"; country_table[i].name = D_("Aruba"); country_table[i++].code = "AW"; country_table[i].name = D_("Australia"); country_table[i++].code = "AU"; country_table[i].name = D_("Austria"); country_table[i++].code = "AT"; country_table[i].name = D_("Azerbaijan"); country_table[i++].code = "AZ"; country_table[i].name = D_("Bahamas"); country_table[i++].code = "BS"; country_table[i].name = D_("Bahrain"); country_table[i++].code = "BH"; country_table[i].name = D_("Bangladesh"); country_table[i++].code = "BD"; country_table[i].name = D_("Barbados"); country_table[i++].code = "BB"; country_table[i].name = D_("Belarus"); country_table[i++].code = "BY"; country_table[i].name = D_("Belgium"); country_table[i++].code = "BE"; country_table[i].name = D_("Belize"); country_table[i++].code = "BZ"; country_table[i].name = D_("Benin"); country_table[i++].code = "BJ"; country_table[i].name = D_("Bermuda"); country_table[i++].code = "BM"; country_table[i].name = D_("Bhutan"); country_table[i++].code = "BT"; country_table[i].name = D_("Bolivia"); country_table[i++].code = "BO"; country_table[i].name = D_("Bosnia and Herzegovina"); country_table[i++].code = "BA"; country_table[i].name = D_("Botswana"); country_table[i++].code = "BW"; country_table[i].name = D_("Bouvet Island"); country_table[i++].code = "BV"; country_table[i].name = D_("Brazil"); country_table[i++].code = "BR"; country_table[i].name = D_("British Indian Ocean Territory"); country_table[i++].code = "IO"; country_table[i].name = D_("Brunei Darussalam"); country_table[i++].code = "BN"; country_table[i].name = D_("Bulgaria"); country_table[i++].code = "BG"; country_table[i].name = D_("Burkina Faso"); country_table[i++].code = "BF"; country_table[i].name = D_("Burundi"); country_table[i++].code = "BI"; country_table[i].name = D_("Cambodia"); country_table[i++].code = "KH"; country_table[i].name = D_("Cameroon"); country_table[i++].code = "CM"; country_table[i].name = D_("Canada"); country_table[i++].code = "CA"; country_table[i].name = D_("Cape Verde"); country_table[i++].code = "CV"; country_table[i].name = D_("Cayman Islands"); country_table[i++].code = "KY"; country_table[i].name = D_("Central African Republic"); country_table[i++].code = "CF"; country_table[i].name = D_("Chad"); country_table[i++].code = "TD"; country_table[i].name = D_("Chile"); country_table[i++].code = "CL"; country_table[i].name = D_("China"); country_table[i++].code = "CN"; country_table[i].name = D_("Christmas Island"); country_table[i++].code = "CX"; country_table[i].name = D_("Cocos (Keeling) Islands"); country_table[i++].code = "CC"; country_table[i].name = D_("Colombia"); country_table[i++].code = "CO"; country_table[i].name = D_("Comoros"); country_table[i++].code = "KM"; country_table[i].name = D_("Congo"); country_table[i++].code = "CG"; country_table[i].name = D_("Congo, The Democratic Republic of the"); country_table[i++].code = "CD"; country_table[i].name = D_("Cook Islands"); country_table[i++].code = "CK"; country_table[i].name = D_("Costa Rica"); country_table[i++].code = "CR"; country_table[i].name = D_("Côte d\'Ivoire"); country_table[i++].code = "CI"; country_table[i].name = D_("Croatia"); country_table[i++].code = "HR"; country_table[i].name = D_("Cuba"); country_table[i++].code = "CU"; country_table[i].name = D_("Cyprus"); country_table[i++].code = "CY"; country_table[i].name = D_("Czech Republic"); country_table[i++].code = "CZ"; country_table[i].name = D_("Denmark"); country_table[i++].code = "DK"; country_table[i].name = D_("Djibouti"); country_table[i++].code = "DJ"; country_table[i].name = D_("Dominica"); country_table[i++].code = "DM"; country_table[i].name = D_("Dominican Republic"); country_table[i++].code = "DO"; country_table[i].name = D_("Ecuador"); country_table[i++].code = "EC"; country_table[i].name = D_("Egypt"); country_table[i++].code = "EG"; country_table[i].name = D_("El Salvador"); country_table[i++].code = "SV"; country_table[i].name = D_("Equatorial Guinea"); country_table[i++].code = "GQ"; country_table[i].name = D_("Eritrea"); country_table[i++].code = "ER"; country_table[i].name = D_("Estonia"); country_table[i++].code = "EE"; country_table[i].name = D_("Ethiopia"); country_table[i++].code = "ET"; country_table[i].name = D_("Falkland Islands (Malvinas)"); country_table[i++].code = "FK"; country_table[i].name = D_("Faroe Islands"); country_table[i++].code = "FO"; country_table[i].name = D_("Fiji"); country_table[i++].code = "FJ"; country_table[i].name = D_("Finland"); country_table[i++].code = "FI"; country_table[i].name = D_("France"); country_table[i++].code = "FR"; country_table[i].name = D_("French Guiana"); country_table[i++].code = "GF"; country_table[i].name = D_("French Polynesia"); country_table[i++].code = "PF"; country_table[i].name = D_("French Southern Territories"); country_table[i++].code = "TF"; country_table[i].name = D_("Gabon"); country_table[i++].code = "GA"; country_table[i].name = D_("Gambia"); country_table[i++].code = "GM"; country_table[i].name = D_("Georgia"); country_table[i++].code = "GE"; country_table[i].name = D_("Germany"); country_table[i++].code = "DE"; country_table[i].name = D_("Ghana"); country_table[i++].code = "GH"; country_table[i].name = D_("Gibraltar"); country_table[i++].code = "GI"; country_table[i].name = D_("Greece"); country_table[i++].code = "GR"; country_table[i].name = D_("Greenland"); country_table[i++].code = "GL"; country_table[i].name = D_("Grenada"); country_table[i++].code = "GD"; country_table[i].name = D_("Guadeloupe"); country_table[i++].code = "GP"; country_table[i].name = D_("Guam"); country_table[i++].code = "GU"; country_table[i].name = D_("Guatemala"); country_table[i++].code = "GT"; country_table[i].name = D_("Guernsey"); country_table[i++].code = "GG"; country_table[i].name = D_("Guinea"); country_table[i++].code = "GN"; country_table[i].name = D_("Guinea-Bissau"); country_table[i++].code = "GW"; country_table[i].name = D_("Guyana"); country_table[i++].code = "GY"; country_table[i].name = D_("Haiti"); country_table[i++].code = "HT"; country_table[i].name = D_("Heard Island and Mcdonald Islands"); country_table[i++].code = "HM"; country_table[i].name = D_("Holy See (Vatican City State)"); country_table[i++].code = "VA"; country_table[i].name = D_("Honduras"); country_table[i++].code = "HN"; country_table[i].name = D_("Hong Kong"); country_table[i++].code = "HK"; country_table[i].name = D_("Hungary"); country_table[i++].code = "HU"; country_table[i].name = D_("Iceland"); country_table[i++].code = "IS"; country_table[i].name = D_("India"); country_table[i++].code = "IN"; country_table[i].name = D_("Indonesia"); country_table[i++].code = "ID"; country_table[i].name = D_("Iran, Islamic Republic of"); country_table[i++].code = "IR"; country_table[i].name = D_("Iraq"); country_table[i++].code = "IQ"; country_table[i].name = D_("Ireland"); country_table[i++].code = "IE"; country_table[i].name = D_("Isle of Man"); country_table[i++].code = "IM"; country_table[i].name = D_("Israel"); country_table[i++].code = "IL"; country_table[i].name = D_("Italy"); country_table[i++].code = "IT"; country_table[i].name = D_("Jamaica"); country_table[i++].code = "JM"; country_table[i].name = D_("Japan"); country_table[i++].code = "JP"; country_table[i].name = D_("Jersey"); country_table[i++].code = "JE"; country_table[i].name = D_("Jordan"); country_table[i++].code = "JO"; country_table[i].name = D_("Kazakhstan"); country_table[i++].code = "KZ"; country_table[i].name = D_("Kenya"); country_table[i++].code = "KE"; country_table[i].name = D_("Kiribati"); country_table[i++].code = "KI"; country_table[i].name = D_("Korea, Democratic People\'s Republic of"); country_table[i++].code = "KP"; country_table[i].name = D_("Korea, Republic of"); country_table[i++].code = "KR"; country_table[i].name = D_("Kuwait"); country_table[i++].code = "KW"; country_table[i].name = D_("Kyrgyzstan"); country_table[i++].code = "KG"; country_table[i].name = D_("Lao People\'s Democratic Republic"); country_table[i++].code = "LA"; country_table[i].name = D_("Latvia"); country_table[i++].code = "LV"; country_table[i].name = D_("Lebanon"); country_table[i++].code = "LB"; country_table[i].name = D_("Lesotho"); country_table[i++].code = "LS"; country_table[i].name = D_("Liberia"); country_table[i++].code = "LR"; country_table[i].name = D_("Libyan Arab Jamahiriya"); country_table[i++].code = "LY"; country_table[i].name = D_("Liechtenstein"); country_table[i++].code = "LI"; country_table[i].name = D_("Lithuania"); country_table[i++].code = "LT"; country_table[i].name = D_("Luxembourg"); country_table[i++].code = "LU"; country_table[i].name = D_("Macao"); country_table[i++].code = "MO"; country_table[i].name = D_("Macedonia, Republic of"); country_table[i++].code = "MK"; country_table[i].name = D_("Madagascar"); country_table[i++].code = "MG"; country_table[i].name = D_("Malawi"); country_table[i++].code = "MW"; country_table[i].name = D_("Malaysia"); country_table[i++].code = "MY"; country_table[i].name = D_("Maldives"); country_table[i++].code = "MV"; country_table[i].name = D_("Mali"); country_table[i++].code = "ML"; country_table[i].name = D_("Malta"); country_table[i++].code = "MT"; country_table[i].name = D_("Marshall Islands"); country_table[i++].code = "MH"; country_table[i].name = D_("Martinique"); country_table[i++].code = "MQ"; country_table[i].name = D_("Mauritania"); country_table[i++].code = "MR"; country_table[i].name = D_("Mauritius"); country_table[i++].code = "MU"; country_table[i].name = D_("Mayotte"); country_table[i++].code = "YT"; country_table[i].name = D_("Mexico"); country_table[i++].code = "MX"; country_table[i].name = D_("Micronesia, Federated States of"); country_table[i++].code = "FM"; country_table[i].name = D_("Moldova, Republic of"); country_table[i++].code = "MD"; country_table[i].name = D_("Monaco"); country_table[i++].code = "MC"; country_table[i].name = D_("Mongolia"); country_table[i++].code = "MN"; country_table[i].name = D_("Montenegro"); country_table[i++].code = "ME"; country_table[i].name = D_("Montserrat"); country_table[i++].code = "MS"; country_table[i].name = D_("Morocco"); country_table[i++].code = "MA"; country_table[i].name = D_("Mozambique"); country_table[i++].code = "MZ"; country_table[i].name = D_("Myanmar"); country_table[i++].code = "MM"; country_table[i].name = D_("Namibia"); country_table[i++].code = "NA"; country_table[i].name = D_("Nauru"); country_table[i++].code = "NR"; country_table[i].name = D_("Nepal"); country_table[i++].code = "NP"; country_table[i].name = D_("Netherlands"); country_table[i++].code = "NL"; country_table[i].name = D_("Netherlands Antilles"); country_table[i++].code = "AN"; country_table[i].name = D_("New Caledonia"); country_table[i++].code = "NC"; country_table[i].name = D_("New Zealand"); country_table[i++].code = "NZ"; country_table[i].name = D_("Nicaragua"); country_table[i++].code = "NI"; country_table[i].name = D_("Niger"); country_table[i++].code = "NE"; country_table[i].name = D_("Nigeria"); country_table[i++].code = "NG"; country_table[i].name = D_("Niue"); country_table[i++].code = "NU"; country_table[i].name = D_("Norfolk Island"); country_table[i++].code = "NF"; country_table[i].name = D_("Northern Mariana Islands"); country_table[i++].code = "MP"; country_table[i].name = D_("Norway"); country_table[i++].code = "NO"; country_table[i].name = D_("Oman"); country_table[i++].code = "OM"; country_table[i].name = D_("Pakistan"); country_table[i++].code = "PK"; country_table[i].name = D_("Palau"); country_table[i++].code = "PW"; country_table[i].name = D_("Palestinian Territory, Occupied"); country_table[i++].code = "PS"; country_table[i].name = D_("Panama"); country_table[i++].code = "PA"; country_table[i].name = D_("Papua New Guinea"); country_table[i++].code = "PG"; country_table[i].name = D_("Paraguay"); country_table[i++].code = "PY"; country_table[i].name = D_("Peru"); country_table[i++].code = "PE"; country_table[i].name = D_("Philippines"); country_table[i++].code = "PH"; country_table[i].name = D_("Pitcairn"); country_table[i++].code = "PN"; country_table[i].name = D_("Poland"); country_table[i++].code = "PL"; country_table[i].name = D_("Portugal"); country_table[i++].code = "PT"; country_table[i].name = D_("Puerto Rico"); country_table[i++].code = "PR"; country_table[i].name = D_("Qatar"); country_table[i++].code = "QA"; country_table[i].name = D_("Reunion"); country_table[i++].code = "RE"; country_table[i].name = D_("Romania"); country_table[i++].code = "RO"; country_table[i].name = D_("Russian Federation"); country_table[i++].code = "RU"; country_table[i].name = D_("Rwanda"); country_table[i++].code = "RW"; country_table[i].name = D_("Saint Helena"); country_table[i++].code = "SH"; country_table[i].name = D_("Saint Kitts and Nevis"); country_table[i++].code = "KN"; country_table[i].name = D_("Saint Lucia"); country_table[i++].code = "LC"; country_table[i].name = D_("Saint Pierre and Miquelon"); country_table[i++].code = "PM"; country_table[i].name = D_("Saint Vincent and the Grenadines"); country_table[i++].code = "VC"; country_table[i].name = D_("Samoa"); country_table[i++].code = "WS"; country_table[i].name = D_("San Marino"); country_table[i++].code = "SM"; country_table[i].name = D_("Sao Tome and Principe"); country_table[i++].code = "ST"; country_table[i].name = D_("Saudi Arabia"); country_table[i++].code = "SA"; country_table[i].name = D_("Senegal"); country_table[i++].code = "SN"; country_table[i].name = D_("Serbia"); country_table[i++].code = "RS"; country_table[i].name = D_("Seychelles"); country_table[i++].code = "SC"; country_table[i].name = D_("Sierra Leone"); country_table[i++].code = "SL"; country_table[i].name = D_("Singapore"); country_table[i++].code = "SG"; country_table[i].name = D_("Slovakia"); country_table[i++].code = "SK"; country_table[i].name = D_("Slovenia"); country_table[i++].code = "SI"; country_table[i].name = D_("Solomon Islands"); country_table[i++].code = "SB"; country_table[i].name = D_("Somalia"); country_table[i++].code = "SO"; country_table[i].name = D_("South Africa"); country_table[i++].code = "ZA"; country_table[i].name = D_("South Georgia and the South Sandwich Islands"); country_table[i++].code = "GS"; country_table[i].name = D_("Spain"); country_table[i++].code = "ES"; country_table[i].name = D_("Sri Lanka"); country_table[i++].code = "LK"; country_table[i].name = D_("Sudan"); country_table[i++].code = "SD"; country_table[i].name = D_("Suriname"); country_table[i++].code = "SR"; country_table[i].name = D_("Svalbard and Jan Mayen"); country_table[i++].code = "SJ"; country_table[i].name = D_("Swaziland"); country_table[i++].code = "SZ"; country_table[i].name = D_("Sweden"); country_table[i++].code = "SE"; country_table[i].name = D_("Switzerland"); country_table[i++].code = "CH"; country_table[i].name = D_("Syrian Arab Republic"); country_table[i++].code = "SY"; country_table[i].name = D_("Taiwan"); country_table[i++].code = "TW"; country_table[i].name = D_("Tajikistan"); country_table[i++].code = "TJ"; country_table[i].name = D_("Tanzania, United Republic of"); country_table[i++].code = "TZ"; country_table[i].name = D_("Thailand"); country_table[i++].code = "TH"; country_table[i].name = D_("Timor-Leste"); country_table[i++].code = "TL"; country_table[i].name = D_("Togo"); country_table[i++].code = "TG"; country_table[i].name = D_("Tokelau"); country_table[i++].code = "TK"; country_table[i].name = D_("Tonga"); country_table[i++].code = "TO"; country_table[i].name = D_("Trinidad and Tobago"); country_table[i++].code = "TT"; country_table[i].name = D_("Tunisia"); country_table[i++].code = "TN"; country_table[i].name = D_("Turkey"); country_table[i++].code = "TR"; country_table[i].name = D_("Turkmenistan"); country_table[i++].code = "TM"; country_table[i].name = D_("Turks and Caicos Islands"); country_table[i++].code = "TC"; country_table[i].name = D_("Tuvalu"); country_table[i++].code = "TV"; country_table[i].name = D_("Uganda"); country_table[i++].code = "UG"; country_table[i].name = D_("Ukraine"); country_table[i++].code = "UA"; country_table[i].name = D_("United Arab Emirates"); country_table[i++].code = "AE"; country_table[i].name = D_("United Kingdom"); country_table[i++].code = "GB"; country_table[i].name = D_("United States"); country_table[i++].code = "US"; country_table[i].name = D_("United States Minor Outlying Islands"); country_table[i++].code = "UM"; country_table[i].name = D_("Uruguay"); country_table[i++].code = "UY"; country_table[i].name = D_("Uzbekistan"); country_table[i++].code = "UZ"; country_table[i].name = D_("Vanuatu"); country_table[i++].code = "VU"; country_table[i].name = D_("Venezuela"); country_table[i++].code = "VE"; country_table[i].name = D_("Viet Nam"); country_table[i++].code = "VN"; country_table[i].name = D_("Virgin Islands, British"); country_table[i++].code = "VG"; country_table[i].name = D_("Virgin Islands, U.S."); country_table[i++].code = "VI"; country_table[i].name = D_("Wallis and Futuna"); country_table[i++].code = "WF"; country_table[i].name = D_("Western Sahara"); country_table[i++].code = "EH"; country_table[i].name = D_("Yemen"); country_table[i++].code = "YE"; country_table[i].name = D_("Zambia"); country_table[i++].code = "ZM"; country_table[i].name = D_("Zimbabwe"); country_table[i++].code = "ZW"; qsort (country_table, NUMBER_OF_COUNTRIES, sizeof(CountryItem), country_table_comp_countries); } void country_table_populate_combobox(GtkComboBox *country_combobox) { int i = 0; GtkTreeStore * new_store = NULL; GtkTreeIter iter; GtkCellRenderer *renderer = NULL; country_table_populate(); new_store = gtk_tree_store_new(2, G_TYPE_STRING, G_TYPE_STRING); for (i=0; i // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef GNOMINTCLI #include #include #else #include #endif #include #include #include #include #include "ca_policy.h" #ifndef GNOMINTCLI extern GtkBuilder * certificate_properties_window_gtkb; gint __ca_policy_populate_step (void *pArg, int argc, char **argv, char **columnNames); gint __ca_policy_populate_step (void *pArg, int argc, char **argv, char **columnNames) { GHashTable * policy_table = (GHashTable *) pArg; g_hash_table_insert (policy_table, g_strdup (argv[1]), g_strdup(argv[2])); return 0; } void ca_policy_populate (guint64 ca_id) { GObject * widget; gint value; gchar * strvalue; GHashTable *policy_table = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); ca_file_foreach_policy (__ca_policy_populate_step, ca_id, policy_table); strvalue = (gchar *) g_hash_table_lookup (policy_table, "C_INHERIT"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "country_inherited_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "country_same_radiobutton")), value); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "country_differ_radiobutton")), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "ST_INHERIT"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "state_inherited_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "state_same_radiobutton")), value); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "state_differ_radiobutton")), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "L_INHERIT"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "city_inherited_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "city_same_radiobutton")), value); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "city_differ_radiobutton")), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "O_INHERIT"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "organization_inherited_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "organization_same_radiobutton")), value); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "organization_differ_radiobutton")), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "OU_INHERIT"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "ou_inherited_check"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "ou_same_radiobutton")), value); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "ou_differ_radiobutton")), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "C_FORCE_SAME"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "country_same_radiobutton"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "ST_FORCE_SAME"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "state_same_radiobutton"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "L_FORCE_SAME"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "city_same_radiobutton"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "O_FORCE_SAME"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "organization_same_radiobutton"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "OU_FORCE_SAME"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "ou_same_radiobutton"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "HOURS_BETWEEN_CRL_UPDATES"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "hours_between_crl_updates_spinbutton"); gtk_spin_button_set_value (GTK_SPIN_BUTTON(widget), value); strvalue = ((gchar *) g_hash_table_lookup (policy_table, "CRL_DISTRIBUTION_POINT")); widget = gtk_builder_get_object (certificate_properties_window_gtkb, "crl_distribution_point_entry"); if (strvalue) gtk_entry_set_text (GTK_ENTRY(widget), strvalue); strvalue = (gchar *) g_hash_table_lookup (policy_table, "MONTHS_TO_EXPIRE"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "months_before_expiration_spinbutton2"); gtk_spin_button_set_value (GTK_SPIN_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "CA"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "ca_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "CRL_SIGN"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "crl_signing_check1"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "NON_REPUDIATION"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "non_repudiation_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "DIGITAL_SIGNATURE"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "digital_signature_check4"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "KEY_ENCIPHERMENT"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "key_encipherment_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "KEY_AGREEMENT"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "key_agreement_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "DATA_ENCIPHERMENT"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "data_encipherment_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "TLS_WEB_SERVER"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "webserver_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "TLS_WEB_CLIENT"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "webclient_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "TIME_STAMPING"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "time_stamping_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "CODE_SIGNING"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "code_signing_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "EMAIL_PROTECTION"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "email_protection_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "OCSP_SIGNING"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "ocsp_signing_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); strvalue = (gchar *) g_hash_table_lookup (policy_table, "ANY_PURPOSE"); value = strvalue ? atoi(strvalue) : 0; widget = gtk_builder_get_object (certificate_properties_window_gtkb, "any_purpose_check2"); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widget), value); g_hash_table_destroy (policy_table); } #endif #ifndef GNOMINTCLI G_MODULE_EXPORT void ca_policy_expiration_spin_button_change (gpointer spin_button, gpointer userdata) { GObject * widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certificate_properties_dialog"); gchar * cert_id_str = (gchar *) g_object_get_data (G_OBJECT(widget), "cert_id"); guint64 cert_id; if (! cert_id_str) return; if (! spin_button) return; cert_id = atoll(cert_id_str); ca_file_policy_set_int (cert_id, "MONTHS_TO_EXPIRE", gtk_spin_button_get_value(spin_button)); } G_MODULE_EXPORT void ca_policy_crl_update_spin_button_change (gpointer spin_button, gpointer userdata) { GObject * widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certificate_properties_dialog"); gchar * cert_id_str = (gchar *) g_object_get_data (G_OBJECT(widget), "cert_id"); guint64 cert_id; if (! cert_id_str) return; if (! spin_button) return; cert_id = atoll(cert_id_str); ca_file_policy_set_int (cert_id, "HOURS_BETWEEN_CRL_UPDATES", gtk_spin_button_get_value(spin_button)); } G_MODULE_EXPORT void ca_policy_crl_distribution_point_change(gpointer gtkentry, gpointer userdata) { GObject * widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certificate_properties_dialog"); gchar * cert_id_str = (gchar *) g_object_get_data (G_OBJECT(widget), "cert_id"); guint64 cert_id; if (! cert_id_str) return; if (! gtkentry) return; cert_id = atoll(cert_id_str); ca_file_policy_set (cert_id, "CRL_DISTRIBUTION_POINT", gtk_entry_get_text(gtkentry)); } G_MODULE_EXPORT void ca_policy_toggle_button_toggled (gpointer button, gpointer userdata) { GObject * widget = gtk_builder_get_object (certificate_properties_window_gtkb, "certificate_properties_dialog"); gchar * cert_id_str = (gchar *) g_object_get_data (G_OBJECT(widget), "cert_id"); guint64 cert_id; gchar *property_name = NULL; gboolean is_active; if (! cert_id_str) return; if (! button) return; const gchar * widget_name = gtk_buildable_get_name(GTK_BUILDABLE(button)); cert_id = atoll(cert_id_str); is_active = gtk_toggle_button_get_active(button); if (! strcmp(widget_name, "country_inherited_check")) { property_name = "C_INHERIT"; gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "country_same_radiobutton")), is_active); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "country_differ_radiobutton")), is_active); } if (! strcmp(widget_name, "state_inherited_check")) { property_name = "ST_INHERIT"; gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "state_same_radiobutton")), is_active); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "state_differ_radiobutton")), is_active); } if (! strcmp(widget_name, "city_inherited_check")) { property_name = "L_INHERIT"; gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "city_same_radiobutton")), is_active); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "city_differ_radiobutton")), is_active); } if (! strcmp(widget_name, "organization_inherited_check")) { property_name = "O_INHERIT"; gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "organization_same_radiobutton")), is_active); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "organization_differ_radiobutton")), is_active); } if (! strcmp(widget_name, "ou_inherited_check")) { property_name = "OU_INHERIT"; gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "ou_same_radiobutton")), is_active); gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object (certificate_properties_window_gtkb, "ou_differ_radiobutton")), is_active); } if (! strcmp(widget_name, "country_same_radiobutton")) property_name = "C_FORCE_SAME"; if (! strcmp(widget_name, "state_same_radiobutton")) property_name = "ST_FORCE_SAME"; if (! strcmp(widget_name, "city_same_radiobutton")) property_name = "L_FORCE_SAME"; if (! strcmp(widget_name, "organization_same_radiobutton")) property_name = "O_FORCE_SAME"; if (! strcmp(widget_name, "ou_same_radiobutton")) property_name = "OU_FORCE_SAME"; if (! strcmp(widget_name, "ca_check2")) property_name = "CA"; if (! strcmp(widget_name, "crl_signing_check1")) property_name = "CRL_SIGN"; if (! strcmp(widget_name, "non_repudiation_check2")) { if (! is_active) { // TIME_STAMPING cannot be inactive gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "time_stamping_check2")), FALSE); // We must check if EMAIL_PROTECTION can be active if (! ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE") && ! ca_file_policy_get (cert_id, "KEY_ENCIPHERMENT") && ! ca_file_policy_get (cert_id, "KEY_AGREEMENT")) { // If none is active, we must deactivate EMAIL_PROTECTION gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "email_protection_check2")), FALSE); } // We must check if OCSP_SIGNING can be active if (! ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE")) { // If is not active, we must deactivate OCSP_SIGNING gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "ocsp_signing_check2")), FALSE); } } property_name = "NON_REPUDIATION"; } if (! strcmp(widget_name, "digital_signature_check4")) { if (! is_active) { // We must check if TLS_WEB_SERVER can be active if (! ca_file_policy_get (cert_id, "KEY_ENCIPHERMENT") && ! ca_file_policy_get (cert_id, "KEY_AGREEMENT")) { // If none is active, we must deactivate TLS_WEB_SERVER gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "webserver_check2")), FALSE); } // We must check if TLS_WEB_CLIENT can be active if (! ca_file_policy_get (cert_id, "KEY_AGREEMENT")) { // If none is active, we must deactivate TLS_WEB_CLIENT gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "webclient_check2")), FALSE); } // TIME_STAMPING and CODE_SIGNING cannot be active if digital signature is deactivated gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(certificate_properties_window_gtkb, "time_stamping_check2")), FALSE); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(certificate_properties_window_gtkb, "code_signing_check2")), FALSE); // We must check if EMAIL_PROTECTION can be active if (! ca_file_policy_get (cert_id, "NON_REPUDIATION") && ! ca_file_policy_get (cert_id, "KEY_ENCIPHERMENT") && ! ca_file_policy_get (cert_id, "KEY_AGREEMENT")) { // If none is active, we must deactivate EMAIL_PROTECTION gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "email_protection_check2")), FALSE); } // We must check if OCSP_SIGNING can be active if (! ca_file_policy_get (cert_id, "NON_REPUDIATION")) { // If none is active, we must deactivate OCSP_SIGNING gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "ocsp_signing_check2")), FALSE); } } property_name = "DIGITAL_SIGNATURE"; } if (! strcmp(widget_name, "key_encipherment_check2")) { if (! is_active) { // We must check if TLS_WEB_SERVER can be active if (! ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE") && ! ca_file_policy_get (cert_id, "KEY_AGREEMENT")) { // If none is active, we must deactivate TLS_WEB_SERVER gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "webserver_check2")), FALSE); } // We must check if EMAIL_PROTECTION can be active if (! ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE") && ! ca_file_policy_get (cert_id, "NON_REPUDIATION") && ! ca_file_policy_get (cert_id, "KEY_AGREEMENT")) { // If none is active, we must deactivate EMAIL_PROTECTION gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "email_protection_check2")), FALSE); } } property_name = "KEY_ENCIPHERMENT"; } if (! strcmp(widget_name, "key_agreement_check2")) { if (! is_active) { // We must check if TLS_WEB_SERVER can be active if (! ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE") && ! ca_file_policy_get (cert_id, "KEY_ENCIPHERMENT")) { // If none is active, we must deactivate TLS_WEB_SERVER gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "webserver_check2")), FALSE); } // We must check if TLS_WEB_CLIENT can be active if (! ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE")) { // If none is active, we must deactivate TLS_WEB_CLIENT gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "webclient_check2")), FALSE); } // We must check if EMAIL_PROTECTION can be active if (! ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE") && ! ca_file_policy_get (cert_id, "NON_REPUDIATION") && ! ca_file_policy_get (cert_id, "KEY_ENCIPHERMENT")) { // If none is active, we must deactivate EMAIL_PROTECTION gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "email_protection_check2")), FALSE); } } property_name = "KEY_AGREEMENT"; } if (! strcmp(widget_name, "data_encipherment_check2")) property_name = "DATA_ENCIPHERMENT"; // Purposes if (! strcmp(widget_name, "webserver_check2")) { if (is_active) { // We must check digitalSignature || keyEncipherment || keyAgreement if (!( ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE") || ca_file_policy_get (cert_id, "KEY_ENCIPHERMENT") || ca_file_policy_get (cert_id, "KEY_AGREEMENT"))) { // If none is active, we activate key encipherment gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "key_encipherment_check2")), TRUE); } } property_name = "TLS_WEB_SERVER"; } if (! strcmp(widget_name, "webclient_check2")) { if (is_active) { // We must check digitalSignature || keyEncipherment || keyAgreement if (!( ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE") || ca_file_policy_get (cert_id, "KEY_AGREEMENT"))) { // If none is active, we activate digital signature gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "digital_signature_check4")), TRUE); } } property_name = "TLS_WEB_CLIENT"; } if (! strcmp(widget_name, "time_stamping_check2")){ if (is_active) { // We must check digitalSignature && nonRepudiation if (!( ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE") && ca_file_policy_get (cert_id, "NON_REPUDIATION"))) { // If none is active, we activate them both gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "digital_signature_check4")), TRUE); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "non_repudiation_check2")), TRUE); } } property_name = "TIME_STAMPING"; } if (! strcmp(widget_name, "code_signing_check2")) { if (is_active) { // We must check digitalSignature if (!( ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE"))) { // If it is not active, we activate it gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "digital_signature_check4")), TRUE); } } property_name = "CODE_SIGNING"; } if (! strcmp(widget_name, "email_protection_check2")) { if (is_active) { // We must check digitalSignature || nonRepudiation || (keyEncipherment || keyAgreement) if (!( ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE") || ca_file_policy_get (cert_id, "NON_REPUDIATION") || ca_file_policy_get (cert_id, "KEY_ENCIPHERMENT") || ca_file_policy_get (cert_id, "KEY_AGREEMENT"))) { // If none is active, we activate key encipherment gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "digital_signature_check4")), TRUE); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "key_encipherment_check2")), TRUE); } } property_name = "EMAIL_PROTECTION"; } if (! strcmp(widget_name, "ocsp_signing_check2")) { if (is_active) { // We must check digitalSignature || nonRepudiation if (!( ca_file_policy_get (cert_id, "DIGITAL_SIGNATURE") || ca_file_policy_get (cert_id, "NON_REPUDIATION"))) { // If none is active, we activate digital signature gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (certificate_properties_window_gtkb, "digital_signature_check4")), TRUE); } } property_name = "OCSP_SIGNING"; } if (! strcmp(widget_name, "any_purpose_check2")) property_name = "ANY_PURPOSE"; if (property_name) ca_file_policy_set_int (cert_id, property_name, is_active); } #endif gnomint-1.3.0/src/preferences-window.c0000664000175000017500000000464212672052326014665 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include "preferences-gui.h" #include "preferences-window.h" #include GtkBuilder *preferences_window_gtkb = NULL; void preferences_window_display() { GtkWidget * widget = NULL; preferences_window_gtkb = gtk_builder_new(); gtk_builder_add_from_file (preferences_window_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "preferences_dialog.ui", NULL), NULL); gtk_builder_connect_signals (preferences_window_gtkb, NULL); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object(preferences_window_gtkb, "gnomekeyring_export_check")), preferences_get_gnome_keyring_export()); widget = GTK_WIDGET(gtk_builder_get_object (preferences_window_gtkb, "preferences_dialog")); gtk_widget_show (widget); } G_MODULE_EXPORT void preferences_window_gnomekeyring_export_toggled (GtkToggleButton *togglebutton, gpointer user_data) { gboolean new_status = gtk_toggle_button_get_active (togglebutton); gboolean current_status = preferences_get_gnome_keyring_export(); if (new_status != current_status) preferences_set_gnome_keyring_export (new_status); } G_MODULE_EXPORT void preferences_window_ok_button_clicked_cb (GtkButton *button, gpointer user_data) { GtkWidget *widget = GTK_WIDGET(gtk_builder_get_object (preferences_window_gtkb, "preferences_dialog")); gtk_widget_destroy (widget); } gnomint-1.3.0/src/dialog.h0000664000175000017500000000367712672052326012332 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _DIALOG_H_ #define _DIALOG_H_ #include #include #ifndef GNOMINTCLI #include #endif void dialog_info (gchar *message); void dialog_error (gchar *message); gchar * dialog_get_password (gchar *info_message, gchar *password_message, gchar *confirm_message, gchar *distinct_error_message, guint minimum_length); void dialog_todo_callback (void); typedef gboolean (* DialogRefreshCallback) (void); void dialog_establish_refresh_function (DialogRefreshCallback callback); gboolean dialog_refresh_list (void); #ifndef GNOMINTCLI void dialog_password_entry_changed_cb (GtkEditable *password_entry, gpointer user_data); #else #ifdef WIN32 char *getpass(const char *prompt); #endif gboolean dialog_ask_for_confirmation (gchar *message, gchar *prompt, gboolean default_answer); gint dialog_ask_for_number (gchar *message, gint minimum, gint maximum, gint default_value); gchar * dialog_ask_for_password (gchar *message); gchar * dialog_ask_for_string (gchar *message, gchar *default_answer); #endif #endif gnomint-1.3.0/src/ca_policy.h0000664000175000017500000000175312672052326013026 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _CA_POLICY_H_ #define _CA_POLICY_H_ void ca_policy_populate (guint64 ca_id); #endif gnomint-1.3.0/src/preferences-window.h0000664000175000017500000000227312672052326014670 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #ifndef _PREFERENCES_WINDOW_H_ #define _PREFERENCES_WINDOW_H_ void preferences_window_display (void); void preferences_window_gnomekeyring_export_toggled (GtkToggleButton *togglebutton, gpointer user_data); void preferences_window_ok_button_clicked_cb (GtkButton *button, gpointer user_data); #endif gnomint-1.3.0/src/csr_properties.c0000664000175000017500000000552612672052326014124 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include "tls.h" #include "csr_properties.h" #include GtkBuilder * csr_properties_window_gtkb = NULL; void __csr_properties_populate (const char *csr_pem, gboolean); void csr_properties_display(const char *csr_pem, gboolean privkey_in_db) { GObject * widget = NULL; csr_properties_window_gtkb = gtk_builder_new(); gtk_builder_add_from_file (csr_properties_window_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "csr_properties_dialog.ui", NULL), NULL); gtk_builder_connect_signals (csr_properties_window_gtkb, NULL); __csr_properties_populate (csr_pem, privkey_in_db); widget = gtk_builder_get_object (csr_properties_window_gtkb, "csr_properties_dialog"); gtk_widget_show (GTK_WIDGET(widget)); } void __csr_properties_populate (const char *csr_pem, gboolean privkey_in_db) { GObject *widget = NULL; TlsCsr * csr = NULL; csr = tls_parse_csr_pem (csr_pem); widget = gtk_builder_get_object (csr_properties_window_gtkb, "certSubjectCNLabel1"); gtk_label_set_text (GTK_LABEL(widget), csr->cn); widget = gtk_builder_get_object (csr_properties_window_gtkb, "certSubjectOLabel1"); gtk_label_set_text (GTK_LABEL(widget), csr->o); widget = gtk_builder_get_object (csr_properties_window_gtkb, "certSubjectOULabel1"); gtk_label_set_text (GTK_LABEL(widget), csr->ou); if (! privkey_in_db) { widget = gtk_builder_get_object (csr_properties_window_gtkb, "privatekey_in_db_label"); gtk_label_set_markup (GTK_LABEL(widget), _("This Certificate Signing Request has its corresponding private key saved in a external file.")); } tls_csr_free (csr); } G_MODULE_EXPORT void csr_properties_close_clicked (const char *csr_pem) { GObject *widget = NULL; widget = gtk_builder_get_object (csr_properties_window_gtkb, "csr_properties_dialog"); g_assert (widget); gtk_widget_destroy (GTK_WIDGET(widget)); } gnomint-1.3.0/src/dialog.c0000664000175000017500000002270212672052326012313 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include #include #include "dialog.h" #ifdef WIN32 #include char *getpass(const char *prompt) { static char buf[128]; size_t i; fputs(prompt, stderr); fflush(stderr); for (i = 0; i < sizeof(buf) - 1; i++) { buf[i] = _getch(); if (buf[i] == '\r') break; } buf[i] = 0; fputs("\n", stderr); return buf; } #endif DialogRefreshCallback dialog_refresh_callback = NULL; void dialog_establish_refresh_function (DialogRefreshCallback callback) { dialog_refresh_callback = callback; } gboolean dialog_refresh_list (void) { return dialog_refresh_callback(); } #ifdef GNOMINTCLI #include #include void dialog_info (gchar *message) { printf ("\nInfo: %s\n\n", message); } void dialog_error (gchar *message) { fprintf (stderr, "\nError: %s\n\n", message); } gchar * dialog_get_password (gchar *info_message, gchar *password_message, gchar *confirm_message, gchar *distinct_error_message, guint minimum_length) { gchar * res = NULL; gchar * password = NULL; gchar * password2 = NULL; printf ("%s\n\n", info_message); do { if (res) { g_free (res); res = NULL; } password = getpass(password_message); if (! password || password[0]=='\0') return NULL; res = g_strdup (password); if (strlen (res) < minimum_length) { fprintf (stderr, _("\nThe password must have, at least, %d characters\n"), minimum_length); continue; } memset (password, 0, strlen (res)); password2 = getpass(confirm_message); if (strcmp (res, password2)) { fprintf (stderr, "\n%s\n", distinct_error_message); memset (password, 0, strlen (password2)); } } while (strlen (res) < minimum_length || strcmp (res, password2) ); memset (password, 0, strlen (password2)); return res; } gboolean dialog_ask_for_confirmation (gchar *message, gchar *prompt, gboolean default_answer) { gchar *line; const gchar *positive_answers = Q_("List of affirmative answers, separated with #|Yes#yes#Y#y"); const gchar *negative_answers = Q_("List of negative answers, separated with #|No#no#N#n"); gchar **aux; gint i; if (message) printf ("%s\n", message); while (TRUE) { line = readline (prompt); if (line == NULL) return default_answer; if (strlen (line) == 0) return default_answer; aux = g_strsplit (positive_answers, "#", -1); i = 0; while (aux[i]) { if (!strcmp (line, aux[i])) { free (line); g_strfreev (aux); return TRUE; } i++; } g_strfreev (aux); aux = g_strsplit (negative_answers, "#", -1); i = 0; while (aux[i]) { if (!strcmp (line, aux[i])) { free (line); g_strfreev (aux); return FALSE; } i++; } g_strfreev (aux); free (line); } } gint dialog_ask_for_number (gchar *message, gint minimum, gint maximum, gint default_value) { gchar *line; gchar *prompt = NULL; gint result; gboolean keep_trying = TRUE; if (! message) message = ""; g_assert (minimum <= default_value); g_assert (maximum >= default_value); if (maximum == default_value) prompt = g_strdup_printf ("%s (%d - [%d]): ", message, minimum, maximum); else if (minimum == default_value) prompt = g_strdup_printf ("%s ([%d] - %d): ", message, minimum, maximum); else prompt = g_strdup_printf ("%s (%d - [%d] - %d): ", message, minimum, default_value, maximum); while (keep_trying) { line = readline (prompt); if (line == NULL || strlen (line) == 0) { result = default_value; keep_trying = FALSE; } if (atoi (line) <= maximum && atoi(line) >= minimum) { result = (atoi (line)); keep_trying = FALSE; } if (line) free (line); } g_free (prompt); return result; } gchar * dialog_ask_for_password (gchar *message) { gchar *password; gchar *aux = NULL; aux = getpass (message); if (!aux || aux[0] == '\0') { return NULL; } else { password = g_strdup (aux); memset (aux, 0, strlen(aux)); } return password; } gchar * dialog_ask_for_string (gchar *message, gchar *default_answer) { gchar *prompt; gchar *result = NULL; char *line; printf ("%s\n", message); if (default_answer) { prompt = g_strdup_printf ("[%s] : ", default_answer); } else { prompt = g_strdup (": "); } line = readline (prompt); if (line == NULL || strlen(line) == 0) { if (default_answer) result = g_strdup(default_answer); else result = NULL; } else { result = g_strdup (line); } g_free (prompt); return result; } #else #include #include void dialog_info (gchar *message) { GtkWidget *dialog; /* Create the widgets */ dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", message); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (dialog); } void dialog_error (gchar *message) { GtkWidget *dialog; /* Create the widgets */ dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, "%s", message); gtk_dialog_run (GTK_DIALOG(dialog)); gtk_widget_destroy (dialog); } gchar * dialog_get_password (gchar *info_message, gchar *password_message, gchar *confirm_message, gchar *distinct_error_message, guint minimum_length) { GObject * widget = NULL, * password_widget = NULL; //GtkDialog * dialog = NULL; GtkBuilder * dialog_gtkb = NULL; gint response = 0; gchar *password = NULL; const gchar *passwordagain = NULL; dialog_gtkb = gtk_builder_new(); gtk_builder_add_from_file (dialog_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "get_password_dialog.ui", NULL ), NULL); gtk_builder_connect_signals (dialog_gtkb, NULL); widget = gtk_builder_get_object (dialog_gtkb, "info_message"); gtk_label_set_text (GTK_LABEL(widget), info_message); widget = gtk_builder_get_object (dialog_gtkb, "password_message"); gtk_label_set_text (GTK_LABEL(widget), password_message); widget = gtk_builder_get_object (dialog_gtkb, "confirm_message"); gtk_label_set_text (GTK_LABEL(widget), confirm_message); password_widget = gtk_builder_get_object (dialog_gtkb, "password_entry"); widget = gtk_builder_get_object (dialog_gtkb, "password_dialog_ok_button"); g_object_set_data (G_OBJECT(password_widget), "minimum_length", GINT_TO_POINTER(minimum_length)); g_object_set_data (G_OBJECT(password_widget), "ok_button", widget); do { gtk_widget_grab_focus (GTK_WIDGET(password_widget)); if (password) g_free (password); widget = gtk_builder_get_object (dialog_gtkb, "get_password_dialog"); response = gtk_dialog_run(GTK_DIALOG(widget)); if (!response) { gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return NULL; } else { widget = gtk_builder_get_object (dialog_gtkb, "password_entry"); password = g_strdup(gtk_entry_get_text (GTK_ENTRY(widget))); widget = gtk_builder_get_object (dialog_gtkb, "confirm_entry"); passwordagain = gtk_entry_get_text (GTK_ENTRY(widget)); } if (strcmp (password, passwordagain)) { dialog_error (distinct_error_message); } } while (strcmp (password, passwordagain)); widget = gtk_builder_get_object (dialog_gtkb, "get_password_dialog"); gtk_widget_destroy (GTK_WIDGET(widget)); g_object_unref (G_OBJECT(dialog_gtkb)); return password; } G_MODULE_EXPORT void dialog_password_entry_changed_cb (GtkEditable *password_entry, gpointer user_data) { GtkWidget * button = GTK_WIDGET(g_object_get_data (G_OBJECT(password_entry), "ok_button")); guint minimum_length = GPOINTER_TO_INT (g_object_get_data (G_OBJECT(password_entry), "minimum_length")); if (strlen (gtk_entry_get_text (GTK_ENTRY(password_entry))) >= minimum_length) gtk_widget_set_sensitive (button, TRUE); else gtk_widget_set_sensitive (button, FALSE); } #endif void dialog_todo () { dialog_error (_("To do. Feature not implemented yet.")); } gnomint-1.3.0/src/new_ca_window.c0000664000175000017500000002414312672052326013700 00000000000000// gnoMint: a graphical interface for managing a certification authority // Copyright (C) 2006-2009 David Marín Carreño // // This file is part of gnoMint. // // gnoMint is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include #include #include #include #include #include "new_ca_window.h" #include "creation_process_window.h" #include "ca_file.h" #include "tls.h" #include "pkey_manage.h" #include "country_table.h" #include GtkBuilder * new_ca_window_gtkb = NULL; void new_ca_window_display() { // Workaround for libglade new_ca_window_gtkb = gtk_builder_new(); gtk_builder_add_from_file(new_ca_window_gtkb, g_build_filename (PACKAGE_DATA_DIR, "gnomint", "new_ca_window.ui", NULL ), NULL); gtk_builder_connect_signals (new_ca_window_gtkb, NULL); country_table_populate_combobox(GTK_COMBO_BOX(gtk_builder_get_object(new_ca_window_gtkb, "country_combobox"))); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_ca_window_gtkb, "rsa_radiobutton")), TRUE); gtk_spin_button_set_value (GTK_SPIN_BUTTON(gtk_builder_get_object(new_ca_window_gtkb, "keylength_spinbutton")), 2048); } // TAB Manage void new_ca_tab_activate (int tab_number) { GtkNotebook *notebook = GTK_NOTEBOOK(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_notebook")); gtk_notebook_set_current_page (notebook, tab_number); } G_MODULE_EXPORT void on_new_ca_privkey_type_toggle (GtkToggleButton *button, gpointer user_data) { GtkToggleButton *rsatoggle = GTK_TOGGLE_BUTTON(gtk_builder_get_object (new_ca_window_gtkb, "rsa_radiobutton")); GtkAdjustment *adj = GTK_ADJUSTMENT(gtk_builder_get_object (new_ca_window_gtkb, "adjustmentCAKeyLength")); gdouble value = gtk_spin_button_get_value (GTK_SPIN_BUTTON(gtk_builder_get_object(new_ca_window_gtkb, "keylength_spinbutton"))); if (gtk_toggle_button_get_active(rsatoggle)) { // RSA is active gtk_adjustment_set_upper (adj, 10240); } else { // DSA is active gtk_adjustment_set_upper (adj, 3072); if (value > 3072) gtk_spin_button_set_value (GTK_SPIN_BUTTON(gtk_builder_get_object(new_ca_window_gtkb, "keylength_spinbutton")), 3072); } } G_MODULE_EXPORT void on_cn_entry_changed (GtkEditable *editable, gpointer user_data) { GtkButton *button = GTK_BUTTON(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_next1")); if (strlen (gtk_entry_get_text (GTK_ENTRY(editable)))) gtk_widget_set_sensitive (GTK_WIDGET(button), TRUE); else gtk_widget_set_sensitive (GTK_WIDGET(button), FALSE); } G_MODULE_EXPORT void on_new_ca_next1_clicked (GtkButton *widget, gpointer user_data) { new_ca_tab_activate (1); } G_MODULE_EXPORT void on_new_ca_previous2_clicked (GtkButton *widget, gpointer user_data) { new_ca_tab_activate (0); } G_MODULE_EXPORT void on_new_ca_next2_clicked (GtkButton *widget, gpointer user_data) { new_ca_tab_activate (2); } G_MODULE_EXPORT void on_new_ca_previous3_clicked (GtkButton *widget, gpointer user_data) { new_ca_tab_activate (1); } G_MODULE_EXPORT void on_new_ca_cancel_clicked (GtkButton *widget, gpointer user_data) { GtkWindow *window = GTK_WINDOW(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_window")); gtk_object_destroy(GTK_OBJECT(window)); } G_MODULE_EXPORT void on_new_ca_pwd_entry_changed (GtkEntry *entry, gpointer user_data) { const gchar *text1; const gchar *text2; GtkEntry *pwd_entry_1 = GTK_ENTRY(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_pwd_entry_1")); GtkEntry *pwd_entry_2 = GTK_ENTRY(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_pwd_entry_2")); GtkButton *commit_button = GTK_BUTTON(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_commit")); text1 = gtk_entry_get_text (pwd_entry_1); text2 = gtk_entry_get_text (pwd_entry_2); if (strlen(text1) && strlen(text2) && ! strcmp(text1, text2)) { gtk_widget_set_sensitive (GTK_WIDGET(commit_button), TRUE); } else { gtk_widget_set_sensitive (GTK_WIDGET(commit_button), FALSE); } } G_MODULE_EXPORT void on_new_ca_pwd_protect_radiobutton_toggled (GtkRadioButton *radiobutton, gpointer user_data) { GtkRadioButton *yes = GTK_RADIO_BUTTON(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_pwd_protect_yes_radiobutton")); GtkLabel *pwd_label_1 = GTK_LABEL(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_pwd_label_1")); GtkLabel *pwd_label_2 = GTK_LABEL(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_pwd_label_2")); GtkEntry *pwd_entry_1 = GTK_ENTRY(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_pwd_entry_1")); GtkEntry *pwd_entry_2 = GTK_ENTRY(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_pwd_entry_2")); GtkButton *commit_button = GTK_BUTTON(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_commit")); if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(yes))) { gtk_widget_set_sensitive (GTK_WIDGET(pwd_label_1), TRUE); gtk_widget_set_sensitive (GTK_WIDGET(pwd_label_2), TRUE); gtk_widget_set_sensitive (GTK_WIDGET(pwd_entry_1), TRUE); gtk_widget_set_sensitive (GTK_WIDGET(pwd_entry_2), TRUE); on_new_ca_pwd_entry_changed (pwd_entry_1, NULL); } else { gtk_widget_set_sensitive (GTK_WIDGET(pwd_label_1), FALSE); gtk_widget_set_sensitive (GTK_WIDGET(pwd_label_2), FALSE); gtk_widget_set_sensitive (GTK_WIDGET(pwd_entry_1), FALSE); gtk_widget_set_sensitive (GTK_WIDGET(pwd_entry_2), FALSE); gtk_widget_set_sensitive (GTK_WIDGET(commit_button), TRUE); } } G_MODULE_EXPORT void on_new_ca_commit_clicked (GtkButton *widg, gpointer user_data) { TlsCreationData *ca_creation_data = NULL; GtkWidget *widget = NULL; GtkWindow *window = NULL; gint active = -1; gchar *text = NULL; GtkTreeModel *tree_model = NULL; GtkTreeIter tree_iter; time_t tmp; struct tm * expiration_time; ca_creation_data = g_new0 (TlsCreationData, 1); widget = GTK_WIDGET(gtk_builder_get_object (new_ca_window_gtkb, "country_combobox")); active = gtk_combo_box_get_active (GTK_COMBO_BOX(widget)); if (active < 0) { ca_creation_data->country = NULL; } else { tree_model = gtk_combo_box_get_model (GTK_COMBO_BOX(widget)); gtk_combo_box_get_active_iter (GTK_COMBO_BOX(widget), &tree_iter); gtk_tree_model_get (tree_model, &tree_iter, 1, &text, -1); ca_creation_data->country = g_strdup (text); g_free (text); } widget = GTK_WIDGET(gtk_builder_get_object (new_ca_window_gtkb, "st_entry")); text = (gchar *) gtk_entry_get_text (GTK_ENTRY(widget)); if (strlen (text)) ca_creation_data->state = g_strdup (text); else ca_creation_data->state = NULL; widget = GTK_WIDGET(gtk_builder_get_object (new_ca_window_gtkb, "city_entry")); text = (gchar *) gtk_entry_get_text (GTK_ENTRY(widget)); if (strlen (text)) ca_creation_data->city = g_strdup (text); else ca_creation_data->city = NULL; widget = GTK_WIDGET(gtk_builder_get_object (new_ca_window_gtkb, "o_entry")); text = (gchar *) gtk_entry_get_text (GTK_ENTRY(widget)); if (strlen (text)) ca_creation_data->org = g_strdup (text); else ca_creation_data->org = NULL; widget = GTK_WIDGET(gtk_builder_get_object (new_ca_window_gtkb, "ou_entry")); text = (gchar *) gtk_entry_get_text (GTK_ENTRY(widget)); if (strlen (text)) ca_creation_data->ou = g_strdup (text); else ca_creation_data->ou = NULL; widget = GTK_WIDGET(gtk_builder_get_object (new_ca_window_gtkb, "cn_entry")); text = (gchar *) gtk_entry_get_text (GTK_ENTRY(widget)); if (strlen (text)) ca_creation_data->cn = g_strdup (text); else ca_creation_data->cn = NULL; widget = GTK_WIDGET(gtk_builder_get_object (new_ca_window_gtkb, "dsa_radiobutton")); active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(widget)); ca_creation_data->key_type = active; widget = GTK_WIDGET(gtk_builder_get_object (new_ca_window_gtkb, "keylength_spinbutton")); active = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON(widget)); ca_creation_data->key_bitlength = active; widget = GTK_WIDGET(gtk_builder_get_object (new_ca_window_gtkb, "months_before_expiration_spinbutton")); active = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON(widget)); ca_creation_data->key_months_before_expiration = active; tmp = time (NULL); ca_creation_data->activation = tmp; expiration_time = g_new (struct tm,1); #ifndef WIN32 localtime_r (&tmp, expiration_time); #else expiration_time = localtime(&tmp); #endif expiration_time->tm_mon = expiration_time->tm_mon + ca_creation_data->key_months_before_expiration; expiration_time->tm_year = expiration_time->tm_year + (expiration_time->tm_mon / 12); expiration_time->tm_mon = expiration_time->tm_mon % 12; ca_creation_data->expiration = mktime(expiration_time); #ifndef WIN32 g_free (expiration_time); #endif widget = GTK_WIDGET(gtk_builder_get_object (new_ca_window_gtkb, "crl_distribution_point_entry")); text = (gchar *) gtk_entry_get_text (GTK_ENTRY(widget)); if (strlen (text)) ca_creation_data->crl_distribution_point = g_strdup (text); else ca_creation_data->crl_distribution_point = NULL; if (ca_file_is_password_protected()) { ca_creation_data->password = pkey_manage_ask_password(); if (! ca_creation_data->password) { /* The user hasn't provided a valid password */ tls_creation_data_free (ca_creation_data); return; } } window = GTK_WINDOW(gtk_builder_get_object (new_ca_window_gtkb, "new_ca_window")); gtk_object_destroy(GTK_OBJECT(window)); creation_process_window_ca_display (ca_creation_data); } gnomint-1.3.0/ltmain.sh0000644000175000017500000105203012672052505011734 00000000000000 # libtool (GNU libtool) 2.4.2 # Written by Gordon Matzigkeit , 1996 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, # 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # GNU Libtool is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # As a special exception to the GNU General Public License, # if you distribute this file as part of a program or library that # is built using GNU Libtool, you may include this file under the # same distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Libtool; see the file COPYING. If not, a copy # can be downloaded from http://www.gnu.org/licenses/gpl.html, # or obtained by writing to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # Usage: $progname [OPTION]... [MODE-ARG]... # # Provide generalized library-building support services. # # --config show all configuration variables # --debug enable verbose shell tracing # -n, --dry-run display commands without modifying any files # --features display basic configuration information and exit # --mode=MODE use operation mode MODE # --preserve-dup-deps don't remove duplicate dependency libraries # --quiet, --silent don't print informational messages # --no-quiet, --no-silent # print informational messages (default) # --no-warn don't display warning messages # --tag=TAG use configuration variables from tag TAG # -v, --verbose print more informational messages than default # --no-verbose don't print the extra informational messages # --version print version information # -h, --help, --help-all print short, long, or detailed help message # # MODE must be one of the following: # # clean remove files from the build directory # compile compile a source file into a libtool object # execute automatically set library path, then run a program # finish complete the installation of libtool libraries # install install libraries or executables # link create a library or an executable # uninstall remove libraries from an installed directory # # MODE-ARGS vary depending on the MODE. When passed as first option, # `--mode=MODE' may be abbreviated as `MODE' or a unique abbreviation of that. # Try `$progname --help --mode=MODE' for a more detailed description of MODE. # # When reporting a bug, please describe a test case to reproduce it and # include the following information: # # host-triplet: $host # shell: $SHELL # compiler: $LTCC # compiler flags: $LTCFLAGS # linker: $LD (gnu? $with_gnu_ld) # $progname: (GNU libtool) 2.4.2 Debian-2.4.2-1.11 # automake: $automake_version # autoconf: $autoconf_version # # Report bugs to . # GNU libtool home page: . # General help using GNU software: . PROGRAM=libtool PACKAGE=libtool VERSION="2.4.2 Debian-2.4.2-1.11" TIMESTAMP="" package_revision=1.3337 # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac fi BIN_SH=xpg4; export BIN_SH # for Tru64 DUALCASE=1; export DUALCASE # for MKS sh # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF $1 _LTECHO_EOF' } # NLS nuisances: We save the old values to restore during execute mode. lt_user_locale= lt_safe_locale= for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES do eval "if test \"\${$lt_var+set}\" = set; then save_$lt_var=\$$lt_var $lt_var=C export $lt_var lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\" lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\" fi" done LC_ALL=C LANGUAGE=C export LANGUAGE LC_ALL $lt_unset CDPATH # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh # is ksh but when the shell is invoked as "sh" and the current value of # the _XPG environment variable is not equal to 1 (one), the special # positional parameter $0, within a function call, is the name of the # function. progpath="$0" : ${CP="cp -f"} test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'} : ${MAKE="make"} : ${MKDIR="mkdir"} : ${MV="mv -f"} : ${RM="rm -f"} : ${SHELL="${CONFIG_SHELL-/bin/sh}"} : ${Xsed="$SED -e 1s/^X//"} # Global variables: EXIT_SUCCESS=0 EXIT_FAILURE=1 EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. exit_status=$EXIT_SUCCESS # Make sure IFS has a sensible default lt_nl=' ' IFS=" $lt_nl" dirname="s,/[^/]*$,," basename="s,^.*/,," # func_dirname file append nondir_replacement # Compute the dirname of FILE. If nonempty, add APPEND to the result, # otherwise set result to NONDIR_REPLACEMENT. func_dirname () { func_dirname_result=`$ECHO "${1}" | $SED "$dirname"` if test "X$func_dirname_result" = "X${1}"; then func_dirname_result="${3}" else func_dirname_result="$func_dirname_result${2}" fi } # func_dirname may be replaced by extended shell implementation # func_basename file func_basename () { func_basename_result=`$ECHO "${1}" | $SED "$basename"` } # func_basename may be replaced by extended shell implementation # func_dirname_and_basename file append nondir_replacement # perform func_basename and func_dirname in a single function # call: # dirname: Compute the dirname of FILE. If nonempty, # add APPEND to the result, otherwise set result # to NONDIR_REPLACEMENT. # value returned in "$func_dirname_result" # basename: Compute filename of FILE. # value retuned in "$func_basename_result" # Implementation must be kept synchronized with func_dirname # and func_basename. For efficiency, we do not delegate to # those functions but instead duplicate the functionality here. func_dirname_and_basename () { # Extract subdirectory from the argument. func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"` if test "X$func_dirname_result" = "X${1}"; then func_dirname_result="${3}" else func_dirname_result="$func_dirname_result${2}" fi func_basename_result=`$ECHO "${1}" | $SED -e "$basename"` } # func_dirname_and_basename may be replaced by extended shell implementation # func_stripname prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). # func_strip_suffix prefix name func_stripname () { case ${2} in .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; esac } # func_stripname may be replaced by extended shell implementation # These SED scripts presuppose an absolute path with a trailing slash. pathcar='s,^/\([^/]*\).*$,\1,' pathcdr='s,^/[^/]*,,' removedotparts=':dotsl s@/\./@/@g t dotsl s,/\.$,/,' collapseslashes='s@/\{1,\}@/@g' finalslash='s,/*$,/,' # func_normal_abspath PATH # Remove doubled-up and trailing slashes, "." path components, # and cancel out any ".." path components in PATH after making # it an absolute path. # value returned in "$func_normal_abspath_result" func_normal_abspath () { # Start from root dir and reassemble the path. func_normal_abspath_result= func_normal_abspath_tpath=$1 func_normal_abspath_altnamespace= case $func_normal_abspath_tpath in "") # Empty path, that just means $cwd. func_stripname '' '/' "`pwd`" func_normal_abspath_result=$func_stripname_result return ;; # The next three entries are used to spot a run of precisely # two leading slashes without using negated character classes; # we take advantage of case's first-match behaviour. ///*) # Unusual form of absolute path, do nothing. ;; //*) # Not necessarily an ordinary path; POSIX reserves leading '//' # and for example Cygwin uses it to access remote file shares # over CIFS/SMB, so we conserve a leading double slash if found. func_normal_abspath_altnamespace=/ ;; /*) # Absolute path, do nothing. ;; *) # Relative path, prepend $cwd. func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath ;; esac # Cancel out all the simple stuff to save iterations. We also want # the path to end with a slash for ease of parsing, so make sure # there is one (and only one) here. func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ -e "$removedotparts" -e "$collapseslashes" -e "$finalslash"` while :; do # Processed it all yet? if test "$func_normal_abspath_tpath" = / ; then # If we ascended to the root using ".." the result may be empty now. if test -z "$func_normal_abspath_result" ; then func_normal_abspath_result=/ fi break fi func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ -e "$pathcar"` func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ -e "$pathcdr"` # Figure out what to do with it case $func_normal_abspath_tcomponent in "") # Trailing empty path component, ignore it. ;; ..) # Parent dir; strip last assembled component from result. func_dirname "$func_normal_abspath_result" func_normal_abspath_result=$func_dirname_result ;; *) # Actual path component, append it. func_normal_abspath_result=$func_normal_abspath_result/$func_normal_abspath_tcomponent ;; esac done # Restore leading double-slash if one was found on entry. func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result } # func_relative_path SRCDIR DSTDIR # generates a relative path from SRCDIR to DSTDIR, with a trailing # slash if non-empty, suitable for immediately appending a filename # without needing to append a separator. # value returned in "$func_relative_path_result" func_relative_path () { func_relative_path_result= func_normal_abspath "$1" func_relative_path_tlibdir=$func_normal_abspath_result func_normal_abspath "$2" func_relative_path_tbindir=$func_normal_abspath_result # Ascend the tree starting from libdir while :; do # check if we have found a prefix of bindir case $func_relative_path_tbindir in $func_relative_path_tlibdir) # found an exact match func_relative_path_tcancelled= break ;; $func_relative_path_tlibdir*) # found a matching prefix func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" func_relative_path_tcancelled=$func_stripname_result if test -z "$func_relative_path_result"; then func_relative_path_result=. fi break ;; *) func_dirname $func_relative_path_tlibdir func_relative_path_tlibdir=${func_dirname_result} if test "x$func_relative_path_tlibdir" = x ; then # Have to descend all the way to the root! func_relative_path_result=../$func_relative_path_result func_relative_path_tcancelled=$func_relative_path_tbindir break fi func_relative_path_result=../$func_relative_path_result ;; esac done # Now calculate path; take care to avoid doubling-up slashes. func_stripname '' '/' "$func_relative_path_result" func_relative_path_result=$func_stripname_result func_stripname '/' '/' "$func_relative_path_tcancelled" if test "x$func_stripname_result" != x ; then func_relative_path_result=${func_relative_path_result}/${func_stripname_result} fi # Normalisation. If bindir is libdir, return empty string, # else relative path ending with a slash; either way, target # file name can be directly appended. if test ! -z "$func_relative_path_result"; then func_stripname './' '' "$func_relative_path_result/" func_relative_path_result=$func_stripname_result fi } # The name of this program: func_dirname_and_basename "$progpath" progname=$func_basename_result # Make sure we have an absolute path for reexecution: case $progpath in [\\/]*|[A-Za-z]:\\*) ;; *[\\/]*) progdir=$func_dirname_result progdir=`cd "$progdir" && pwd` progpath="$progdir/$progname" ;; *) save_IFS="$IFS" IFS=${PATH_SEPARATOR-:} for progdir in $PATH; do IFS="$save_IFS" test -x "$progdir/$progname" && break done IFS="$save_IFS" test -n "$progdir" || progdir=`pwd` progpath="$progdir/$progname" ;; esac # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. Xsed="${SED}"' -e 1s/^X//' sed_quote_subst='s/\([`"$\\]\)/\\\1/g' # Same as above, but do not quote variable references. double_quote_subst='s/\(["`\\]\)/\\\1/g' # Sed substitution that turns a string into a regex matching for the # string literally. sed_make_literal_regex='s,[].[^$\\*\/],\\&,g' # Sed substitution that converts a w32 file name or path # which contains forward slashes, into one that contains # (escaped) backslashes. A very naive implementation. lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' # Re-`\' parameter expansions in output of double_quote_subst that were # `\'-ed in input to the same. If an odd number of `\' preceded a '$' # in input to double_quote_subst, that '$' was protected from expansion. # Since each input `\' is now two `\'s, look for any number of runs of # four `\'s followed by two `\'s and then a '$'. `\' that '$'. bs='\\' bs2='\\\\' bs4='\\\\\\\\' dollar='\$' sed_double_backslash="\ s/$bs4/&\\ /g s/^$bs2$dollar/$bs&/ s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g s/\n//g" # Standard options: opt_dry_run=false opt_help=false opt_quiet=false opt_verbose=false opt_warning=: # func_echo arg... # Echo program name prefixed message, along with the current mode # name if it has been set yet. func_echo () { $ECHO "$progname: ${opt_mode+$opt_mode: }$*" } # func_verbose arg... # Echo program name prefixed message in verbose mode only. func_verbose () { $opt_verbose && func_echo ${1+"$@"} # A bug in bash halts the script if the last line of a function # fails when set -e is in force, so we need another command to # work around that: : } # func_echo_all arg... # Invoke $ECHO with all args, space-separated. func_echo_all () { $ECHO "$*" } # func_error arg... # Echo program name prefixed message to standard error. func_error () { $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2 } # func_warning arg... # Echo program name prefixed warning message to standard error. func_warning () { $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2 # bash bug again: : } # func_fatal_error arg... # Echo program name prefixed message to standard error, and exit. func_fatal_error () { func_error ${1+"$@"} exit $EXIT_FAILURE } # func_fatal_help arg... # Echo program name prefixed message to standard error, followed by # a help hint, and exit. func_fatal_help () { func_error ${1+"$@"} func_fatal_error "$help" } help="Try \`$progname --help' for more information." ## default # func_grep expression filename # Check whether EXPRESSION matches any line of FILENAME, without output. func_grep () { $GREP "$1" "$2" >/dev/null 2>&1 } # func_mkdir_p directory-path # Make sure the entire path to DIRECTORY-PATH is available. func_mkdir_p () { my_directory_path="$1" my_dir_list= if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then # Protect directory names starting with `-' case $my_directory_path in -*) my_directory_path="./$my_directory_path" ;; esac # While some portion of DIR does not yet exist... while test ! -d "$my_directory_path"; do # ...make a list in topmost first order. Use a colon delimited # list incase some portion of path contains whitespace. my_dir_list="$my_directory_path:$my_dir_list" # If the last portion added has no slash in it, the list is done case $my_directory_path in */*) ;; *) break ;; esac # ...otherwise throw away the child directory and loop my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"` done my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'` save_mkdir_p_IFS="$IFS"; IFS=':' for my_dir in $my_dir_list; do IFS="$save_mkdir_p_IFS" # mkdir can fail with a `File exist' error if two processes # try to create one of the directories concurrently. Don't # stop in that case! $MKDIR "$my_dir" 2>/dev/null || : done IFS="$save_mkdir_p_IFS" # Bail out if we (or some other process) failed to create a directory. test -d "$my_directory_path" || \ func_fatal_error "Failed to create \`$1'" fi } # func_mktempdir [string] # Make a temporary directory that won't clash with other running # libtool processes, and avoids race conditions if possible. If # given, STRING is the basename for that directory. func_mktempdir () { my_template="${TMPDIR-/tmp}/${1-$progname}" if test "$opt_dry_run" = ":"; then # Return a directory name, but don't create it in dry-run mode my_tmpdir="${my_template}-$$" else # If mktemp works, use that first and foremost my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` if test ! -d "$my_tmpdir"; then # Failing that, at least try and use $RANDOM to avoid a race my_tmpdir="${my_template}-${RANDOM-0}$$" save_mktempdir_umask=`umask` umask 0077 $MKDIR "$my_tmpdir" umask $save_mktempdir_umask fi # If we're not in dry-run mode, bomb out on failure test -d "$my_tmpdir" || \ func_fatal_error "cannot create temporary directory \`$my_tmpdir'" fi $ECHO "$my_tmpdir" } # func_quote_for_eval arg # Aesthetically quote ARG to be evaled later. # This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT # is double-quoted, suitable for a subsequent eval, whereas # FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters # which are still active within double quotes backslashified. func_quote_for_eval () { case $1 in *[\\\`\"\$]*) func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;; *) func_quote_for_eval_unquoted_result="$1" ;; esac case $func_quote_for_eval_unquoted_result in # Double-quote args containing shell metacharacters to delay # word splitting, command substitution and and variable # expansion for a subsequent eval. # Many Bourne shells cannot handle close brackets correctly # in scan sets, so we specify it separately. *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\"" ;; *) func_quote_for_eval_result="$func_quote_for_eval_unquoted_result" esac } # func_quote_for_expand arg # Aesthetically quote ARG to be evaled later; same as above, # but do not quote variable references. func_quote_for_expand () { case $1 in *[\\\`\"]*) my_arg=`$ECHO "$1" | $SED \ -e "$double_quote_subst" -e "$sed_double_backslash"` ;; *) my_arg="$1" ;; esac case $my_arg in # Double-quote args containing shell metacharacters to delay # word splitting and command substitution for a subsequent eval. # Many Bourne shells cannot handle close brackets correctly # in scan sets, so we specify it separately. *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") my_arg="\"$my_arg\"" ;; esac func_quote_for_expand_result="$my_arg" } # func_show_eval cmd [fail_exp] # Unless opt_silent is true, then output CMD. Then, if opt_dryrun is # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP # is given, then evaluate it. func_show_eval () { my_cmd="$1" my_fail_exp="${2-:}" ${opt_silent-false} || { func_quote_for_expand "$my_cmd" eval "func_echo $func_quote_for_expand_result" } if ${opt_dry_run-false}; then :; else eval "$my_cmd" my_status=$? if test "$my_status" -eq 0; then :; else eval "(exit $my_status); $my_fail_exp" fi fi } # func_show_eval_locale cmd [fail_exp] # Unless opt_silent is true, then output CMD. Then, if opt_dryrun is # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP # is given, then evaluate it. Use the saved locale for evaluation. func_show_eval_locale () { my_cmd="$1" my_fail_exp="${2-:}" ${opt_silent-false} || { func_quote_for_expand "$my_cmd" eval "func_echo $func_quote_for_expand_result" } if ${opt_dry_run-false}; then :; else eval "$lt_user_locale $my_cmd" my_status=$? eval "$lt_safe_locale" if test "$my_status" -eq 0; then :; else eval "(exit $my_status); $my_fail_exp" fi fi } # func_tr_sh # Turn $1 into a string suitable for a shell variable name. # Result is stored in $func_tr_sh_result. All characters # not in the set a-zA-Z0-9_ are replaced with '_'. Further, # if $1 begins with a digit, a '_' is prepended as well. func_tr_sh () { case $1 in [0-9]* | *[!a-zA-Z0-9_]*) func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'` ;; * ) func_tr_sh_result=$1 ;; esac } # func_version # Echo version message to standard output and exit. func_version () { $opt_debug $SED -n '/(C)/!b go :more /\./!{ N s/\n# / / b more } :go /^# '$PROGRAM' (GNU /,/# warranty; / { s/^# // s/^# *$// s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/ p }' < "$progpath" exit $? } # func_usage # Echo short help message to standard output and exit. func_usage () { $opt_debug $SED -n '/^# Usage:/,/^# *.*--help/ { s/^# // s/^# *$// s/\$progname/'$progname'/ p }' < "$progpath" echo $ECHO "run \`$progname --help | more' for full usage" exit $? } # func_help [NOEXIT] # Echo long help message to standard output and exit, # unless 'noexit' is passed as argument. func_help () { $opt_debug $SED -n '/^# Usage:/,/# Report bugs to/ { :print s/^# // s/^# *$// s*\$progname*'$progname'* s*\$host*'"$host"'* s*\$SHELL*'"$SHELL"'* s*\$LTCC*'"$LTCC"'* s*\$LTCFLAGS*'"$LTCFLAGS"'* s*\$LD*'"$LD"'* s/\$with_gnu_ld/'"$with_gnu_ld"'/ s/\$automake_version/'"`(${AUTOMAKE-automake} --version) 2>/dev/null |$SED 1q`"'/ s/\$autoconf_version/'"`(${AUTOCONF-autoconf} --version) 2>/dev/null |$SED 1q`"'/ p d } /^# .* home page:/b print /^# General help using/b print ' < "$progpath" ret=$? if test -z "$1"; then exit $ret fi } # func_missing_arg argname # Echo program name prefixed message to standard error and set global # exit_cmd. func_missing_arg () { $opt_debug func_error "missing argument for $1." exit_cmd=exit } # func_split_short_opt shortopt # Set func_split_short_opt_name and func_split_short_opt_arg shell # variables after splitting SHORTOPT after the 2nd character. func_split_short_opt () { my_sed_short_opt='1s/^\(..\).*$/\1/;q' my_sed_short_rest='1s/^..\(.*\)$/\1/;q' func_split_short_opt_name=`$ECHO "$1" | $SED "$my_sed_short_opt"` func_split_short_opt_arg=`$ECHO "$1" | $SED "$my_sed_short_rest"` } # func_split_short_opt may be replaced by extended shell implementation # func_split_long_opt longopt # Set func_split_long_opt_name and func_split_long_opt_arg shell # variables after splitting LONGOPT at the `=' sign. func_split_long_opt () { my_sed_long_opt='1s/^\(--[^=]*\)=.*/\1/;q' my_sed_long_arg='1s/^--[^=]*=//' func_split_long_opt_name=`$ECHO "$1" | $SED "$my_sed_long_opt"` func_split_long_opt_arg=`$ECHO "$1" | $SED "$my_sed_long_arg"` } # func_split_long_opt may be replaced by extended shell implementation exit_cmd=: magic="%%%MAGIC variable%%%" magic_exe="%%%MAGIC EXE variable%%%" # Global variables. nonopt= preserve_args= lo2o="s/\\.lo\$/.${objext}/" o2lo="s/\\.${objext}\$/.lo/" extracted_archives= extracted_serial=0 # If this variable is set in any of the actions, the command in it # will be execed at the end. This prevents here-documents from being # left over by shells. exec_cmd= # func_append var value # Append VALUE to the end of shell variable VAR. func_append () { eval "${1}=\$${1}\${2}" } # func_append may be replaced by extended shell implementation # func_append_quoted var value # Quote VALUE and append to the end of shell variable VAR, separated # by a space. func_append_quoted () { func_quote_for_eval "${2}" eval "${1}=\$${1}\\ \$func_quote_for_eval_result" } # func_append_quoted may be replaced by extended shell implementation # func_arith arithmetic-term... func_arith () { func_arith_result=`expr "${@}"` } # func_arith may be replaced by extended shell implementation # func_len string # STRING may not start with a hyphen. func_len () { func_len_result=`expr "${1}" : ".*" 2>/dev/null || echo $max_cmd_len` } # func_len may be replaced by extended shell implementation # func_lo2o object func_lo2o () { func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"` } # func_lo2o may be replaced by extended shell implementation # func_xform libobj-or-source func_xform () { func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'` } # func_xform may be replaced by extended shell implementation # func_fatal_configuration arg... # Echo program name prefixed message to standard error, followed by # a configuration failure hint, and exit. func_fatal_configuration () { func_error ${1+"$@"} func_error "See the $PACKAGE documentation for more information." func_fatal_error "Fatal configuration error." } # func_config # Display the configuration for all the tags in this script. func_config () { re_begincf='^# ### BEGIN LIBTOOL' re_endcf='^# ### END LIBTOOL' # Default configuration. $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" # Now print the configurations for the tags. for tagname in $taglist; do $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" done exit $? } # func_features # Display the features supported by this script. func_features () { echo "host: $host" if test "$build_libtool_libs" = yes; then echo "enable shared libraries" else echo "disable shared libraries" fi if test "$build_old_libs" = yes; then echo "enable static libraries" else echo "disable static libraries" fi exit $? } # func_enable_tag tagname # Verify that TAGNAME is valid, and either flag an error and exit, or # enable the TAGNAME tag. We also add TAGNAME to the global $taglist # variable here. func_enable_tag () { # Global variable: tagname="$1" re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" sed_extractcf="/$re_begincf/,/$re_endcf/p" # Validate tagname. case $tagname in *[!-_A-Za-z0-9,/]*) func_fatal_error "invalid tag name: $tagname" ;; esac # Don't test for the "default" C tag, as we know it's # there but not specially marked. case $tagname in CC) ;; *) if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then taglist="$taglist $tagname" # Evaluate the configuration. Be careful to quote the path # and the sed script, to avoid splitting on whitespace, but # also don't use non-portable quotes within backquotes within # quotes we have to do it in 2 steps: extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` eval "$extractedcf" else func_error "ignoring unknown tag $tagname" fi ;; esac } # func_check_version_match # Ensure that we are using m4 macros, and libtool script from the same # release of libtool. func_check_version_match () { if test "$package_revision" != "$macro_revision"; then if test "$VERSION" != "$macro_version"; then if test -z "$macro_version"; then cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from an older release. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF else cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from $PACKAGE $macro_version. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF fi else cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, $progname: but the definition of this LT_INIT comes from revision $macro_revision. $progname: You should recreate aclocal.m4 with macros from revision $package_revision $progname: of $PACKAGE $VERSION and run autoconf again. _LT_EOF fi exit $EXIT_MISMATCH fi } # Shorthand for --mode=foo, only valid as the first argument case $1 in clean|clea|cle|cl) shift; set dummy --mode clean ${1+"$@"}; shift ;; compile|compil|compi|comp|com|co|c) shift; set dummy --mode compile ${1+"$@"}; shift ;; execute|execut|execu|exec|exe|ex|e) shift; set dummy --mode execute ${1+"$@"}; shift ;; finish|finis|fini|fin|fi|f) shift; set dummy --mode finish ${1+"$@"}; shift ;; install|instal|insta|inst|ins|in|i) shift; set dummy --mode install ${1+"$@"}; shift ;; link|lin|li|l) shift; set dummy --mode link ${1+"$@"}; shift ;; uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) shift; set dummy --mode uninstall ${1+"$@"}; shift ;; esac # Option defaults: opt_debug=: opt_dry_run=false opt_config=false opt_preserve_dup_deps=false opt_features=false opt_finish=false opt_help=false opt_help_all=false opt_silent=: opt_warning=: opt_verbose=: opt_silent=false opt_verbose=false # Parse options once, thoroughly. This comes as soon as possible in the # script to make things like `--version' happen as quickly as we can. { # this just eases exit handling while test $# -gt 0; do opt="$1" shift case $opt in --debug|-x) opt_debug='set -x' func_echo "enabling shell trace mode" $opt_debug ;; --dry-run|--dryrun|-n) opt_dry_run=: ;; --config) opt_config=: func_config ;; --dlopen|-dlopen) optarg="$1" opt_dlopen="${opt_dlopen+$opt_dlopen }$optarg" shift ;; --preserve-dup-deps) opt_preserve_dup_deps=: ;; --features) opt_features=: func_features ;; --finish) opt_finish=: set dummy --mode finish ${1+"$@"}; shift ;; --help) opt_help=: ;; --help-all) opt_help_all=: opt_help=': help-all' ;; --mode) test $# = 0 && func_missing_arg $opt && break optarg="$1" opt_mode="$optarg" case $optarg in # Valid mode arguments: clean|compile|execute|finish|install|link|relink|uninstall) ;; # Catch anything else as an error *) func_error "invalid argument for $opt" exit_cmd=exit break ;; esac shift ;; --no-silent|--no-quiet) opt_silent=false func_append preserve_args " $opt" ;; --no-warning|--no-warn) opt_warning=false func_append preserve_args " $opt" ;; --no-verbose) opt_verbose=false func_append preserve_args " $opt" ;; --silent|--quiet) opt_silent=: func_append preserve_args " $opt" opt_verbose=false ;; --verbose|-v) opt_verbose=: func_append preserve_args " $opt" opt_silent=false ;; --tag) test $# = 0 && func_missing_arg $opt && break optarg="$1" opt_tag="$optarg" func_append preserve_args " $opt $optarg" func_enable_tag "$optarg" shift ;; -\?|-h) func_usage ;; --help) func_help ;; --version) func_version ;; # Separate optargs to long options: --*=*) func_split_long_opt "$opt" set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"} shift ;; # Separate non-argument short options: -\?*|-h*|-n*|-v*) func_split_short_opt "$opt" set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"} shift ;; --) break ;; -*) func_fatal_help "unrecognized option \`$opt'" ;; *) set dummy "$opt" ${1+"$@"}; shift; break ;; esac done # Validate options: # save first non-option argument if test "$#" -gt 0; then nonopt="$opt" shift fi # preserve --debug test "$opt_debug" = : || func_append preserve_args " --debug" case $host in *cygwin* | *mingw* | *pw32* | *cegcc*) # don't eliminate duplications in $postdeps and $predeps opt_duplicate_compiler_generated_deps=: ;; *) opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps ;; esac $opt_help || { # Sanity checks first: func_check_version_match if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then func_fatal_configuration "not configured to build any kind of library" fi # Darwin sucks eval std_shrext=\"$shrext_cmds\" # Only execute mode is allowed to have -dlopen flags. if test -n "$opt_dlopen" && test "$opt_mode" != execute; then func_error "unrecognized option \`-dlopen'" $ECHO "$help" 1>&2 exit $EXIT_FAILURE fi # Change the help message to a mode-specific one. generic_help="$help" help="Try \`$progname --help --mode=$opt_mode' for more information." } # Bail if the options were screwed $exit_cmd $EXIT_FAILURE } ## ----------- ## ## Main. ## ## ----------- ## # func_lalib_p file # True iff FILE is a libtool `.la' library or `.lo' object file. # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_lalib_p () { test -f "$1" && $SED -e 4q "$1" 2>/dev/null \ | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 } # func_lalib_unsafe_p file # True iff FILE is a libtool `.la' library or `.lo' object file. # This function implements the same check as func_lalib_p without # resorting to external programs. To this end, it redirects stdin and # closes it afterwards, without saving the original file descriptor. # As a safety measure, use it only where a negative result would be # fatal anyway. Works if `file' does not exist. func_lalib_unsafe_p () { lalib_p=no if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then for lalib_p_l in 1 2 3 4 do read lalib_p_line case "$lalib_p_line" in \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; esac done exec 0<&5 5<&- fi test "$lalib_p" = yes } # func_ltwrapper_script_p file # True iff FILE is a libtool wrapper script # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_script_p () { func_lalib_p "$1" } # func_ltwrapper_executable_p file # True iff FILE is a libtool wrapper executable # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_executable_p () { func_ltwrapper_exec_suffix= case $1 in *.exe) ;; *) func_ltwrapper_exec_suffix=.exe ;; esac $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 } # func_ltwrapper_scriptname file # Assumes file is an ltwrapper_executable # uses $file to determine the appropriate filename for a # temporary ltwrapper_script. func_ltwrapper_scriptname () { func_dirname_and_basename "$1" "" "." func_stripname '' '.exe' "$func_basename_result" func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper" } # func_ltwrapper_p file # True iff FILE is a libtool wrapper script or wrapper executable # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_ltwrapper_p () { func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" } # func_execute_cmds commands fail_cmd # Execute tilde-delimited COMMANDS. # If FAIL_CMD is given, eval that upon failure. # FAIL_CMD may read-access the current command in variable CMD! func_execute_cmds () { $opt_debug save_ifs=$IFS; IFS='~' for cmd in $1; do IFS=$save_ifs eval cmd=\"$cmd\" func_show_eval "$cmd" "${2-:}" done IFS=$save_ifs } # func_source file # Source FILE, adding directory component if necessary. # Note that it is not necessary on cygwin/mingw to append a dot to # FILE even if both FILE and FILE.exe exist: automatic-append-.exe # behavior happens only for exec(3), not for open(2)! Also, sourcing # `FILE.' does not work on cygwin managed mounts. func_source () { $opt_debug case $1 in */* | *\\*) . "$1" ;; *) . "./$1" ;; esac } # func_resolve_sysroot PATH # Replace a leading = in PATH with a sysroot. Store the result into # func_resolve_sysroot_result func_resolve_sysroot () { func_resolve_sysroot_result=$1 case $func_resolve_sysroot_result in =*) func_stripname '=' '' "$func_resolve_sysroot_result" func_resolve_sysroot_result=$lt_sysroot$func_stripname_result ;; esac } # func_replace_sysroot PATH # If PATH begins with the sysroot, replace it with = and # store the result into func_replace_sysroot_result. func_replace_sysroot () { case "$lt_sysroot:$1" in ?*:"$lt_sysroot"*) func_stripname "$lt_sysroot" '' "$1" func_replace_sysroot_result="=$func_stripname_result" ;; *) # Including no sysroot. func_replace_sysroot_result=$1 ;; esac } # func_infer_tag arg # Infer tagged configuration to use if any are available and # if one wasn't chosen via the "--tag" command line option. # Only attempt this if the compiler in the base compile # command doesn't match the default compiler. # arg is usually of the form 'gcc ...' func_infer_tag () { $opt_debug if test -n "$available_tags" && test -z "$tagname"; then CC_quoted= for arg in $CC; do func_append_quoted CC_quoted "$arg" done CC_expanded=`func_echo_all $CC` CC_quoted_expanded=`func_echo_all $CC_quoted` case $@ in # Blanks in the command may have been stripped by the calling shell, # but not from the CC environment variable when configure was run. " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;; # Blanks at the start of $base_compile will cause this to fail # if we don't check for them as well. *) for z in $available_tags; do if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then # Evaluate the configuration. eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" CC_quoted= for arg in $CC; do # Double-quote args containing other shell metacharacters. func_append_quoted CC_quoted "$arg" done CC_expanded=`func_echo_all $CC` CC_quoted_expanded=`func_echo_all $CC_quoted` case "$@ " in " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) # The compiler in the base compile command matches # the one in the tagged configuration. # Assume this is the tagged configuration we want. tagname=$z break ;; esac fi done # If $tagname still isn't set, then no tagged configuration # was found and let the user know that the "--tag" command # line option must be used. if test -z "$tagname"; then func_echo "unable to infer tagged configuration" func_fatal_error "specify a tag with \`--tag'" # else # func_verbose "using $tagname tagged configuration" fi ;; esac fi } # func_write_libtool_object output_name pic_name nonpic_name # Create a libtool object file (analogous to a ".la" file), # but don't create it if we're doing a dry run. func_write_libtool_object () { write_libobj=${1} if test "$build_libtool_libs" = yes; then write_lobj=\'${2}\' else write_lobj=none fi if test "$build_old_libs" = yes; then write_oldobj=\'${3}\' else write_oldobj=none fi $opt_dry_run || { cat >${write_libobj}T </dev/null` if test "$?" -eq 0 && test -n "${func_convert_core_file_wine_to_w32_tmp}"; then func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | $SED -e "$lt_sed_naive_backslashify"` else func_convert_core_file_wine_to_w32_result= fi fi } # end: func_convert_core_file_wine_to_w32 # func_convert_core_path_wine_to_w32 ARG # Helper function used by path conversion functions when $build is *nix, and # $host is mingw, cygwin, or some other w32 environment. Relies on a correctly # configured wine environment available, with the winepath program in $build's # $PATH. Assumes ARG has no leading or trailing path separator characters. # # ARG is path to be converted from $build format to win32. # Result is available in $func_convert_core_path_wine_to_w32_result. # Unconvertible file (directory) names in ARG are skipped; if no directory names # are convertible, then the result may be empty. func_convert_core_path_wine_to_w32 () { $opt_debug # unfortunately, winepath doesn't convert paths, only file names func_convert_core_path_wine_to_w32_result="" if test -n "$1"; then oldIFS=$IFS IFS=: for func_convert_core_path_wine_to_w32_f in $1; do IFS=$oldIFS func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" if test -n "$func_convert_core_file_wine_to_w32_result" ; then if test -z "$func_convert_core_path_wine_to_w32_result"; then func_convert_core_path_wine_to_w32_result="$func_convert_core_file_wine_to_w32_result" else func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" fi fi done IFS=$oldIFS fi } # end: func_convert_core_path_wine_to_w32 # func_cygpath ARGS... # Wrapper around calling the cygpath program via LT_CYGPATH. This is used when # when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2) # $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or # (2), returns the Cygwin file name or path in func_cygpath_result (input # file name or path is assumed to be in w32 format, as previously converted # from $build's *nix or MSYS format). In case (3), returns the w32 file name # or path in func_cygpath_result (input file name or path is assumed to be in # Cygwin format). Returns an empty string on error. # # ARGS are passed to cygpath, with the last one being the file name or path to # be converted. # # Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH # environment variable; do not put it in $PATH. func_cygpath () { $opt_debug if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` if test "$?" -ne 0; then # on failure, ensure result is empty func_cygpath_result= fi else func_cygpath_result= func_error "LT_CYGPATH is empty or specifies non-existent file: \`$LT_CYGPATH'" fi } #end: func_cygpath # func_convert_core_msys_to_w32 ARG # Convert file name or path ARG from MSYS format to w32 format. Return # result in func_convert_core_msys_to_w32_result. func_convert_core_msys_to_w32 () { $opt_debug # awkward: cmd appends spaces to result func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"` } #end: func_convert_core_msys_to_w32 # func_convert_file_check ARG1 ARG2 # Verify that ARG1 (a file name in $build format) was converted to $host # format in ARG2. Otherwise, emit an error message, but continue (resetting # func_to_host_file_result to ARG1). func_convert_file_check () { $opt_debug if test -z "$2" && test -n "$1" ; then func_error "Could not determine host file name corresponding to" func_error " \`$1'" func_error "Continuing, but uninstalled executables may not work." # Fallback: func_to_host_file_result="$1" fi } # end func_convert_file_check # func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH # Verify that FROM_PATH (a path in $build format) was converted to $host # format in TO_PATH. Otherwise, emit an error message, but continue, resetting # func_to_host_file_result to a simplistic fallback value (see below). func_convert_path_check () { $opt_debug if test -z "$4" && test -n "$3"; then func_error "Could not determine the host path corresponding to" func_error " \`$3'" func_error "Continuing, but uninstalled executables may not work." # Fallback. This is a deliberately simplistic "conversion" and # should not be "improved". See libtool.info. if test "x$1" != "x$2"; then lt_replace_pathsep_chars="s|$1|$2|g" func_to_host_path_result=`echo "$3" | $SED -e "$lt_replace_pathsep_chars"` else func_to_host_path_result="$3" fi fi } # end func_convert_path_check # func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG # Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT # and appending REPL if ORIG matches BACKPAT. func_convert_path_front_back_pathsep () { $opt_debug case $4 in $1 ) func_to_host_path_result="$3$func_to_host_path_result" ;; esac case $4 in $2 ) func_append func_to_host_path_result "$3" ;; esac } # end func_convert_path_front_back_pathsep ################################################## # $build to $host FILE NAME CONVERSION FUNCTIONS # ################################################## # invoked via `$to_host_file_cmd ARG' # # In each case, ARG is the path to be converted from $build to $host format. # Result will be available in $func_to_host_file_result. # func_to_host_file ARG # Converts the file name ARG from $build format to $host format. Return result # in func_to_host_file_result. func_to_host_file () { $opt_debug $to_host_file_cmd "$1" } # end func_to_host_file # func_to_tool_file ARG LAZY # converts the file name ARG from $build format to toolchain format. Return # result in func_to_tool_file_result. If the conversion in use is listed # in (the comma separated) LAZY, no conversion takes place. func_to_tool_file () { $opt_debug case ,$2, in *,"$to_tool_file_cmd",*) func_to_tool_file_result=$1 ;; *) $to_tool_file_cmd "$1" func_to_tool_file_result=$func_to_host_file_result ;; esac } # end func_to_tool_file # func_convert_file_noop ARG # Copy ARG to func_to_host_file_result. func_convert_file_noop () { func_to_host_file_result="$1" } # end func_convert_file_noop # func_convert_file_msys_to_w32 ARG # Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic # conversion to w32 is not available inside the cwrapper. Returns result in # func_to_host_file_result. func_convert_file_msys_to_w32 () { $opt_debug func_to_host_file_result="$1" if test -n "$1"; then func_convert_core_msys_to_w32 "$1" func_to_host_file_result="$func_convert_core_msys_to_w32_result" fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_msys_to_w32 # func_convert_file_cygwin_to_w32 ARG # Convert file name ARG from Cygwin to w32 format. Returns result in # func_to_host_file_result. func_convert_file_cygwin_to_w32 () { $opt_debug func_to_host_file_result="$1" if test -n "$1"; then # because $build is cygwin, we call "the" cygpath in $PATH; no need to use # LT_CYGPATH in this case. func_to_host_file_result=`cygpath -m "$1"` fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_cygwin_to_w32 # func_convert_file_nix_to_w32 ARG # Convert file name ARG from *nix to w32 format. Requires a wine environment # and a working winepath. Returns result in func_to_host_file_result. func_convert_file_nix_to_w32 () { $opt_debug func_to_host_file_result="$1" if test -n "$1"; then func_convert_core_file_wine_to_w32 "$1" func_to_host_file_result="$func_convert_core_file_wine_to_w32_result" fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_nix_to_w32 # func_convert_file_msys_to_cygwin ARG # Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. # Returns result in func_to_host_file_result. func_convert_file_msys_to_cygwin () { $opt_debug func_to_host_file_result="$1" if test -n "$1"; then func_convert_core_msys_to_w32 "$1" func_cygpath -u "$func_convert_core_msys_to_w32_result" func_to_host_file_result="$func_cygpath_result" fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_msys_to_cygwin # func_convert_file_nix_to_cygwin ARG # Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed # in a wine environment, working winepath, and LT_CYGPATH set. Returns result # in func_to_host_file_result. func_convert_file_nix_to_cygwin () { $opt_debug func_to_host_file_result="$1" if test -n "$1"; then # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. func_convert_core_file_wine_to_w32 "$1" func_cygpath -u "$func_convert_core_file_wine_to_w32_result" func_to_host_file_result="$func_cygpath_result" fi func_convert_file_check "$1" "$func_to_host_file_result" } # end func_convert_file_nix_to_cygwin ############################################# # $build to $host PATH CONVERSION FUNCTIONS # ############################################# # invoked via `$to_host_path_cmd ARG' # # In each case, ARG is the path to be converted from $build to $host format. # The result will be available in $func_to_host_path_result. # # Path separators are also converted from $build format to $host format. If # ARG begins or ends with a path separator character, it is preserved (but # converted to $host format) on output. # # All path conversion functions are named using the following convention: # file name conversion function : func_convert_file_X_to_Y () # path conversion function : func_convert_path_X_to_Y () # where, for any given $build/$host combination the 'X_to_Y' value is the # same. If conversion functions are added for new $build/$host combinations, # the two new functions must follow this pattern, or func_init_to_host_path_cmd # will break. # func_init_to_host_path_cmd # Ensures that function "pointer" variable $to_host_path_cmd is set to the # appropriate value, based on the value of $to_host_file_cmd. to_host_path_cmd= func_init_to_host_path_cmd () { $opt_debug if test -z "$to_host_path_cmd"; then func_stripname 'func_convert_file_' '' "$to_host_file_cmd" to_host_path_cmd="func_convert_path_${func_stripname_result}" fi } # func_to_host_path ARG # Converts the path ARG from $build format to $host format. Return result # in func_to_host_path_result. func_to_host_path () { $opt_debug func_init_to_host_path_cmd $to_host_path_cmd "$1" } # end func_to_host_path # func_convert_path_noop ARG # Copy ARG to func_to_host_path_result. func_convert_path_noop () { func_to_host_path_result="$1" } # end func_convert_path_noop # func_convert_path_msys_to_w32 ARG # Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic # conversion to w32 is not available inside the cwrapper. Returns result in # func_to_host_path_result. func_convert_path_msys_to_w32 () { $opt_debug func_to_host_path_result="$1" if test -n "$1"; then # Remove leading and trailing path separator characters from ARG. MSYS # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; # and winepath ignores them completely. func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" func_to_host_path_result="$func_convert_core_msys_to_w32_result" func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" fi } # end func_convert_path_msys_to_w32 # func_convert_path_cygwin_to_w32 ARG # Convert path ARG from Cygwin to w32 format. Returns result in # func_to_host_file_result. func_convert_path_cygwin_to_w32 () { $opt_debug func_to_host_path_result="$1" if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"` func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" fi } # end func_convert_path_cygwin_to_w32 # func_convert_path_nix_to_w32 ARG # Convert path ARG from *nix to w32 format. Requires a wine environment and # a working winepath. Returns result in func_to_host_file_result. func_convert_path_nix_to_w32 () { $opt_debug func_to_host_path_result="$1" if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" func_to_host_path_result="$func_convert_core_path_wine_to_w32_result" func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" fi } # end func_convert_path_nix_to_w32 # func_convert_path_msys_to_cygwin ARG # Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. # Returns result in func_to_host_file_result. func_convert_path_msys_to_cygwin () { $opt_debug func_to_host_path_result="$1" if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" func_cygpath -u -p "$func_convert_core_msys_to_w32_result" func_to_host_path_result="$func_cygpath_result" func_convert_path_check : : \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" : "$1" fi } # end func_convert_path_msys_to_cygwin # func_convert_path_nix_to_cygwin ARG # Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a # a wine environment, working winepath, and LT_CYGPATH set. Returns result in # func_to_host_file_result. func_convert_path_nix_to_cygwin () { $opt_debug func_to_host_path_result="$1" if test -n "$1"; then # Remove leading and trailing path separator characters from # ARG. msys behavior is inconsistent here, cygpath turns them # into '.;' and ';.', and winepath ignores them completely. func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" func_to_host_path_result="$func_cygpath_result" func_convert_path_check : : \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" : "$1" fi } # end func_convert_path_nix_to_cygwin # func_mode_compile arg... func_mode_compile () { $opt_debug # Get the compilation command and the source file. base_compile= srcfile="$nonopt" # always keep a non-empty value in "srcfile" suppress_opt=yes suppress_output= arg_mode=normal libobj= later= pie_flag= for arg do case $arg_mode in arg ) # do not "continue". Instead, add this to base_compile lastarg="$arg" arg_mode=normal ;; target ) libobj="$arg" arg_mode=normal continue ;; normal ) # Accept any command-line options. case $arg in -o) test -n "$libobj" && \ func_fatal_error "you cannot specify \`-o' more than once" arg_mode=target continue ;; -pie | -fpie | -fPIE) func_append pie_flag " $arg" continue ;; -shared | -static | -prefer-pic | -prefer-non-pic) func_append later " $arg" continue ;; -no-suppress) suppress_opt=no continue ;; -Xcompiler) arg_mode=arg # the next one goes into the "base_compile" arg list continue # The current "srcfile" will either be retained or ;; # replaced later. I would guess that would be a bug. -Wc,*) func_stripname '-Wc,' '' "$arg" args=$func_stripname_result lastarg= save_ifs="$IFS"; IFS=',' for arg in $args; do IFS="$save_ifs" func_append_quoted lastarg "$arg" done IFS="$save_ifs" func_stripname ' ' '' "$lastarg" lastarg=$func_stripname_result # Add the arguments to base_compile. func_append base_compile " $lastarg" continue ;; *) # Accept the current argument as the source file. # The previous "srcfile" becomes the current argument. # lastarg="$srcfile" srcfile="$arg" ;; esac # case $arg ;; esac # case $arg_mode # Aesthetically quote the previous argument. func_append_quoted base_compile "$lastarg" done # for arg case $arg_mode in arg) func_fatal_error "you must specify an argument for -Xcompile" ;; target) func_fatal_error "you must specify a target with \`-o'" ;; *) # Get the name of the library object. test -z "$libobj" && { func_basename "$srcfile" libobj="$func_basename_result" } ;; esac # Recognize several different file suffixes. # If the user specifies -o file.o, it is replaced with file.lo case $libobj in *.[cCFSifmso] | \ *.ada | *.adb | *.ads | *.asm | \ *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup) func_xform "$libobj" libobj=$func_xform_result ;; esac case $libobj in *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; *) func_fatal_error "cannot determine name of library object from \`$libobj'" ;; esac func_infer_tag $base_compile for arg in $later; do case $arg in -shared) test "$build_libtool_libs" != yes && \ func_fatal_configuration "can not build a shared library" build_old_libs=no continue ;; -static) build_libtool_libs=no build_old_libs=yes continue ;; -prefer-pic) pic_mode=yes continue ;; -prefer-non-pic) pic_mode=no continue ;; esac done func_quote_for_eval "$libobj" test "X$libobj" != "X$func_quote_for_eval_result" \ && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ && func_warning "libobj name \`$libobj' may not contain shell special characters." func_dirname_and_basename "$obj" "/" "" objname="$func_basename_result" xdir="$func_dirname_result" lobj=${xdir}$objdir/$objname test -z "$base_compile" && \ func_fatal_help "you must specify a compilation command" # Delete any leftover library objects. if test "$build_old_libs" = yes; then removelist="$obj $lobj $libobj ${libobj}T" else removelist="$lobj $libobj ${libobj}T" fi # On Cygwin there's no "real" PIC flag so we must build both object types case $host_os in cygwin* | mingw* | pw32* | os2* | cegcc*) pic_mode=default ;; esac if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then # non-PIC code in shared libraries is not supported pic_mode=default fi # Calculate the filename of the output object if compiler does # not support -o with -c if test "$compiler_c_o" = no; then output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.${objext} lockfile="$output_obj.lock" else output_obj= need_locks=no lockfile= fi # Lock this critical section if it is needed # We use this script file to make the link, it avoids creating a new file if test "$need_locks" = yes; then until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do func_echo "Waiting for $lockfile to be removed" sleep 2 done elif test "$need_locks" = warn; then if test -f "$lockfile"; then $ECHO "\ *** ERROR, $lockfile exists and contains: `cat $lockfile 2>/dev/null` This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support \`-c' and \`-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi func_append removelist " $output_obj" $ECHO "$srcfile" > "$lockfile" fi $opt_dry_run || $RM $removelist func_append removelist " $lockfile" trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 srcfile=$func_to_tool_file_result func_quote_for_eval "$srcfile" qsrcfile=$func_quote_for_eval_result # Only build a PIC object if we are building libtool libraries. if test "$build_libtool_libs" = yes; then # Without this assignment, base_compile gets emptied. fbsd_hideous_sh_bug=$base_compile if test "$pic_mode" != no; then command="$base_compile $qsrcfile $pic_flag" else # Don't build PIC code command="$base_compile $qsrcfile" fi func_mkdir_p "$xdir$objdir" if test -z "$output_obj"; then # Place PIC objects in $objdir func_append command " -o $lobj" fi func_show_eval_locale "$command" \ 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' if test "$need_locks" = warn && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: `cat $lockfile 2>/dev/null` but it should contain: $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support \`-c' and \`-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi # Just move the object if needed, then go on to compile the next one if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then func_show_eval '$MV "$output_obj" "$lobj"' \ 'error=$?; $opt_dry_run || $RM $removelist; exit $error' fi # Allow error messages only from the first compilation. if test "$suppress_opt" = yes; then suppress_output=' >/dev/null 2>&1' fi fi # Only build a position-dependent object if we build old libraries. if test "$build_old_libs" = yes; then if test "$pic_mode" != yes; then # Don't build PIC code command="$base_compile $qsrcfile$pie_flag" else command="$base_compile $qsrcfile $pic_flag" fi if test "$compiler_c_o" = yes; then func_append command " -o $obj" fi # Suppress compiler output if we already did a PIC compilation. func_append command "$suppress_output" func_show_eval_locale "$command" \ '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' if test "$need_locks" = warn && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: `cat $lockfile 2>/dev/null` but it should contain: $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support \`-c' and \`-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $opt_dry_run || $RM $removelist exit $EXIT_FAILURE fi # Just move the object if needed if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then func_show_eval '$MV "$output_obj" "$obj"' \ 'error=$?; $opt_dry_run || $RM $removelist; exit $error' fi fi $opt_dry_run || { func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" # Unlock the critical section if it was locked if test "$need_locks" != no; then removelist=$lockfile $RM "$lockfile" fi } exit $EXIT_SUCCESS } $opt_help || { test "$opt_mode" = compile && func_mode_compile ${1+"$@"} } func_mode_help () { # We need to display help for each of the modes. case $opt_mode in "") # Generic help is extracted from the usage comments # at the start of this file. func_help ;; clean) $ECHO \ "Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... Remove files from the build directory. RM is the name of the program to use to delete files associated with each FILE (typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed to RM. If FILE is a libtool library, object or program, all the files associated with it are deleted. Otherwise, only FILE itself is deleted using RM." ;; compile) $ECHO \ "Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE Compile a source file into a libtool library object. This mode accepts the following additional options: -o OUTPUT-FILE set the output file name to OUTPUT-FILE -no-suppress do not suppress compiler output for multiple passes -prefer-pic try to build PIC objects only -prefer-non-pic try to build non-PIC objects only -shared do not build a \`.o' file suitable for static linking -static only build a \`.o' file suitable for static linking -Wc,FLAG pass FLAG directly to the compiler COMPILE-COMMAND is a command to be used in creating a \`standard' object file from the given SOURCEFILE. The output file name is determined by removing the directory component from SOURCEFILE, then substituting the C source code suffix \`.c' with the library object suffix, \`.lo'." ;; execute) $ECHO \ "Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... Automatically set library path, then run a program. This mode accepts the following additional options: -dlopen FILE add the directory containing FILE to the library path This mode sets the library path environment variable according to \`-dlopen' flags. If any of the ARGS are libtool executable wrappers, then they are translated into their corresponding uninstalled binary, and any of their required library directories are added to the library path. Then, COMMAND is executed, with ARGS as arguments." ;; finish) $ECHO \ "Usage: $progname [OPTION]... --mode=finish [LIBDIR]... Complete the installation of libtool libraries. Each LIBDIR is a directory that contains libtool libraries. The commands that this mode executes may require superuser privileges. Use the \`--dry-run' option if you just want to see what would be executed." ;; install) $ECHO \ "Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... Install executables or libraries. INSTALL-COMMAND is the installation command. The first component should be either the \`install' or \`cp' program. The following components of INSTALL-COMMAND are treated specially: -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation The rest of the components are interpreted as arguments to that command (only BSD-compatible install options are recognized)." ;; link) $ECHO \ "Usage: $progname [OPTION]... --mode=link LINK-COMMAND... Link object files or libraries together to form another library, or to create an executable program. LINK-COMMAND is a command using the C compiler that you would use to create a program from several object files. The following components of LINK-COMMAND are treated specially: -all-static do not do any dynamic linking at all -avoid-version do not add a version suffix if possible -bindir BINDIR specify path to binaries directory (for systems where libraries must be found in the PATH setting at runtime) -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) -export-symbols SYMFILE try to export only the symbols listed in SYMFILE -export-symbols-regex REGEX try to export only the symbols matching REGEX -LLIBDIR search LIBDIR for required installed libraries -lNAME OUTPUT-FILE requires the installed library libNAME -module build a library that can dlopened -no-fast-install disable the fast-install mode -no-install link a not-installable executable -no-undefined declare that a library does not refer to external symbols -o OUTPUT-FILE create OUTPUT-FILE from the specified objects -objectlist FILE Use a list of object files found in FILE to specify objects -precious-files-regex REGEX don't remove output files matching REGEX -release RELEASE specify package release information -rpath LIBDIR the created library will eventually be installed in LIBDIR -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries -shared only do dynamic linking of libtool libraries -shrext SUFFIX override the standard shared library file extension -static do not do any dynamic linking of uninstalled libtool libraries -static-libtool-libs do not do any dynamic linking of libtool libraries -version-info CURRENT[:REVISION[:AGE]] specify library version info [each variable defaults to 0] -weak LIBNAME declare that the target provides the LIBNAME interface -Wc,FLAG -Xcompiler FLAG pass linker-specific FLAG directly to the compiler -Wl,FLAG -Xlinker FLAG pass linker-specific FLAG directly to the linker -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) All other options (arguments beginning with \`-') are ignored. Every other argument is treated as a filename. Files ending in \`.la' are treated as uninstalled libtool libraries, other files are standard or library object files. If the OUTPUT-FILE ends in \`.la', then a libtool library is created, only library objects (\`.lo' files) may be specified, and \`-rpath' is required, except when creating a convenience library. If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created using \`ar' and \`ranlib', or on Windows using \`lib'. If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file is created, otherwise an executable program is created." ;; uninstall) $ECHO \ "Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... Remove libraries from an installation directory. RM is the name of the program to use to delete files associated with each FILE (typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed to RM. If FILE is a libtool library, all the files associated with it are deleted. Otherwise, only FILE itself is deleted using RM." ;; *) func_fatal_help "invalid operation mode \`$opt_mode'" ;; esac echo $ECHO "Try \`$progname --help' for more information about other modes." } # Now that we've collected a possible --mode arg, show help if necessary if $opt_help; then if test "$opt_help" = :; then func_mode_help else { func_help noexit for opt_mode in compile link execute install finish uninstall clean; do func_mode_help done } | sed -n '1p; 2,$s/^Usage:/ or: /p' { func_help noexit for opt_mode in compile link execute install finish uninstall clean; do echo func_mode_help done } | sed '1d /^When reporting/,/^Report/{ H d } $x /information about other modes/d /more detailed .*MODE/d s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/' fi exit $? fi # func_mode_execute arg... func_mode_execute () { $opt_debug # The first argument is the command name. cmd="$nonopt" test -z "$cmd" && \ func_fatal_help "you must specify a COMMAND" # Handle -dlopen flags immediately. for file in $opt_dlopen; do test -f "$file" \ || func_fatal_help "\`$file' is not a file" dir= case $file in *.la) func_resolve_sysroot "$file" file=$func_resolve_sysroot_result # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ || func_fatal_help "\`$lib' is not a valid libtool archive" # Read the libtool library. dlname= library_names= func_source "$file" # Skip this library if it cannot be dlopened. if test -z "$dlname"; then # Warn if it was a shared library. test -n "$library_names" && \ func_warning "\`$file' was not linked with \`-export-dynamic'" continue fi func_dirname "$file" "" "." dir="$func_dirname_result" if test -f "$dir/$objdir/$dlname"; then func_append dir "/$objdir" else if test ! -f "$dir/$dlname"; then func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" fi fi ;; *.lo) # Just add the directory containing the .lo file. func_dirname "$file" "" "." dir="$func_dirname_result" ;; *) func_warning "\`-dlopen' is ignored for non-libtool libraries and objects" continue ;; esac # Get the absolute pathname. absdir=`cd "$dir" && pwd` test -n "$absdir" && dir="$absdir" # Now add the directory to shlibpath_var. if eval "test -z \"\$$shlibpath_var\""; then eval "$shlibpath_var=\"\$dir\"" else eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" fi done # This variable tells wrapper scripts just to set shlibpath_var # rather than running their programs. libtool_execute_magic="$magic" # Check if any of the arguments is a wrapper script. args= for file do case $file in -* | *.la | *.lo ) ;; *) # Do a test to see if this is really a libtool program. if func_ltwrapper_script_p "$file"; then func_source "$file" # Transform arg to wrapped name. file="$progdir/$program" elif func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" func_source "$func_ltwrapper_scriptname_result" # Transform arg to wrapped name. file="$progdir/$program" fi ;; esac # Quote arguments (to preserve shell metacharacters). func_append_quoted args "$file" done if test "X$opt_dry_run" = Xfalse; then if test -n "$shlibpath_var"; then # Export the shlibpath_var. eval "export $shlibpath_var" fi # Restore saved environment variables for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES do eval "if test \"\${save_$lt_var+set}\" = set; then $lt_var=\$save_$lt_var; export $lt_var else $lt_unset $lt_var fi" done # Now prepare to actually exec the command. exec_cmd="\$cmd$args" else # Display what would be done. if test -n "$shlibpath_var"; then eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" echo "export $shlibpath_var" fi $ECHO "$cmd$args" exit $EXIT_SUCCESS fi } test "$opt_mode" = execute && func_mode_execute ${1+"$@"} # func_mode_finish arg... func_mode_finish () { $opt_debug libs= libdirs= admincmds= for opt in "$nonopt" ${1+"$@"} do if test -d "$opt"; then func_append libdirs " $opt" elif test -f "$opt"; then if func_lalib_unsafe_p "$opt"; then func_append libs " $opt" else func_warning "\`$opt' is not a valid libtool archive" fi else func_fatal_error "invalid argument \`$opt'" fi done if test -n "$libs"; then if test -n "$lt_sysroot"; then sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"` sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" else sysroot_cmd= fi # Remove sysroot references if $opt_dry_run; then for lib in $libs; do echo "removing references to $lt_sysroot and \`=' prefixes from $lib" done else tmpdir=`func_mktempdir` for lib in $libs; do sed -e "${sysroot_cmd} s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ > $tmpdir/tmp-la mv -f $tmpdir/tmp-la $lib done ${RM}r "$tmpdir" fi fi if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then for libdir in $libdirs; do if test -n "$finish_cmds"; then # Do each command in the finish commands. func_execute_cmds "$finish_cmds" 'admincmds="$admincmds '"$cmd"'"' fi if test -n "$finish_eval"; then # Do the single finish_eval. eval cmds=\"$finish_eval\" $opt_dry_run || eval "$cmds" || func_append admincmds " $cmds" fi done fi # Exit here if they wanted silent mode. $opt_silent && exit $EXIT_SUCCESS if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then echo "----------------------------------------------------------------------" echo "Libraries have been installed in:" for libdir in $libdirs; do $ECHO " $libdir" done echo echo "If you ever happen to want to link against installed libraries" echo "in a given directory, LIBDIR, you must either use libtool, and" echo "specify the full pathname of the library, or use the \`-LLIBDIR'" echo "flag during linking and do at least one of the following:" if test -n "$shlibpath_var"; then echo " - add LIBDIR to the \`$shlibpath_var' environment variable" echo " during execution" fi if test -n "$runpath_var"; then echo " - add LIBDIR to the \`$runpath_var' environment variable" echo " during linking" fi if test -n "$hardcode_libdir_flag_spec"; then libdir=LIBDIR eval flag=\"$hardcode_libdir_flag_spec\" $ECHO " - use the \`$flag' linker flag" fi if test -n "$admincmds"; then $ECHO " - have your system administrator run these commands:$admincmds" fi if test -f /etc/ld.so.conf; then echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" fi echo echo "See any operating system documentation about shared libraries for" case $host in solaris2.[6789]|solaris2.1[0-9]) echo "more information, such as the ld(1), crle(1) and ld.so(8) manual" echo "pages." ;; *) echo "more information, such as the ld(1) and ld.so(8) manual pages." ;; esac echo "----------------------------------------------------------------------" fi exit $EXIT_SUCCESS } test "$opt_mode" = finish && func_mode_finish ${1+"$@"} # func_mode_install arg... func_mode_install () { $opt_debug # There may be an optional sh(1) argument at the beginning of # install_prog (especially on Windows NT). if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || # Allow the use of GNU shtool's install command. case $nonopt in *shtool*) :;; *) false;; esac; then # Aesthetically quote it. func_quote_for_eval "$nonopt" install_prog="$func_quote_for_eval_result " arg=$1 shift else install_prog= arg=$nonopt fi # The real first argument should be the name of the installation program. # Aesthetically quote it. func_quote_for_eval "$arg" func_append install_prog "$func_quote_for_eval_result" install_shared_prog=$install_prog case " $install_prog " in *[\\\ /]cp\ *) install_cp=: ;; *) install_cp=false ;; esac # We need to accept at least all the BSD install flags. dest= files= opts= prev= install_type= isdir=no stripme= no_mode=: for arg do arg2= if test -n "$dest"; then func_append files " $dest" dest=$arg continue fi case $arg in -d) isdir=yes ;; -f) if $install_cp; then :; else prev=$arg fi ;; -g | -m | -o) prev=$arg ;; -s) stripme=" -s" continue ;; -*) ;; *) # If the previous option needed an argument, then skip it. if test -n "$prev"; then if test "x$prev" = x-m && test -n "$install_override_mode"; then arg2=$install_override_mode no_mode=false fi prev= else dest=$arg continue fi ;; esac # Aesthetically quote the argument. func_quote_for_eval "$arg" func_append install_prog " $func_quote_for_eval_result" if test -n "$arg2"; then func_quote_for_eval "$arg2" fi func_append install_shared_prog " $func_quote_for_eval_result" done test -z "$install_prog" && \ func_fatal_help "you must specify an install program" test -n "$prev" && \ func_fatal_help "the \`$prev' option requires an argument" if test -n "$install_override_mode" && $no_mode; then if $install_cp; then :; else func_quote_for_eval "$install_override_mode" func_append install_shared_prog " -m $func_quote_for_eval_result" fi fi if test -z "$files"; then if test -z "$dest"; then func_fatal_help "no file or destination specified" else func_fatal_help "you must specify a destination" fi fi # Strip any trailing slash from the destination. func_stripname '' '/' "$dest" dest=$func_stripname_result # Check to see that the destination is a directory. test -d "$dest" && isdir=yes if test "$isdir" = yes; then destdir="$dest" destname= else func_dirname_and_basename "$dest" "" "." destdir="$func_dirname_result" destname="$func_basename_result" # Not a directory, so check to see that there is only one file specified. set dummy $files; shift test "$#" -gt 1 && \ func_fatal_help "\`$dest' is not a directory" fi case $destdir in [\\/]* | [A-Za-z]:[\\/]*) ;; *) for file in $files; do case $file in *.lo) ;; *) func_fatal_help "\`$destdir' must be an absolute directory name" ;; esac done ;; esac # This variable tells wrapper scripts just to set variables rather # than running their programs. libtool_install_magic="$magic" staticlibs= future_libdirs= current_libdirs= for file in $files; do # Do each installation. case $file in *.$libext) # Do the static libraries later. func_append staticlibs " $file" ;; *.la) func_resolve_sysroot "$file" file=$func_resolve_sysroot_result # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ || func_fatal_help "\`$file' is not a valid libtool archive" library_names= old_library= relink_command= func_source "$file" # Add the libdir to current_libdirs if it is the destination. if test "X$destdir" = "X$libdir"; then case "$current_libdirs " in *" $libdir "*) ;; *) func_append current_libdirs " $libdir" ;; esac else # Note the libdir as a future libdir. case "$future_libdirs " in *" $libdir "*) ;; *) func_append future_libdirs " $libdir" ;; esac fi func_dirname "$file" "/" "" dir="$func_dirname_result" func_append dir "$objdir" if test -n "$relink_command"; then # Determine the prefix the user has applied to our future dir. inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"` # Don't allow the user to place us outside of our expected # location b/c this prevents finding dependent libraries that # are installed to the same prefix. # At present, this check doesn't affect windows .dll's that # are installed into $libdir/../bin (currently, that works fine) # but it's something to keep an eye on. test "$inst_prefix_dir" = "$destdir" && \ func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" if test -n "$inst_prefix_dir"; then # Stick the inst_prefix_dir data into the link command. relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` else relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` fi func_warning "relinking \`$file'" func_show_eval "$relink_command" \ 'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"' fi # See the names of the shared library. set dummy $library_names; shift if test -n "$1"; then realname="$1" shift srcname="$realname" test -n "$relink_command" && srcname="$realname"T # Install the shared library and build the symlinks. func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ 'exit $?' tstripme="$stripme" case $host_os in cygwin* | mingw* | pw32* | cegcc*) case $realname in *.dll.a) tstripme="" ;; esac ;; esac if test -n "$tstripme" && test -n "$striplib"; then func_show_eval "$striplib $destdir/$realname" 'exit $?' fi if test "$#" -gt 0; then # Delete the old symlinks, and create new ones. # Try `ln -sf' first, because the `ln' binary might depend on # the symlink we replace! Solaris /bin/ln does not understand -f, # so we also need to try rm && ln -s. for linkname do test "$linkname" != "$realname" \ && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" done fi # Do each command in the postinstall commands. lib="$destdir/$realname" func_execute_cmds "$postinstall_cmds" 'exit $?' fi # Install the pseudo-library for information purposes. func_basename "$file" name="$func_basename_result" instname="$dir/$name"i func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' # Maybe install the static library, too. test -n "$old_library" && func_append staticlibs " $dir/$old_library" ;; *.lo) # Install (i.e. copy) a libtool object. # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then destfile="$destdir/$destname" else func_basename "$file" destfile="$func_basename_result" destfile="$destdir/$destfile" fi # Deduce the name of the destination old-style object file. case $destfile in *.lo) func_lo2o "$destfile" staticdest=$func_lo2o_result ;; *.$objext) staticdest="$destfile" destfile= ;; *) func_fatal_help "cannot copy a libtool object to \`$destfile'" ;; esac # Install the libtool object if requested. test -n "$destfile" && \ func_show_eval "$install_prog $file $destfile" 'exit $?' # Install the old object if enabled. if test "$build_old_libs" = yes; then # Deduce the name of the old-style object file. func_lo2o "$file" staticobj=$func_lo2o_result func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' fi exit $EXIT_SUCCESS ;; *) # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then destfile="$destdir/$destname" else func_basename "$file" destfile="$func_basename_result" destfile="$destdir/$destfile" fi # If the file is missing, and there is a .exe on the end, strip it # because it is most likely a libtool script we actually want to # install stripped_ext="" case $file in *.exe) if test ! -f "$file"; then func_stripname '' '.exe' "$file" file=$func_stripname_result stripped_ext=".exe" fi ;; esac # Do a test to see if this is really a libtool program. case $host in *cygwin* | *mingw*) if func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" wrapper=$func_ltwrapper_scriptname_result else func_stripname '' '.exe' "$file" wrapper=$func_stripname_result fi ;; *) wrapper=$file ;; esac if func_ltwrapper_script_p "$wrapper"; then notinst_deplibs= relink_command= func_source "$wrapper" # Check the variables that should have been set. test -z "$generated_by_libtool_version" && \ func_fatal_error "invalid libtool wrapper script \`$wrapper'" finalize=yes for lib in $notinst_deplibs; do # Check to see that each library is installed. libdir= if test -f "$lib"; then func_source "$lib" fi libfile="$libdir/"`$ECHO "$lib" | $SED 's%^.*/%%g'` ### testsuite: skip nested quoting test if test -n "$libdir" && test ! -f "$libfile"; then func_warning "\`$lib' has not been installed in \`$libdir'" finalize=no fi done relink_command= func_source "$wrapper" outputname= if test "$fast_install" = no && test -n "$relink_command"; then $opt_dry_run || { if test "$finalize" = yes; then tmpdir=`func_mktempdir` func_basename "$file$stripped_ext" file="$func_basename_result" outputname="$tmpdir/$file" # Replace the output file specification. relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` $opt_silent || { func_quote_for_expand "$relink_command" eval "func_echo $func_quote_for_expand_result" } if eval "$relink_command"; then : else func_error "error: relink \`$file' with the above command before installing it" $opt_dry_run || ${RM}r "$tmpdir" continue fi file="$outputname" else func_warning "cannot relink \`$file'" fi } else # Install the binary that we compiled earlier. file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"` fi fi # remove .exe since cygwin /usr/bin/install will append another # one anyway case $install_prog,$host in */usr/bin/install*,*cygwin*) case $file:$destfile in *.exe:*.exe) # this is ok ;; *.exe:*) destfile=$destfile.exe ;; *:*.exe) func_stripname '' '.exe' "$destfile" destfile=$func_stripname_result ;; esac ;; esac func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' $opt_dry_run || if test -n "$outputname"; then ${RM}r "$tmpdir" fi ;; esac done for file in $staticlibs; do func_basename "$file" name="$func_basename_result" # Set up the ranlib parameters. oldlib="$destdir/$name" func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 tool_oldlib=$func_to_tool_file_result func_show_eval "$install_prog \$file \$oldlib" 'exit $?' if test -n "$stripme" && test -n "$old_striplib"; then func_show_eval "$old_striplib $tool_oldlib" 'exit $?' fi # Do each command in the postinstall commands. func_execute_cmds "$old_postinstall_cmds" 'exit $?' done test -n "$future_libdirs" && \ func_warning "remember to run \`$progname --finish$future_libdirs'" if test -n "$current_libdirs"; then # Maybe just do a dry run. $opt_dry_run && current_libdirs=" -n$current_libdirs" exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' else exit $EXIT_SUCCESS fi } test "$opt_mode" = install && func_mode_install ${1+"$@"} # func_generate_dlsyms outputname originator pic_p # Extract symbols from dlprefiles and create ${outputname}S.o with # a dlpreopen symbol table. func_generate_dlsyms () { $opt_debug my_outputname="$1" my_originator="$2" my_pic_p="${3-no}" my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'` my_dlsyms= if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then if test -n "$NM" && test -n "$global_symbol_pipe"; then my_dlsyms="${my_outputname}S.c" else func_error "not configured to extract global symbols from dlpreopened files" fi fi if test -n "$my_dlsyms"; then case $my_dlsyms in "") ;; *.c) # Discover the nlist of each of the dlfiles. nlist="$output_objdir/${my_outputname}.nm" func_show_eval "$RM $nlist ${nlist}S ${nlist}T" # Parse the name list into a source file. func_verbose "creating $output_objdir/$my_dlsyms" $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ /* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */ /* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */ #ifdef __cplusplus extern \"C\" { #endif #if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) #pragma GCC diagnostic ignored \"-Wstrict-prototypes\" #endif /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ #if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) /* DATA imports from DLLs on WIN32 con't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT_DLSYM_CONST #elif defined(__osf__) /* This system does not cope well with relocations in const data. */ # define LT_DLSYM_CONST #else # define LT_DLSYM_CONST const #endif /* External symbol declarations for the compiler. */\ " if test "$dlself" = yes; then func_verbose "generating symbol list for \`$output'" $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" # Add our own program objects to the symbol list. progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` for progfile in $progfiles; do func_to_tool_file "$progfile" func_convert_file_msys_to_w32 func_verbose "extracting global C symbols from \`$func_to_tool_file_result'" $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" done if test -n "$exclude_expsyms"; then $opt_dry_run || { eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' } fi if test -n "$export_symbols_regex"; then $opt_dry_run || { eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' } fi # Prepare the list of exported symbols if test -z "$export_symbols"; then export_symbols="$output_objdir/$outputname.exp" $opt_dry_run || { $RM $export_symbols eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' case $host in *cygwin* | *mingw* | *cegcc* ) eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' ;; esac } else $opt_dry_run || { eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' case $host in *cygwin* | *mingw* | *cegcc* ) eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' ;; esac } fi fi for dlprefile in $dlprefiles; do func_verbose "extracting global C symbols from \`$dlprefile'" func_basename "$dlprefile" name="$func_basename_result" case $host in *cygwin* | *mingw* | *cegcc* ) # if an import library, we need to obtain dlname if func_win32_import_lib_p "$dlprefile"; then func_tr_sh "$dlprefile" eval "curr_lafile=\$libfile_$func_tr_sh_result" dlprefile_dlbasename="" if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then # Use subshell, to avoid clobbering current variable values dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` if test -n "$dlprefile_dlname" ; then func_basename "$dlprefile_dlname" dlprefile_dlbasename="$func_basename_result" else # no lafile. user explicitly requested -dlpreopen . $sharedlib_from_linklib_cmd "$dlprefile" dlprefile_dlbasename=$sharedlib_from_linklib_result fi fi $opt_dry_run || { if test -n "$dlprefile_dlbasename" ; then eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' else func_warning "Could not compute DLL name from $name" eval '$ECHO ": $name " >> "$nlist"' fi func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" } else # not an import lib $opt_dry_run || { eval '$ECHO ": $name " >> "$nlist"' func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" } fi ;; *) $opt_dry_run || { eval '$ECHO ": $name " >> "$nlist"' func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" } ;; esac done $opt_dry_run || { # Make sure we have at least an empty file. test -f "$nlist" || : > "$nlist" if test -n "$exclude_expsyms"; then $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T $MV "$nlist"T "$nlist" fi # Try sorting and uniquifying the output. if $GREP -v "^: " < "$nlist" | if sort -k 3 /dev/null 2>&1; then sort -k 3 else sort +2 fi | uniq > "$nlist"S; then : else $GREP -v "^: " < "$nlist" > "$nlist"S fi if test -f "$nlist"S; then eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' else echo '/* NONE */' >> "$output_objdir/$my_dlsyms" fi echo >> "$output_objdir/$my_dlsyms" "\ /* The mapping between symbol names and symbols. */ typedef struct { const char *name; void *address; } lt_dlsymlist; extern LT_DLSYM_CONST lt_dlsymlist lt_${my_prefix}_LTX_preloaded_symbols[]; LT_DLSYM_CONST lt_dlsymlist lt_${my_prefix}_LTX_preloaded_symbols[] = {\ { \"$my_originator\", (void *) 0 }," case $need_lib_prefix in no) eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" ;; *) eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" ;; esac echo >> "$output_objdir/$my_dlsyms" "\ {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt_${my_prefix}_LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif\ " } # !$opt_dry_run pic_flag_for_symtable= case "$compile_command " in *" -static "*) ;; *) case $host in # compiling the symbol table file with pic_flag works around # a FreeBSD bug that causes programs to crash when -lm is # linked before any other PIC object. But we must not use # pic_flag when linking with -static. The problem exists in # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; *-*-hpux*) pic_flag_for_symtable=" $pic_flag" ;; *) if test "X$my_pic_p" != Xno; then pic_flag_for_symtable=" $pic_flag" fi ;; esac ;; esac symtab_cflags= for arg in $LTCFLAGS; do case $arg in -pie | -fpie | -fPIE) ;; *) func_append symtab_cflags " $arg" ;; esac done # Now compile the dynamic symbol file. func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' # Clean up the generated files. func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"' # Transform the symbol file into the correct name. symfileobj="$output_objdir/${my_outputname}S.$objext" case $host in *cygwin* | *mingw* | *cegcc* ) if test -f "$output_objdir/$my_outputname.def"; then compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` else compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` fi ;; *) compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` ;; esac ;; *) func_fatal_error "unknown suffix for \`$my_dlsyms'" ;; esac else # We keep going just in case the user didn't refer to # lt_preloaded_symbols. The linker will fail if global_symbol_pipe # really was required. # Nullify the symbol file. compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"` finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"` fi } # func_win32_libid arg # return the library type of file 'arg' # # Need a lot of goo to handle *both* DLLs and import libs # Has to be a shell function in order to 'eat' the argument # that is supplied when $file_magic_command is called. # Despite the name, also deal with 64 bit binaries. func_win32_libid () { $opt_debug win32_libid_type="unknown" win32_fileres=`file -L $1 2>/dev/null` case $win32_fileres in *ar\ archive\ import\ library*) # definitely import win32_libid_type="x86 archive import" ;; *ar\ archive*) # could be an import, or static # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then func_to_tool_file "$1" func_convert_file_msys_to_w32 win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | $SED -n -e ' 1,100{ / I /{ s,.*,import, p q } }'` case $win32_nmres in import*) win32_libid_type="x86 archive import";; *) win32_libid_type="x86 archive static";; esac fi ;; *DLL*) win32_libid_type="x86 DLL" ;; *executable*) # but shell scripts are "executable" too... case $win32_fileres in *MS\ Windows\ PE\ Intel*) win32_libid_type="x86 DLL" ;; esac ;; esac $ECHO "$win32_libid_type" } # func_cygming_dll_for_implib ARG # # Platform-specific function to extract the # name of the DLL associated with the specified # import library ARG. # Invoked by eval'ing the libtool variable # $sharedlib_from_linklib_cmd # Result is available in the variable # $sharedlib_from_linklib_result func_cygming_dll_for_implib () { $opt_debug sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` } # func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs # # The is the core of a fallback implementation of a # platform-specific function to extract the name of the # DLL associated with the specified import library LIBNAME. # # SECTION_NAME is either .idata$6 or .idata$7, depending # on the platform and compiler that created the implib. # # Echos the name of the DLL associated with the # specified import library. func_cygming_dll_for_implib_fallback_core () { $opt_debug match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` $OBJDUMP -s --section "$1" "$2" 2>/dev/null | $SED '/^Contents of section '"$match_literal"':/{ # Place marker at beginning of archive member dllname section s/.*/====MARK====/ p d } # These lines can sometimes be longer than 43 characters, but # are always uninteresting /:[ ]*file format pe[i]\{,1\}-/d /^In archive [^:]*:/d # Ensure marker is printed /^====MARK====/p # Remove all lines with less than 43 characters /^.\{43\}/!d # From remaining lines, remove first 43 characters s/^.\{43\}//' | $SED -n ' # Join marker and all lines until next marker into a single line /^====MARK====/ b para H $ b para b :para x s/\n//g # Remove the marker s/^====MARK====// # Remove trailing dots and whitespace s/[\. \t]*$// # Print /./p' | # we now have a list, one entry per line, of the stringified # contents of the appropriate section of all members of the # archive which possess that section. Heuristic: eliminate # all those which have a first or second character that is # a '.' (that is, objdump's representation of an unprintable # character.) This should work for all archives with less than # 0x302f exports -- but will fail for DLLs whose name actually # begins with a literal '.' or a single character followed by # a '.'. # # Of those that remain, print the first one. $SED -e '/^\./d;/^.\./d;q' } # func_cygming_gnu_implib_p ARG # This predicate returns with zero status (TRUE) if # ARG is a GNU/binutils-style import library. Returns # with nonzero status (FALSE) otherwise. func_cygming_gnu_implib_p () { $opt_debug func_to_tool_file "$1" func_convert_file_msys_to_w32 func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` test -n "$func_cygming_gnu_implib_tmp" } # func_cygming_ms_implib_p ARG # This predicate returns with zero status (TRUE) if # ARG is an MS-style import library. Returns # with nonzero status (FALSE) otherwise. func_cygming_ms_implib_p () { $opt_debug func_to_tool_file "$1" func_convert_file_msys_to_w32 func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` test -n "$func_cygming_ms_implib_tmp" } # func_cygming_dll_for_implib_fallback ARG # Platform-specific function to extract the # name of the DLL associated with the specified # import library ARG. # # This fallback implementation is for use when $DLLTOOL # does not support the --identify-strict option. # Invoked by eval'ing the libtool variable # $sharedlib_from_linklib_cmd # Result is available in the variable # $sharedlib_from_linklib_result func_cygming_dll_for_implib_fallback () { $opt_debug if func_cygming_gnu_implib_p "$1" ; then # binutils import library sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` elif func_cygming_ms_implib_p "$1" ; then # ms-generated import library sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` else # unknown sharedlib_from_linklib_result="" fi } # func_extract_an_archive dir oldlib func_extract_an_archive () { $opt_debug f_ex_an_ar_dir="$1"; shift f_ex_an_ar_oldlib="$1" if test "$lock_old_archive_extraction" = yes; then lockfile=$f_ex_an_ar_oldlib.lock until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do func_echo "Waiting for $lockfile to be removed" sleep 2 done fi func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ 'stat=$?; rm -f "$lockfile"; exit $stat' if test "$lock_old_archive_extraction" = yes; then $opt_dry_run || rm -f "$lockfile" fi if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then : else func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" fi } # func_extract_archives gentop oldlib ... func_extract_archives () { $opt_debug my_gentop="$1"; shift my_oldlibs=${1+"$@"} my_oldobjs="" my_xlib="" my_xabs="" my_xdir="" for my_xlib in $my_oldlibs; do # Extract the objects. case $my_xlib in [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;; *) my_xabs=`pwd`"/$my_xlib" ;; esac func_basename "$my_xlib" my_xlib="$func_basename_result" my_xlib_u=$my_xlib while :; do case " $extracted_archives " in *" $my_xlib_u "*) func_arith $extracted_serial + 1 extracted_serial=$func_arith_result my_xlib_u=lt$extracted_serial-$my_xlib ;; *) break ;; esac done extracted_archives="$extracted_archives $my_xlib_u" my_xdir="$my_gentop/$my_xlib_u" func_mkdir_p "$my_xdir" case $host in *-darwin*) func_verbose "Extracting $my_xabs" # Do not bother doing anything if just a dry run $opt_dry_run || { darwin_orig_dir=`pwd` cd $my_xdir || exit $? darwin_archive=$my_xabs darwin_curdir=`pwd` darwin_base_archive=`basename "$darwin_archive"` darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` if test -n "$darwin_arches"; then darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` darwin_arch= func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" for darwin_arch in $darwin_arches ; do func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}" $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}" cd "unfat-$$/${darwin_base_archive}-${darwin_arch}" func_extract_an_archive "`pwd`" "${darwin_base_archive}" cd "$darwin_curdir" $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" done # $darwin_arches ## Okay now we've a bunch of thin objects, gotta fatten them up :) darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u` darwin_file= darwin_files= for darwin_file in $darwin_filelist; do darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP` $LIPO -create -output "$darwin_file" $darwin_files done # $darwin_filelist $RM -rf unfat-$$ cd "$darwin_orig_dir" else cd $darwin_orig_dir func_extract_an_archive "$my_xdir" "$my_xabs" fi # $darwin_arches } # !$opt_dry_run ;; *) func_extract_an_archive "$my_xdir" "$my_xabs" ;; esac my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` done func_extract_archives_result="$my_oldobjs" } # func_emit_wrapper [arg=no] # # Emit a libtool wrapper script on stdout. # Don't directly open a file because we may want to # incorporate the script contents within a cygwin/mingw # wrapper executable. Must ONLY be called from within # func_mode_link because it depends on a number of variables # set therein. # # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR # variable will take. If 'yes', then the emitted script # will assume that the directory in which it is stored is # the $objdir directory. This is a cygwin/mingw-specific # behavior. func_emit_wrapper () { func_emit_wrapper_arg1=${1-no} $ECHO "\ #! $SHELL # $output - temporary wrapper script for $objdir/$outputname # Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION # # The $output program cannot be directly executed until all the libtool # libraries that it depends on are installed. # # This wrapper script should never be moved out of the build directory. # If it is, it will not operate correctly. # Sed substitution that helps us do robust quoting. It backslashifies # metacharacters that are still active within double-quoted strings. sed_quote_subst='$sed_quote_subst' # Be Bourne compatible if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST else case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac fi BIN_SH=xpg4; export BIN_SH # for Tru64 DUALCASE=1; export DUALCASE # for MKS sh # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH relink_command=\"$relink_command\" # This environment variable determines our operation mode. if test \"\$libtool_install_magic\" = \"$magic\"; then # install mode needs the following variables: generated_by_libtool_version='$macro_version' notinst_deplibs='$notinst_deplibs' else # When we are sourced in execute mode, \$file and \$ECHO are already set. if test \"\$libtool_execute_magic\" != \"$magic\"; then file=\"\$0\"" qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` $ECHO "\ # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF \$1 _LTECHO_EOF' } ECHO=\"$qECHO\" fi # Very basic option parsing. These options are (a) specific to # the libtool wrapper, (b) are identical between the wrapper # /script/ and the wrapper /executable/ which is used only on # windows platforms, and (c) all begin with the string "--lt-" # (application programs are unlikely to have options which match # this pattern). # # There are only two supported options: --lt-debug and # --lt-dump-script. There is, deliberately, no --lt-help. # # The first argument to this parsing function should be the # script's $0 value, followed by "$@". lt_option_debug= func_parse_lt_options () { lt_script_arg0=\$0 shift for lt_opt do case \"\$lt_opt\" in --lt-debug) lt_option_debug=1 ;; --lt-dump-script) lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\` test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=. lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\` cat \"\$lt_dump_D/\$lt_dump_F\" exit 0 ;; --lt-*) \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2 exit 1 ;; esac done # Print the debug banner immediately: if test -n \"\$lt_option_debug\"; then echo \"${outputname}:${output}:\${LINENO}: libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\" 1>&2 fi } # Used when --lt-debug. Prints its arguments to stdout # (redirection is the responsibility of the caller) func_lt_dump_args () { lt_dump_args_N=1; for lt_arg do \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[\$lt_dump_args_N]: \$lt_arg\" lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` done } # Core function for launching the target application func_exec_program_core () { " case $host in # Backslashes separate directories on plain windows *-*-mingw | *-*-os2* | *-cegcc*) $ECHO "\ if test -n \"\$lt_option_debug\"; then \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir\\\\\$program\" 1>&2 func_lt_dump_args \${1+\"\$@\"} 1>&2 fi exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} " ;; *) $ECHO "\ if test -n \"\$lt_option_debug\"; then \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir/\$program\" 1>&2 func_lt_dump_args \${1+\"\$@\"} 1>&2 fi exec \"\$progdir/\$program\" \${1+\"\$@\"} " ;; esac $ECHO "\ \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 exit 1 } # A function to encapsulate launching the target application # Strips options in the --lt-* namespace from \$@ and # launches target application with the remaining arguments. func_exec_program () { case \" \$* \" in *\\ --lt-*) for lt_wr_arg do case \$lt_wr_arg in --lt-*) ;; *) set x \"\$@\" \"\$lt_wr_arg\"; shift;; esac shift done ;; esac func_exec_program_core \${1+\"\$@\"} } # Parse options func_parse_lt_options \"\$0\" \${1+\"\$@\"} # Find the directory that this script lives in. thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\` test \"x\$thisdir\" = \"x\$file\" && thisdir=. # Follow symbolic links until we get to the real thisdir. file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\` while test -n \"\$file\"; do destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\` # If there was a directory component, then change thisdir. if test \"x\$destdir\" != \"x\$file\"; then case \"\$destdir\" in [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; *) thisdir=\"\$thisdir/\$destdir\" ;; esac fi file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\` file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\` done # Usually 'no', except on cygwin/mingw when embedded into # the cwrapper. WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1 if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then # special case for '.' if test \"\$thisdir\" = \".\"; then thisdir=\`pwd\` fi # remove .libs from thisdir case \"\$thisdir\" in *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;; $objdir ) thisdir=. ;; esac fi # Try to get the absolute directory name. absdir=\`cd \"\$thisdir\" && pwd\` test -n \"\$absdir\" && thisdir=\"\$absdir\" " if test "$fast_install" = yes; then $ECHO "\ program=lt-'$outputname'$exeext progdir=\"\$thisdir/$objdir\" if test ! -f \"\$progdir/\$program\" || { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ test \"X\$file\" != \"X\$progdir/\$program\"; }; then file=\"\$\$-\$program\" if test ! -d \"\$progdir\"; then $MKDIR \"\$progdir\" else $RM \"\$progdir/\$file\" fi" $ECHO "\ # relink executable if necessary if test -n \"\$relink_command\"; then if relink_command_output=\`eval \$relink_command 2>&1\`; then : else $ECHO \"\$relink_command_output\" >&2 $RM \"\$progdir/\$file\" exit 1 fi fi $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || { $RM \"\$progdir/\$program\"; $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } $RM \"\$progdir/\$file\" fi" else $ECHO "\ program='$outputname' progdir=\"\$thisdir/$objdir\" " fi $ECHO "\ if test -f \"\$progdir/\$program\"; then" # fixup the dll searchpath if we need to. # # Fix the DLL searchpath if we need to. Do this before prepending # to shlibpath, because on Windows, both are PATH and uninstalled # libraries must come first. if test -n "$dllsearchpath"; then $ECHO "\ # Add the dll search path components to the executable PATH PATH=$dllsearchpath:\$PATH " fi # Export our shlibpath_var if we have one. if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then $ECHO "\ # Add our own library path to $shlibpath_var $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" # Some systems cannot cope with colon-terminated $shlibpath_var # The second colon is a workaround for a bug in BeOS R4 sed $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\` export $shlibpath_var " fi $ECHO "\ if test \"\$libtool_execute_magic\" != \"$magic\"; then # Run the actual program with our arguments. func_exec_program \${1+\"\$@\"} fi else # The program doesn't exist. \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2 \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 exit 1 fi fi\ " } # func_emit_cwrapperexe_src # emit the source code for a wrapper executable on stdout # Must ONLY be called from within func_mode_link because # it depends on a number of variable set therein. func_emit_cwrapperexe_src () { cat < #include #ifdef _MSC_VER # include # include # include #else # include # include # ifdef __CYGWIN__ # include # endif #endif #include #include #include #include #include #include #include #include /* declarations of non-ANSI functions */ #if defined(__MINGW32__) # ifdef __STRICT_ANSI__ int _putenv (const char *); # endif #elif defined(__CYGWIN__) # ifdef __STRICT_ANSI__ char *realpath (const char *, char *); int putenv (char *); int setenv (const char *, const char *, int); # endif /* #elif defined (other platforms) ... */ #endif /* portability defines, excluding path handling macros */ #if defined(_MSC_VER) # define setmode _setmode # define stat _stat # define chmod _chmod # define getcwd _getcwd # define putenv _putenv # define S_IXUSR _S_IEXEC # ifndef _INTPTR_T_DEFINED # define _INTPTR_T_DEFINED # define intptr_t int # endif #elif defined(__MINGW32__) # define setmode _setmode # define stat _stat # define chmod _chmod # define getcwd _getcwd # define putenv _putenv #elif defined(__CYGWIN__) # define HAVE_SETENV # define FOPEN_WB "wb" /* #elif defined (other platforms) ... */ #endif #if defined(PATH_MAX) # define LT_PATHMAX PATH_MAX #elif defined(MAXPATHLEN) # define LT_PATHMAX MAXPATHLEN #else # define LT_PATHMAX 1024 #endif #ifndef S_IXOTH # define S_IXOTH 0 #endif #ifndef S_IXGRP # define S_IXGRP 0 #endif /* path handling portability macros */ #ifndef DIR_SEPARATOR # define DIR_SEPARATOR '/' # define PATH_SEPARATOR ':' #endif #if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ defined (__OS2__) # define HAVE_DOS_BASED_FILE_SYSTEM # define FOPEN_WB "wb" # ifndef DIR_SEPARATOR_2 # define DIR_SEPARATOR_2 '\\' # endif # ifndef PATH_SEPARATOR_2 # define PATH_SEPARATOR_2 ';' # endif #endif #ifndef DIR_SEPARATOR_2 # define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) #else /* DIR_SEPARATOR_2 */ # define IS_DIR_SEPARATOR(ch) \ (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) #endif /* DIR_SEPARATOR_2 */ #ifndef PATH_SEPARATOR_2 # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) #else /* PATH_SEPARATOR_2 */ # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) #endif /* PATH_SEPARATOR_2 */ #ifndef FOPEN_WB # define FOPEN_WB "w" #endif #ifndef _O_BINARY # define _O_BINARY 0 #endif #define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) #define XFREE(stale) do { \ if (stale) { free ((void *) stale); stale = 0; } \ } while (0) #if defined(LT_DEBUGWRAPPER) static int lt_debug = 1; #else static int lt_debug = 0; #endif const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ void *xmalloc (size_t num); char *xstrdup (const char *string); const char *base_name (const char *name); char *find_executable (const char *wrapper); char *chase_symlinks (const char *pathspec); int make_executable (const char *path); int check_executable (const char *path); char *strendzap (char *str, const char *pat); void lt_debugprintf (const char *file, int line, const char *fmt, ...); void lt_fatal (const char *file, int line, const char *message, ...); static const char *nonnull (const char *s); static const char *nonempty (const char *s); void lt_setenv (const char *name, const char *value); char *lt_extend_str (const char *orig_value, const char *add, int to_end); void lt_update_exe_path (const char *name, const char *value); void lt_update_lib_path (const char *name, const char *value); char **prepare_spawn (char **argv); void lt_dump_script (FILE *f); EOF cat <= 0) && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) return 1; else return 0; } int make_executable (const char *path) { int rval = 0; struct stat st; lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", nonempty (path)); if ((!path) || (!*path)) return 0; if (stat (path, &st) >= 0) { rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); } return rval; } /* Searches for the full path of the wrapper. Returns newly allocated full path name if found, NULL otherwise Does not chase symlinks, even on platforms that support them. */ char * find_executable (const char *wrapper) { int has_slash = 0; const char *p; const char *p_next; /* static buffer for getcwd */ char tmp[LT_PATHMAX + 1]; int tmp_len; char *concat_name; lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", nonempty (wrapper)); if ((wrapper == NULL) || (*wrapper == '\0')) return NULL; /* Absolute path? */ #if defined (HAVE_DOS_BASED_FILE_SYSTEM) if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') { concat_name = xstrdup (wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } else { #endif if (IS_DIR_SEPARATOR (wrapper[0])) { concat_name = xstrdup (wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } #if defined (HAVE_DOS_BASED_FILE_SYSTEM) } #endif for (p = wrapper; *p; p++) if (*p == '/') { has_slash = 1; break; } if (!has_slash) { /* no slashes; search PATH */ const char *path = getenv ("PATH"); if (path != NULL) { for (p = path; *p; p = p_next) { const char *q; size_t p_len; for (q = p; *q; q++) if (IS_PATH_SEPARATOR (*q)) break; p_len = q - p; p_next = (*q == '\0' ? q : q + 1); if (p_len == 0) { /* empty path: current directory */ if (getcwd (tmp, LT_PATHMAX) == NULL) lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", nonnull (strerror (errno))); tmp_len = strlen (tmp); concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, tmp, tmp_len); concat_name[tmp_len] = '/'; strcpy (concat_name + tmp_len + 1, wrapper); } else { concat_name = XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, p, p_len); concat_name[p_len] = '/'; strcpy (concat_name + p_len + 1, wrapper); } if (check_executable (concat_name)) return concat_name; XFREE (concat_name); } } /* not found in PATH; assume curdir */ } /* Relative path | not found in path: prepend cwd */ if (getcwd (tmp, LT_PATHMAX) == NULL) lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", nonnull (strerror (errno))); tmp_len = strlen (tmp); concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); memcpy (concat_name, tmp, tmp_len); concat_name[tmp_len] = '/'; strcpy (concat_name + tmp_len + 1, wrapper); if (check_executable (concat_name)) return concat_name; XFREE (concat_name); return NULL; } char * chase_symlinks (const char *pathspec) { #ifndef S_ISLNK return xstrdup (pathspec); #else char buf[LT_PATHMAX]; struct stat s; char *tmp_pathspec = xstrdup (pathspec); char *p; int has_symlinks = 0; while (strlen (tmp_pathspec) && !has_symlinks) { lt_debugprintf (__FILE__, __LINE__, "checking path component for symlinks: %s\n", tmp_pathspec); if (lstat (tmp_pathspec, &s) == 0) { if (S_ISLNK (s.st_mode) != 0) { has_symlinks = 1; break; } /* search backwards for last DIR_SEPARATOR */ p = tmp_pathspec + strlen (tmp_pathspec) - 1; while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) p--; if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) { /* no more DIR_SEPARATORS left */ break; } *p = '\0'; } else { lt_fatal (__FILE__, __LINE__, "error accessing file \"%s\": %s", tmp_pathspec, nonnull (strerror (errno))); } } XFREE (tmp_pathspec); if (!has_symlinks) { return xstrdup (pathspec); } tmp_pathspec = realpath (pathspec, buf); if (tmp_pathspec == 0) { lt_fatal (__FILE__, __LINE__, "could not follow symlinks for %s", pathspec); } return xstrdup (tmp_pathspec); #endif } char * strendzap (char *str, const char *pat) { size_t len, patlen; assert (str != NULL); assert (pat != NULL); len = strlen (str); patlen = strlen (pat); if (patlen <= len) { str += len - patlen; if (strcmp (str, pat) == 0) *str = '\0'; } return str; } void lt_debugprintf (const char *file, int line, const char *fmt, ...) { va_list args; if (lt_debug) { (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); va_start (args, fmt); (void) vfprintf (stderr, fmt, args); va_end (args); } } static void lt_error_core (int exit_status, const char *file, int line, const char *mode, const char *message, va_list ap) { fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); vfprintf (stderr, message, ap); fprintf (stderr, ".\n"); if (exit_status >= 0) exit (exit_status); } void lt_fatal (const char *file, int line, const char *message, ...) { va_list ap; va_start (ap, message); lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); va_end (ap); } static const char * nonnull (const char *s) { return s ? s : "(null)"; } static const char * nonempty (const char *s) { return (s && !*s) ? "(empty)" : nonnull (s); } void lt_setenv (const char *name, const char *value) { lt_debugprintf (__FILE__, __LINE__, "(lt_setenv) setting '%s' to '%s'\n", nonnull (name), nonnull (value)); { #ifdef HAVE_SETENV /* always make a copy, for consistency with !HAVE_SETENV */ char *str = xstrdup (value); setenv (name, str, 1); #else int len = strlen (name) + 1 + strlen (value) + 1; char *str = XMALLOC (char, len); sprintf (str, "%s=%s", name, value); if (putenv (str) != EXIT_SUCCESS) { XFREE (str); } #endif } } char * lt_extend_str (const char *orig_value, const char *add, int to_end) { char *new_value; if (orig_value && *orig_value) { int orig_value_len = strlen (orig_value); int add_len = strlen (add); new_value = XMALLOC (char, add_len + orig_value_len + 1); if (to_end) { strcpy (new_value, orig_value); strcpy (new_value + orig_value_len, add); } else { strcpy (new_value, add); strcpy (new_value + add_len, orig_value); } } else { new_value = xstrdup (add); } return new_value; } void lt_update_exe_path (const char *name, const char *value) { lt_debugprintf (__FILE__, __LINE__, "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", nonnull (name), nonnull (value)); if (name && *name && value && *value) { char *new_value = lt_extend_str (getenv (name), value, 0); /* some systems can't cope with a ':'-terminated path #' */ int len = strlen (new_value); while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1])) { new_value[len-1] = '\0'; } lt_setenv (name, new_value); XFREE (new_value); } } void lt_update_lib_path (const char *name, const char *value) { lt_debugprintf (__FILE__, __LINE__, "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", nonnull (name), nonnull (value)); if (name && *name && value && *value) { char *new_value = lt_extend_str (getenv (name), value, 0); lt_setenv (name, new_value); XFREE (new_value); } } EOF case $host_os in mingw*) cat <<"EOF" /* Prepares an argument vector before calling spawn(). Note that spawn() does not by itself call the command interpreter (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); GetVersionEx(&v); v.dwPlatformId == VER_PLATFORM_WIN32_NT; }) ? "cmd.exe" : "command.com"). Instead it simply concatenates the arguments, separated by ' ', and calls CreateProcess(). We must quote the arguments since Win32 CreateProcess() interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a special way: - Space and tab are interpreted as delimiters. They are not treated as delimiters if they are surrounded by double quotes: "...". - Unescaped double quotes are removed from the input. Their only effect is that within double quotes, space and tab are treated like normal characters. - Backslashes not followed by double quotes are not special. - But 2*n+1 backslashes followed by a double quote become n backslashes followed by a double quote (n >= 0): \" -> " \\\" -> \" \\\\\" -> \\" */ #define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" #define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" char ** prepare_spawn (char **argv) { size_t argc; char **new_argv; size_t i; /* Count number of arguments. */ for (argc = 0; argv[argc] != NULL; argc++) ; /* Allocate new argument vector. */ new_argv = XMALLOC (char *, argc + 1); /* Put quoted arguments into the new argument vector. */ for (i = 0; i < argc; i++) { const char *string = argv[i]; if (string[0] == '\0') new_argv[i] = xstrdup ("\"\""); else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) { int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); size_t length; unsigned int backslashes; const char *s; char *quoted_string; char *p; length = 0; backslashes = 0; if (quote_around) length++; for (s = string; *s != '\0'; s++) { char c = *s; if (c == '"') length += backslashes + 1; length++; if (c == '\\') backslashes++; else backslashes = 0; } if (quote_around) length += backslashes + 1; quoted_string = XMALLOC (char, length + 1); p = quoted_string; backslashes = 0; if (quote_around) *p++ = '"'; for (s = string; *s != '\0'; s++) { char c = *s; if (c == '"') { unsigned int j; for (j = backslashes + 1; j > 0; j--) *p++ = '\\'; } *p++ = c; if (c == '\\') backslashes++; else backslashes = 0; } if (quote_around) { unsigned int j; for (j = backslashes; j > 0; j--) *p++ = '\\'; *p++ = '"'; } *p = '\0'; new_argv[i] = quoted_string; } else new_argv[i] = (char *) string; } new_argv[argc] = NULL; return new_argv; } EOF ;; esac cat <<"EOF" void lt_dump_script (FILE* f) { EOF func_emit_wrapper yes | $SED -n -e ' s/^\(.\{79\}\)\(..*\)/\1\ \2/ h s/\([\\"]\)/\\\1/g s/$/\\n/ s/\([^\n]*\).*/ fputs ("\1", f);/p g D' cat <<"EOF" } EOF } # end: func_emit_cwrapperexe_src # func_win32_import_lib_p ARG # True if ARG is an import lib, as indicated by $file_magic_cmd func_win32_import_lib_p () { $opt_debug case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in *import*) : ;; *) false ;; esac } # func_mode_link arg... func_mode_link () { $opt_debug case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) # It is impossible to link a dll without this setting, and # we shouldn't force the makefile maintainer to figure out # which system we are compiling for in order to pass an extra # flag for every libtool invocation. # allow_undefined=no # FIXME: Unfortunately, there are problems with the above when trying # to make a dll which has undefined symbols, in which case not # even a static library is built. For now, we need to specify # -no-undefined on the libtool link line when we can be certain # that all symbols are satisfied, otherwise we get a static library. allow_undefined=yes ;; *) allow_undefined=yes ;; esac libtool_args=$nonopt base_compile="$nonopt $@" compile_command=$nonopt finalize_command=$nonopt compile_rpath= finalize_rpath= compile_shlibpath= finalize_shlibpath= convenience= old_convenience= deplibs= old_deplibs= compiler_flags= linker_flags= dllsearchpath= lib_search_path=`pwd` inst_prefix_dir= new_inherited_linker_flags= avoid_version=no bindir= dlfiles= dlprefiles= dlself=no export_dynamic=no export_symbols= export_symbols_regex= generated= libobjs= ltlibs= module=no no_install=no objs= non_pic_objects= precious_files_regex= prefer_static_libs=no preload=no prev= prevarg= release= rpath= xrpath= perm_rpath= temp_rpath= thread_safe=no vinfo= vinfo_number=no weak_libs= single_module="${wl}-single_module" func_infer_tag $base_compile # We need to know -static, to get the right output filenames. for arg do case $arg in -shared) test "$build_libtool_libs" != yes && \ func_fatal_configuration "can not build a shared library" build_old_libs=no break ;; -all-static | -static | -static-libtool-libs) case $arg in -all-static) if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then func_warning "complete static linking is impossible in this configuration" fi if test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=yes ;; -static) if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=built ;; -static-libtool-libs) if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=yes ;; esac build_libtool_libs=no build_old_libs=yes break ;; esac done # See if our shared archives depend on static archives. test -n "$old_archive_from_new_cmds" && build_old_libs=yes # Go through the arguments, transforming them on the way. while test "$#" -gt 0; do arg="$1" shift func_quote_for_eval "$arg" qarg=$func_quote_for_eval_unquoted_result func_append libtool_args " $func_quote_for_eval_result" # If the previous option needs an argument, assign it. if test -n "$prev"; then case $prev in output) func_append compile_command " @OUTPUT@" func_append finalize_command " @OUTPUT@" ;; esac case $prev in bindir) bindir="$arg" prev= continue ;; dlfiles|dlprefiles) if test "$preload" = no; then # Add the symbol object into the linking commands. func_append compile_command " @SYMFILE@" func_append finalize_command " @SYMFILE@" preload=yes fi case $arg in *.la | *.lo) ;; # We handle these cases below. force) if test "$dlself" = no; then dlself=needless export_dynamic=yes fi prev= continue ;; self) if test "$prev" = dlprefiles; then dlself=yes elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then dlself=yes else dlself=needless export_dynamic=yes fi prev= continue ;; *) if test "$prev" = dlfiles; then func_append dlfiles " $arg" else func_append dlprefiles " $arg" fi prev= continue ;; esac ;; expsyms) export_symbols="$arg" test -f "$arg" \ || func_fatal_error "symbol file \`$arg' does not exist" prev= continue ;; expsyms_regex) export_symbols_regex="$arg" prev= continue ;; framework) case $host in *-*-darwin*) case "$deplibs " in *" $qarg.ltframework "*) ;; *) func_append deplibs " $qarg.ltframework" # this is fixed later ;; esac ;; esac prev= continue ;; inst_prefix) inst_prefix_dir="$arg" prev= continue ;; objectlist) if test -f "$arg"; then save_arg=$arg moreargs= for fil in `cat "$save_arg"` do # func_append moreargs " $fil" arg=$fil # A libtool-controlled object. # Check to see that this really is a libtool object. if func_lalib_unsafe_p "$arg"; then pic_object= non_pic_object= # Read the .lo file func_source "$arg" if test -z "$pic_object" || test -z "$non_pic_object" || test "$pic_object" = none && test "$non_pic_object" = none; then func_fatal_error "cannot find name of object for \`$arg'" fi # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir="$func_dirname_result" if test "$pic_object" != none; then # Prepend the subdirectory the object is found in. pic_object="$xdir$pic_object" if test "$prev" = dlfiles; then if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then func_append dlfiles " $pic_object" prev= continue else # If libtool objects are unsupported, then we need to preload. prev=dlprefiles fi fi # CHECK ME: I think I busted this. -Ossama if test "$prev" = dlprefiles; then # Preload the old-style object. func_append dlprefiles " $pic_object" prev= fi # A PIC object. func_append libobjs " $pic_object" arg="$pic_object" fi # Non-PIC object. if test "$non_pic_object" != none; then # Prepend the subdirectory the object is found in. non_pic_object="$xdir$non_pic_object" # A standard non-PIC object func_append non_pic_objects " $non_pic_object" if test -z "$pic_object" || test "$pic_object" = none ; then arg="$non_pic_object" fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. non_pic_object="$pic_object" func_append non_pic_objects " $non_pic_object" fi else # Only an error if not doing a dry-run. if $opt_dry_run; then # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir="$func_dirname_result" func_lo2o "$arg" pic_object=$xdir$objdir/$func_lo2o_result non_pic_object=$xdir$func_lo2o_result func_append libobjs " $pic_object" func_append non_pic_objects " $non_pic_object" else func_fatal_error "\`$arg' is not a valid libtool object" fi fi done else func_fatal_error "link input file \`$arg' does not exist" fi arg=$save_arg prev= continue ;; precious_regex) precious_files_regex="$arg" prev= continue ;; release) release="-$arg" prev= continue ;; rpath | xrpath) # We need an absolute path. case $arg in [\\/]* | [A-Za-z]:[\\/]*) ;; *) func_fatal_error "only absolute run-paths are allowed" ;; esac if test "$prev" = rpath; then case "$rpath " in *" $arg "*) ;; *) func_append rpath " $arg" ;; esac else case "$xrpath " in *" $arg "*) ;; *) func_append xrpath " $arg" ;; esac fi prev= continue ;; shrext) shrext_cmds="$arg" prev= continue ;; weak) func_append weak_libs " $arg" prev= continue ;; xcclinker) func_append linker_flags " $qarg" func_append compiler_flags " $qarg" prev= func_append compile_command " $qarg" func_append finalize_command " $qarg" continue ;; xcompiler) func_append compiler_flags " $qarg" prev= func_append compile_command " $qarg" func_append finalize_command " $qarg" continue ;; xlinker) func_append linker_flags " $qarg" func_append compiler_flags " $wl$qarg" prev= func_append compile_command " $wl$qarg" func_append finalize_command " $wl$qarg" continue ;; *) eval "$prev=\"\$arg\"" prev= continue ;; esac fi # test -n "$prev" prevarg="$arg" case $arg in -all-static) if test -n "$link_static_flag"; then # See comment for -static flag below, for more details. func_append compile_command " $link_static_flag" func_append finalize_command " $link_static_flag" fi continue ;; -allow-undefined) # FIXME: remove this flag sometime in the future. func_fatal_error "\`-allow-undefined' must not be used because it is the default" ;; -avoid-version) avoid_version=yes continue ;; -bindir) prev=bindir continue ;; -dlopen) prev=dlfiles continue ;; -dlpreopen) prev=dlprefiles continue ;; -export-dynamic) export_dynamic=yes continue ;; -export-symbols | -export-symbols-regex) if test -n "$export_symbols" || test -n "$export_symbols_regex"; then func_fatal_error "more than one -exported-symbols argument is not allowed" fi if test "X$arg" = "X-export-symbols"; then prev=expsyms else prev=expsyms_regex fi continue ;; -framework) prev=framework continue ;; -inst-prefix-dir) prev=inst_prefix continue ;; # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* # so, if we see these flags be careful not to treat them like -L -L[A-Z][A-Z]*:*) case $with_gcc/$host in no/*-*-irix* | /*-*-irix*) func_append compile_command " $arg" func_append finalize_command " $arg" ;; esac continue ;; -L*) func_stripname "-L" '' "$arg" if test -z "$func_stripname_result"; then if test "$#" -gt 0; then func_fatal_error "require no space between \`-L' and \`$1'" else func_fatal_error "need path for \`-L' option" fi fi func_resolve_sysroot "$func_stripname_result" dir=$func_resolve_sysroot_result # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) ;; *) absdir=`cd "$dir" && pwd` test -z "$absdir" && \ func_fatal_error "cannot determine absolute directory name of \`$dir'" dir="$absdir" ;; esac case "$deplibs " in *" -L$dir "* | *" $arg "*) # Will only happen for absolute or sysroot arguments ;; *) # Preserve sysroot, but never include relative directories case $dir in [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;; *) func_append deplibs " -L$dir" ;; esac func_append lib_search_path " $dir" ;; esac case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` case :$dllsearchpath: in *":$dir:"*) ;; ::) dllsearchpath=$dir;; *) func_append dllsearchpath ":$dir";; esac case :$dllsearchpath: in *":$testbindir:"*) ;; ::) dllsearchpath=$testbindir;; *) func_append dllsearchpath ":$testbindir";; esac ;; esac continue ;; -l*) if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) # These systems don't actually have a C or math library (as such) continue ;; *-*-os2*) # These systems don't actually have a C library (as such) test "X$arg" = "X-lc" && continue ;; *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc due to us having libc/libc_r. test "X$arg" = "X-lc" && continue ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C and math libraries are in the System framework func_append deplibs " System.ltframework" continue ;; *-*-sco3.2v5* | *-*-sco5v6*) # Causes problems with __ctype test "X$arg" = "X-lc" && continue ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work test "X$arg" = "X-lc" && continue ;; esac elif test "X$arg" = "X-lc_r"; then case $host in *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc_r directly, use -pthread flag. continue ;; esac fi func_append deplibs " $arg" continue ;; -module) module=yes continue ;; # Tru64 UNIX uses -model [arg] to determine the layout of C++ # classes, name mangling, and exception handling. # Darwin uses the -arch flag to determine output architecture. -model|-arch|-isysroot|--sysroot) func_append compiler_flags " $arg" func_append compile_command " $arg" func_append finalize_command " $arg" prev=xcompiler continue ;; -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) func_append compiler_flags " $arg" func_append compile_command " $arg" func_append finalize_command " $arg" case "$new_inherited_linker_flags " in *" $arg "*) ;; * ) func_append new_inherited_linker_flags " $arg" ;; esac continue ;; -multi_module) single_module="${wl}-multi_module" continue ;; -no-fast-install) fast_install=no continue ;; -no-install) case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) # The PATH hackery in wrapper scripts is required on Windows # and Darwin in order for the loader to find any dlls it needs. func_warning "\`-no-install' is ignored for $host" func_warning "assuming \`-no-fast-install' instead" fast_install=no ;; *) no_install=yes ;; esac continue ;; -no-undefined) allow_undefined=no continue ;; -objectlist) prev=objectlist continue ;; -o) prev=output ;; -precious-files-regex) prev=precious_regex continue ;; -release) prev=release continue ;; -rpath) prev=rpath continue ;; -R) prev=xrpath continue ;; -R*) func_stripname '-R' '' "$arg" dir=$func_stripname_result # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) ;; =*) func_stripname '=' '' "$dir" dir=$lt_sysroot$func_stripname_result ;; *) func_fatal_error "only absolute run-paths are allowed" ;; esac case "$xrpath " in *" $dir "*) ;; *) func_append xrpath " $dir" ;; esac continue ;; -shared) # The effects of -shared are defined in a previous loop. continue ;; -shrext) prev=shrext continue ;; -static | -static-libtool-libs) # The effects of -static are defined in a previous loop. # We used to do the same as -all-static on platforms that # didn't have a PIC flag, but the assumption that the effects # would be equivalent was wrong. It would break on at least # Digital Unix and AIX. continue ;; -thread-safe) thread_safe=yes continue ;; -version-info) prev=vinfo continue ;; -version-number) prev=vinfo vinfo_number=yes continue ;; -weak) prev=weak continue ;; -Wc,*) func_stripname '-Wc,' '' "$arg" args=$func_stripname_result arg= save_ifs="$IFS"; IFS=',' for flag in $args; do IFS="$save_ifs" func_quote_for_eval "$flag" func_append arg " $func_quote_for_eval_result" func_append compiler_flags " $func_quote_for_eval_result" done IFS="$save_ifs" func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; -Wl,*) func_stripname '-Wl,' '' "$arg" args=$func_stripname_result arg= save_ifs="$IFS"; IFS=',' for flag in $args; do IFS="$save_ifs" func_quote_for_eval "$flag" func_append arg " $wl$func_quote_for_eval_result" func_append compiler_flags " $wl$func_quote_for_eval_result" func_append linker_flags " $func_quote_for_eval_result" done IFS="$save_ifs" func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; -Xcompiler) prev=xcompiler continue ;; -Xlinker) prev=xlinker continue ;; -XCClinker) prev=xcclinker continue ;; # -msg_* for osf cc -msg_*) func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" ;; # Flags to be passed through unchanged, with rationale: # -64, -mips[0-9] enable 64-bit mode for the SGI compiler # -r[0-9][0-9]* specify processor for the SGI compiler # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler # +DA*, +DD* enable 64-bit mode for the HP compiler # -q* compiler args for the IBM compiler # -m*, -t[45]*, -txscale* architecture-specific flags for GCC # -F/path path to uninstalled frameworks, gcc on darwin # -p, -pg, --coverage, -fprofile-* profiling flags for GCC # @file GCC response files # -tp=* Portland pgcc target processor selection # --sysroot=* for sysroot support # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ -O*|-flto*|-fwhopr*|-fuse-linker-plugin) func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" func_append compile_command " $arg" func_append finalize_command " $arg" func_append compiler_flags " $arg" continue ;; # Some other compiler flag. -* | +*) func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" ;; *.$objext) # A standard object. func_append objs " $arg" ;; *.lo) # A libtool-controlled object. # Check to see that this really is a libtool object. if func_lalib_unsafe_p "$arg"; then pic_object= non_pic_object= # Read the .lo file func_source "$arg" if test -z "$pic_object" || test -z "$non_pic_object" || test "$pic_object" = none && test "$non_pic_object" = none; then func_fatal_error "cannot find name of object for \`$arg'" fi # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir="$func_dirname_result" if test "$pic_object" != none; then # Prepend the subdirectory the object is found in. pic_object="$xdir$pic_object" if test "$prev" = dlfiles; then if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then func_append dlfiles " $pic_object" prev= continue else # If libtool objects are unsupported, then we need to preload. prev=dlprefiles fi fi # CHECK ME: I think I busted this. -Ossama if test "$prev" = dlprefiles; then # Preload the old-style object. func_append dlprefiles " $pic_object" prev= fi # A PIC object. func_append libobjs " $pic_object" arg="$pic_object" fi # Non-PIC object. if test "$non_pic_object" != none; then # Prepend the subdirectory the object is found in. non_pic_object="$xdir$non_pic_object" # A standard non-PIC object func_append non_pic_objects " $non_pic_object" if test -z "$pic_object" || test "$pic_object" = none ; then arg="$non_pic_object" fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. non_pic_object="$pic_object" func_append non_pic_objects " $non_pic_object" fi else # Only an error if not doing a dry-run. if $opt_dry_run; then # Extract subdirectory from the argument. func_dirname "$arg" "/" "" xdir="$func_dirname_result" func_lo2o "$arg" pic_object=$xdir$objdir/$func_lo2o_result non_pic_object=$xdir$func_lo2o_result func_append libobjs " $pic_object" func_append non_pic_objects " $non_pic_object" else func_fatal_error "\`$arg' is not a valid libtool object" fi fi ;; *.$libext) # An archive. func_append deplibs " $arg" func_append old_deplibs " $arg" continue ;; *.la) # A libtool-controlled library. func_resolve_sysroot "$arg" if test "$prev" = dlfiles; then # This library was specified with -dlopen. func_append dlfiles " $func_resolve_sysroot_result" prev= elif test "$prev" = dlprefiles; then # The library was specified with -dlpreopen. func_append dlprefiles " $func_resolve_sysroot_result" prev= else func_append deplibs " $func_resolve_sysroot_result" fi continue ;; # Some other compiler argument. *) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. func_quote_for_eval "$arg" arg="$func_quote_for_eval_result" ;; esac # arg # Now actually substitute the argument into the commands. if test -n "$arg"; then func_append compile_command " $arg" func_append finalize_command " $arg" fi done # argument parsing loop test -n "$prev" && \ func_fatal_help "the \`$prevarg' option requires an argument" if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then eval arg=\"$export_dynamic_flag_spec\" func_append compile_command " $arg" func_append finalize_command " $arg" fi oldlibs= # calculate the name of the file, without its directory func_basename "$output" outputname="$func_basename_result" libobjs_save="$libobjs" if test -n "$shlibpath_var"; then # get the directories listed in $shlibpath_var eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/:/ /g\'\` else shlib_search_path= fi eval sys_lib_search_path=\"$sys_lib_search_path_spec\" eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" func_dirname "$output" "/" "" output_objdir="$func_dirname_result$objdir" func_to_tool_file "$output_objdir/" tool_output_objdir=$func_to_tool_file_result # Create the object directory. func_mkdir_p "$output_objdir" # Determine the type of output case $output in "") func_fatal_help "you must specify an output file" ;; *.$libext) linkmode=oldlib ;; *.lo | *.$objext) linkmode=obj ;; *.la) linkmode=lib ;; *) linkmode=prog ;; # Anything else should be a program. esac specialdeplibs= libs= # Find all interdependent deplibs by searching for libraries # that are linked more than once (e.g. -la -lb -la) for deplib in $deplibs; do if $opt_preserve_dup_deps ; then case "$libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac fi func_append libs " $deplib" done if test "$linkmode" = lib; then libs="$predeps $libs $compiler_lib_search_path $postdeps" # Compute libraries that are listed more than once in $predeps # $postdeps and mark them as special (i.e., whose duplicates are # not to be eliminated). pre_post_deps= if $opt_duplicate_compiler_generated_deps; then for pre_post_dep in $predeps $postdeps; do case "$pre_post_deps " in *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;; esac func_append pre_post_deps " $pre_post_dep" done fi pre_post_deps= fi deplibs= newdependency_libs= newlib_search_path= need_relink=no # whether we're linking any uninstalled libtool libraries notinst_deplibs= # not-installed libtool libraries notinst_path= # paths that contain not-installed libtool libraries case $linkmode in lib) passes="conv dlpreopen link" for file in $dlfiles $dlprefiles; do case $file in *.la) ;; *) func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file" ;; esac done ;; prog) compile_deplibs= finalize_deplibs= alldeplibs=no newdlfiles= newdlprefiles= passes="conv scan dlopen dlpreopen link" ;; *) passes="conv" ;; esac for pass in $passes; do # The preopen pass in lib mode reverses $deplibs; put it back here # so that -L comes before libs that need it for instance... if test "$linkmode,$pass" = "lib,link"; then ## FIXME: Find the place where the list is rebuilt in the wrong ## order, and fix it there properly tmp_deplibs= for deplib in $deplibs; do tmp_deplibs="$deplib $tmp_deplibs" done deplibs="$tmp_deplibs" fi if test "$linkmode,$pass" = "lib,link" || test "$linkmode,$pass" = "prog,scan"; then libs="$deplibs" deplibs= fi if test "$linkmode" = prog; then case $pass in dlopen) libs="$dlfiles" ;; dlpreopen) libs="$dlprefiles" ;; link) libs="$deplibs %DEPLIBS%" test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs" ;; esac fi if test "$linkmode,$pass" = "lib,dlpreopen"; then # Collect and forward deplibs of preopened libtool libs for lib in $dlprefiles; do # Ignore non-libtool-libs dependency_libs= func_resolve_sysroot "$lib" case $lib in *.la) func_source "$func_resolve_sysroot_result" ;; esac # Collect preopened libtool deplibs, except any this library # has declared as weak libs for deplib in $dependency_libs; do func_basename "$deplib" deplib_base=$func_basename_result case " $weak_libs " in *" $deplib_base "*) ;; *) func_append deplibs " $deplib" ;; esac done done libs="$dlprefiles" fi if test "$pass" = dlopen; then # Collect dlpreopened libraries save_deplibs="$deplibs" deplibs= fi for deplib in $libs; do lib= found=no case $deplib in -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else func_append compiler_flags " $deplib" if test "$linkmode" = lib ; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) func_append new_inherited_linker_flags " $deplib" ;; esac fi fi continue ;; -l*) if test "$linkmode" != lib && test "$linkmode" != prog; then func_warning "\`-l' is ignored for archives/objects" continue fi func_stripname '-l' '' "$deplib" name=$func_stripname_result if test "$linkmode" = lib; then searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" else searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" fi for searchdir in $searchdirs; do for search_ext in .la $std_shrext .so .a; do # Search the libtool library lib="$searchdir/lib${name}${search_ext}" if test -f "$lib"; then if test "$search_ext" = ".la"; then found=yes else found=no fi break 2 fi done done if test "$found" != yes; then # deplib doesn't seem to be a libtool library if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" fi continue else # deplib is a libtool library # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, # We need to do some special things here, and not later. if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then case " $predeps $postdeps " in *" $deplib "*) if func_lalib_p "$lib"; then library_names= old_library= func_source "$lib" for l in $old_library $library_names; do ll="$l" done if test "X$ll" = "X$old_library" ; then # only static version available found=no func_dirname "$lib" "" "." ladir="$func_dirname_result" lib=$ladir/$old_library if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" fi continue fi fi ;; *) ;; esac fi fi ;; # -l *.ltframework) if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" if test "$linkmode" = lib ; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) func_append new_inherited_linker_flags " $deplib" ;; esac fi fi continue ;; -L*) case $linkmode in lib) deplibs="$deplib $deplibs" test "$pass" = conv && continue newdependency_libs="$deplib $newdependency_libs" func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result" func_append newlib_search_path " $func_resolve_sysroot_result" ;; prog) if test "$pass" = conv; then deplibs="$deplib $deplibs" continue fi if test "$pass" = scan; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" fi func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result" func_append newlib_search_path " $func_resolve_sysroot_result" ;; *) func_warning "\`-L' is ignored for archives/objects" ;; esac # linkmode continue ;; # -L -R*) if test "$pass" = link; then func_stripname '-R' '' "$deplib" func_resolve_sysroot "$func_stripname_result" dir=$func_resolve_sysroot_result # Make sure the xrpath contains only unique directories. case "$xrpath " in *" $dir "*) ;; *) func_append xrpath " $dir" ;; esac fi deplibs="$deplib $deplibs" continue ;; *.la) func_resolve_sysroot "$deplib" lib=$func_resolve_sysroot_result ;; *.$libext) if test "$pass" = conv; then deplibs="$deplib $deplibs" continue fi case $linkmode in lib) # Linking convenience modules into shared libraries is allowed, # but linking other static libraries is non-portable. case " $dlpreconveniencelibs " in *" $deplib "*) ;; *) valid_a_lib=no case $deplibs_check_method in match_pattern*) set dummy $deplibs_check_method; shift match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ | $EGREP "$match_pattern_regex" > /dev/null; then valid_a_lib=yes fi ;; pass_all) valid_a_lib=yes ;; esac if test "$valid_a_lib" != yes; then echo $ECHO "*** Warning: Trying to link with static lib archive $deplib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because the file extensions .$libext of this argument makes me believe" echo "*** that it is just a static archive that I should not use here." else echo $ECHO "*** Warning: Linking the shared library $output against the" $ECHO "*** static library $deplib is not portable!" deplibs="$deplib $deplibs" fi ;; esac continue ;; prog) if test "$pass" != link; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" fi continue ;; esac # linkmode ;; # *.$libext *.lo | *.$objext) if test "$pass" = conv; then deplibs="$deplib $deplibs" elif test "$linkmode" = prog; then if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then # If there is no dlopen support or we're linking statically, # we need to preload. func_append newdlprefiles " $deplib" compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else func_append newdlfiles " $deplib" fi fi continue ;; %DEPLIBS%) alldeplibs=yes continue ;; esac # case $deplib if test "$found" = yes || test -f "$lib"; then : else func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'" fi # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$lib" \ || func_fatal_error "\`$lib' is not a valid libtool archive" func_dirname "$lib" "" "." ladir="$func_dirname_result" dlname= dlopen= dlpreopen= libdir= library_names= old_library= inherited_linker_flags= # If the library was installed with an old release of libtool, # it will not redefine variables installed, or shouldnotlink installed=yes shouldnotlink=no avoidtemprpath= # Read the .la file func_source "$lib" # Convert "-framework foo" to "foo.ltframework" if test -n "$inherited_linker_flags"; then tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'` for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do case " $new_inherited_linker_flags " in *" $tmp_inherited_linker_flag "*) ;; *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";; esac done fi dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` if test "$linkmode,$pass" = "lib,link" || test "$linkmode,$pass" = "prog,scan" || { test "$linkmode" != prog && test "$linkmode" != lib; }; then test -n "$dlopen" && func_append dlfiles " $dlopen" test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" fi if test "$pass" = conv; then # Only check for convenience libraries deplibs="$lib $deplibs" if test -z "$libdir"; then if test -z "$old_library"; then func_fatal_error "cannot find name of link library for \`$lib'" fi # It is a libtool convenience library, so add in its objects. func_append convenience " $ladir/$objdir/$old_library" func_append old_convenience " $ladir/$objdir/$old_library" tmp_libs= for deplib in $dependency_libs; do deplibs="$deplib $deplibs" if $opt_preserve_dup_deps ; then case "$tmp_libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac fi func_append tmp_libs " $deplib" done elif test "$linkmode" != prog && test "$linkmode" != lib; then func_fatal_error "\`$lib' is not a convenience library" fi continue fi # $pass = conv # Get the name of the library we link against. linklib= if test -n "$old_library" && { test "$prefer_static_libs" = yes || test "$prefer_static_libs,$installed" = "built,no"; }; then linklib=$old_library else for l in $old_library $library_names; do linklib="$l" done fi if test -z "$linklib"; then func_fatal_error "cannot find name of link library for \`$lib'" fi # This library was specified with -dlopen. if test "$pass" = dlopen; then if test -z "$libdir"; then func_fatal_error "cannot -dlopen a convenience library: \`$lib'" fi if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then # If there is no dlname, no dlopen support or we're linking # statically, we need to preload. We also need to preload any # dependent libraries so libltdl's deplib preloader doesn't # bomb out in the load deplibs phase. func_append dlprefiles " $lib $dependency_libs" else func_append newdlfiles " $lib" fi continue fi # $pass = dlopen # We need an absolute path. case $ladir in [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; *) abs_ladir=`cd "$ladir" && pwd` if test -z "$abs_ladir"; then func_warning "cannot determine absolute directory name of \`$ladir'" func_warning "passing it literally to the linker, although it might fail" abs_ladir="$ladir" fi ;; esac func_basename "$lib" laname="$func_basename_result" # Find the relevant object directory and library name. if test "X$installed" = Xyes; then if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then func_warning "library \`$lib' was moved." dir="$ladir" absdir="$abs_ladir" libdir="$abs_ladir" else dir="$lt_sysroot$libdir" absdir="$lt_sysroot$libdir" fi test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes else if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then dir="$ladir" absdir="$abs_ladir" # Remove this search path later func_append notinst_path " $abs_ladir" else dir="$ladir/$objdir" absdir="$abs_ladir/$objdir" # Remove this search path later func_append notinst_path " $abs_ladir" fi fi # $installed = yes func_stripname 'lib' '.la' "$laname" name=$func_stripname_result # This library was specified with -dlpreopen. if test "$pass" = dlpreopen; then if test -z "$libdir" && test "$linkmode" = prog; then func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'" fi case "$host" in # special handling for platforms with PE-DLLs. *cygwin* | *mingw* | *cegcc* ) # Linker will automatically link against shared library if both # static and shared are present. Therefore, ensure we extract # symbols from the import library if a shared library is present # (otherwise, the dlopen module name will be incorrect). We do # this by putting the import library name into $newdlprefiles. # We recover the dlopen module name by 'saving' the la file # name in a special purpose variable, and (later) extracting the # dlname from the la file. if test -n "$dlname"; then func_tr_sh "$dir/$linklib" eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" func_append newdlprefiles " $dir/$linklib" else func_append newdlprefiles " $dir/$old_library" # Keep a list of preopened convenience libraries to check # that they are being used correctly in the link pass. test -z "$libdir" && \ func_append dlpreconveniencelibs " $dir/$old_library" fi ;; * ) # Prefer using a static library (so that no silly _DYNAMIC symbols # are required to link). if test -n "$old_library"; then func_append newdlprefiles " $dir/$old_library" # Keep a list of preopened convenience libraries to check # that they are being used correctly in the link pass. test -z "$libdir" && \ func_append dlpreconveniencelibs " $dir/$old_library" # Otherwise, use the dlname, so that lt_dlopen finds it. elif test -n "$dlname"; then func_append newdlprefiles " $dir/$dlname" else func_append newdlprefiles " $dir/$linklib" fi ;; esac fi # $pass = dlpreopen if test -z "$libdir"; then # Link the convenience library if test "$linkmode" = lib; then deplibs="$dir/$old_library $deplibs" elif test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$dir/$old_library $compile_deplibs" finalize_deplibs="$dir/$old_library $finalize_deplibs" else deplibs="$lib $deplibs" # used for prog,scan pass fi continue fi if test "$linkmode" = prog && test "$pass" != link; then func_append newlib_search_path " $ladir" deplibs="$lib $deplibs" linkalldeplibs=no if test "$link_all_deplibs" != no || test -z "$library_names" || test "$build_libtool_libs" = no; then linkalldeplibs=yes fi tmp_libs= for deplib in $dependency_libs; do case $deplib in -L*) func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result" func_append newlib_search_path " $func_resolve_sysroot_result" ;; esac # Need to link against all dependency_libs? if test "$linkalldeplibs" = yes; then deplibs="$deplib $deplibs" else # Need to hardcode shared library paths # or/and link against static libraries newdependency_libs="$deplib $newdependency_libs" fi if $opt_preserve_dup_deps ; then case "$tmp_libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac fi func_append tmp_libs " $deplib" done # for deplib continue fi # $linkmode = prog... if test "$linkmode,$pass" = "prog,link"; then if test -n "$library_names" && { { test "$prefer_static_libs" = no || test "$prefer_static_libs,$installed" = "built,yes"; } || test -z "$old_library"; }; then # We need to hardcode the library path if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then # Make sure the rpath contains only unique directories. case "$temp_rpath:" in *"$absdir:"*) ;; *) func_append temp_rpath "$absdir:" ;; esac fi # Hardcode the library path. # Skip directories that are in the system default run-time # search path. case " $sys_lib_dlsearch_path " in *" $absdir "*) ;; *) case "$compile_rpath " in *" $absdir "*) ;; *) func_append compile_rpath " $absdir" ;; esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac ;; esac fi # $linkmode,$pass = prog,link... if test "$alldeplibs" = yes && { test "$deplibs_check_method" = pass_all || { test "$build_libtool_libs" = yes && test -n "$library_names"; }; }; then # We only need to search for static libraries continue fi fi link_static=no # Whether the deplib will be linked statically use_static_libs=$prefer_static_libs if test "$use_static_libs" = built && test "$installed" = yes; then use_static_libs=no fi if test -n "$library_names" && { test "$use_static_libs" = no || test -z "$old_library"; }; then case $host in *cygwin* | *mingw* | *cegcc*) # No point in relinking DLLs because paths are not encoded func_append notinst_deplibs " $lib" need_relink=no ;; *) if test "$installed" = no; then func_append notinst_deplibs " $lib" need_relink=yes fi ;; esac # This is a shared library # Warn about portability, can't link against -module's on some # systems (darwin). Don't bleat about dlopened modules though! dlopenmodule="" for dlpremoduletest in $dlprefiles; do if test "X$dlpremoduletest" = "X$lib"; then dlopenmodule="$dlpremoduletest" break fi done if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then echo if test "$linkmode" = prog; then $ECHO "*** Warning: Linking the executable $output against the loadable module" else $ECHO "*** Warning: Linking the shared library $output against the loadable module" fi $ECHO "*** $linklib is not portable!" fi if test "$linkmode" = lib && test "$hardcode_into_libs" = yes; then # Hardcode the library path. # Skip directories that are in the system default run-time # search path. case " $sys_lib_dlsearch_path " in *" $absdir "*) ;; *) case "$compile_rpath " in *" $absdir "*) ;; *) func_append compile_rpath " $absdir" ;; esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac ;; esac fi if test -n "$old_archive_from_expsyms_cmds"; then # figure out the soname set dummy $library_names shift realname="$1" shift libname=`eval "\\$ECHO \"$libname_spec\""` # use dlname if we got it. it's perfectly good, no? if test -n "$dlname"; then soname="$dlname" elif test -n "$soname_spec"; then # bleh windows case $host in *cygwin* | mingw* | *cegcc*) func_arith $current - $age major=$func_arith_result versuffix="-$major" ;; esac eval soname=\"$soname_spec\" else soname="$realname" fi # Make a new name for the extract_expsyms_cmds to use soroot="$soname" func_basename "$soroot" soname="$func_basename_result" func_stripname 'lib' '.dll' "$soname" newlib=libimp-$func_stripname_result.a # If the library has no export list, then create one now if test -f "$output_objdir/$soname-def"; then : else func_verbose "extracting exported symbol list from \`$soname'" func_execute_cmds "$extract_expsyms_cmds" 'exit $?' fi # Create $newlib if test -f "$output_objdir/$newlib"; then :; else func_verbose "generating import library for \`$soname'" func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' fi # make sure the library variables are pointing to the new library dir=$output_objdir linklib=$newlib fi # test -n "$old_archive_from_expsyms_cmds" if test "$linkmode" = prog || test "$opt_mode" != relink; then add_shlibpath= add_dir= add= lib_linked=yes case $hardcode_action in immediate | unsupported) if test "$hardcode_direct" = no; then add="$dir/$linklib" case $host in *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; *-*-sysv4*uw2*) add_dir="-L$dir" ;; *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ *-*-unixware7*) add_dir="-L$dir" ;; *-*-darwin* ) # if the lib is a (non-dlopened) module then we can not # link against it, someone is ignoring the earlier warnings if /usr/bin/file -L $add 2> /dev/null | $GREP ": [^:]* bundle" >/dev/null ; then if test "X$dlopenmodule" != "X$lib"; then $ECHO "*** Warning: lib $linklib is a module, not a shared library" if test -z "$old_library" ; then echo echo "*** And there doesn't seem to be a static archive available" echo "*** The link will probably fail, sorry" else add="$dir/$old_library" fi elif test -n "$old_library"; then add="$dir/$old_library" fi fi esac elif test "$hardcode_minus_L" = no; then case $host in *-*-sunos*) add_shlibpath="$dir" ;; esac add_dir="-L$dir" add="-l$name" elif test "$hardcode_shlibpath_var" = no; then add_shlibpath="$dir" add="-l$name" else lib_linked=no fi ;; relink) if test "$hardcode_direct" = yes && test "$hardcode_direct_absolute" = no; then add="$dir/$linklib" elif test "$hardcode_minus_L" = yes; then add_dir="-L$absdir" # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in [\\/]*) func_append add_dir " -L$inst_prefix_dir$libdir" ;; esac fi add="-l$name" elif test "$hardcode_shlibpath_var" = yes; then add_shlibpath="$dir" add="-l$name" else lib_linked=no fi ;; *) lib_linked=no ;; esac if test "$lib_linked" != yes; then func_fatal_configuration "unsupported hardcode properties" fi if test -n "$add_shlibpath"; then case :$compile_shlibpath: in *":$add_shlibpath:"*) ;; *) func_append compile_shlibpath "$add_shlibpath:" ;; esac fi if test "$linkmode" = prog; then test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" test -n "$add" && compile_deplibs="$add $compile_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" if test "$hardcode_direct" != yes && test "$hardcode_minus_L" != yes && test "$hardcode_shlibpath_var" = yes; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) func_append finalize_shlibpath "$libdir:" ;; esac fi fi fi if test "$linkmode" = prog || test "$opt_mode" = relink; then add_shlibpath= add_dir= add= # Finalize command for both is simple: just hardcode it. if test "$hardcode_direct" = yes && test "$hardcode_direct_absolute" = no; then add="$libdir/$linklib" elif test "$hardcode_minus_L" = yes; then add_dir="-L$libdir" add="-l$name" elif test "$hardcode_shlibpath_var" = yes; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) func_append finalize_shlibpath "$libdir:" ;; esac add="-l$name" elif test "$hardcode_automatic" = yes; then if test -n "$inst_prefix_dir" && test -f "$inst_prefix_dir$libdir/$linklib" ; then add="$inst_prefix_dir$libdir/$linklib" else add="$libdir/$linklib" fi else # We cannot seem to hardcode it, guess we'll fake it. add_dir="-L$libdir" # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in [\\/]*) func_append add_dir " -L$inst_prefix_dir$libdir" ;; esac fi add="-l$name" fi if test "$linkmode" = prog; then test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" test -n "$add" && finalize_deplibs="$add $finalize_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" fi fi elif test "$linkmode" = prog; then # Here we assume that one of hardcode_direct or hardcode_minus_L # is not unsupported. This is valid on all known static and # shared platforms. if test "$hardcode_direct" != unsupported; then test -n "$old_library" && linklib="$old_library" compile_deplibs="$dir/$linklib $compile_deplibs" finalize_deplibs="$dir/$linklib $finalize_deplibs" else compile_deplibs="-l$name -L$dir $compile_deplibs" finalize_deplibs="-l$name -L$dir $finalize_deplibs" fi elif test "$build_libtool_libs" = yes; then # Not a shared library if test "$deplibs_check_method" != pass_all; then # We're trying link a shared library against a static one # but the system doesn't support it. # Just print a warning and add the library to dependency_libs so # that the program can be linked against the static library. echo $ECHO "*** Warning: This system can not link to static lib archive $lib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have." if test "$module" = yes; then echo "*** But as you try to build a module library, libtool will still create " echo "*** a static module, that should work as long as the dlopening application" echo "*** is linked with the -dlopen flag to resolve symbols at runtime." if test -z "$global_symbol_pipe"; then echo echo "*** However, this would only work if libtool was able to extract symbol" echo "*** lists from a program, using \`nm' or equivalent, but libtool could" echo "*** not find such a program. So, this module is probably useless." echo "*** \`nm' from GNU binutils and a full rebuild may help." fi if test "$build_old_libs" = no; then build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi fi else deplibs="$dir/$old_library $deplibs" link_static=yes fi fi # link shared/static library? if test "$linkmode" = lib; then if test -n "$dependency_libs" && { test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes || test "$link_static" = yes; }; then # Extract -R from dependency_libs temp_deplibs= for libdir in $dependency_libs; do case $libdir in -R*) func_stripname '-R' '' "$libdir" temp_xrpath=$func_stripname_result case " $xrpath " in *" $temp_xrpath "*) ;; *) func_append xrpath " $temp_xrpath";; esac;; *) func_append temp_deplibs " $libdir";; esac done dependency_libs="$temp_deplibs" fi func_append newlib_search_path " $absdir" # Link against this library test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" # ... and its dependency_libs tmp_libs= for deplib in $dependency_libs; do newdependency_libs="$deplib $newdependency_libs" case $deplib in -L*) func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result";; *) func_resolve_sysroot "$deplib" ;; esac if $opt_preserve_dup_deps ; then case "$tmp_libs " in *" $func_resolve_sysroot_result "*) func_append specialdeplibs " $func_resolve_sysroot_result" ;; esac fi func_append tmp_libs " $func_resolve_sysroot_result" done if test "$link_all_deplibs" != no; then # Add the search paths of all dependency libraries for deplib in $dependency_libs; do path= case $deplib in -L*) path="$deplib" ;; *.la) func_resolve_sysroot "$deplib" deplib=$func_resolve_sysroot_result func_dirname "$deplib" "" "." dir=$func_dirname_result # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; *) absdir=`cd "$dir" && pwd` if test -z "$absdir"; then func_warning "cannot determine absolute directory name of \`$dir'" absdir="$dir" fi ;; esac if $GREP "^installed=no" $deplib > /dev/null; then case $host in *-*-darwin*) depdepl= eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` if test -n "$deplibrary_names" ; then for tmp in $deplibrary_names ; do depdepl=$tmp done if test -f "$absdir/$objdir/$depdepl" ; then depdepl="$absdir/$objdir/$depdepl" darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` if test -z "$darwin_install_name"; then darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` fi func_append compiler_flags " ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}" func_append linker_flags " -dylib_file ${darwin_install_name}:${depdepl}" path= fi fi ;; *) path="-L$absdir/$objdir" ;; esac else eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` test -z "$libdir" && \ func_fatal_error "\`$deplib' is not a valid libtool archive" test "$absdir" != "$libdir" && \ func_warning "\`$deplib' seems to be moved" path="-L$absdir" fi ;; esac case " $deplibs " in *" $path "*) ;; *) deplibs="$path $deplibs" ;; esac done fi # link_all_deplibs != no fi # linkmode = lib done # for deplib in $libs if test "$pass" = link; then if test "$linkmode" = "prog"; then compile_deplibs="$new_inherited_linker_flags $compile_deplibs" finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" else compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` fi fi dependency_libs="$newdependency_libs" if test "$pass" = dlpreopen; then # Link the dlpreopened libraries before other libraries for deplib in $save_deplibs; do deplibs="$deplib $deplibs" done fi if test "$pass" != dlopen; then if test "$pass" != conv; then # Make sure lib_search_path contains only unique directories. lib_search_path= for dir in $newlib_search_path; do case "$lib_search_path " in *" $dir "*) ;; *) func_append lib_search_path " $dir" ;; esac done newlib_search_path= fi if test "$linkmode,$pass" != "prog,link"; then vars="deplibs" else vars="compile_deplibs finalize_deplibs" fi for var in $vars dependency_libs; do # Add libraries to $var in reverse order eval tmp_libs=\"\$$var\" new_libs= for deplib in $tmp_libs; do # FIXME: Pedantically, this is the right thing to do, so # that some nasty dependency loop isn't accidentally # broken: #new_libs="$deplib $new_libs" # Pragmatically, this seems to cause very few problems in # practice: case $deplib in -L*) new_libs="$deplib $new_libs" ;; -R*) ;; *) # And here is the reason: when a library appears more # than once as an explicit dependence of a library, or # is implicitly linked in more than once by the # compiler, it is considered special, and multiple # occurrences thereof are not removed. Compare this # with having the same library being listed as a # dependency of multiple other libraries: in this case, # we know (pedantically, we assume) the library does not # need to be listed more than once, so we keep only the # last copy. This is not always right, but it is rare # enough that we require users that really mean to play # such unportable linking tricks to link the library # using -Wl,-lname, so that libtool does not consider it # for duplicate removal. case " $specialdeplibs " in *" $deplib "*) new_libs="$deplib $new_libs" ;; *) case " $new_libs " in *" $deplib "*) ;; *) new_libs="$deplib $new_libs" ;; esac ;; esac ;; esac done tmp_libs= for deplib in $new_libs; do case $deplib in -L*) case " $tmp_libs " in *" $deplib "*) ;; *) func_append tmp_libs " $deplib" ;; esac ;; *) func_append tmp_libs " $deplib" ;; esac done eval $var=\"$tmp_libs\" done # for var fi # Last step: remove runtime libs from dependency_libs # (they stay in deplibs) tmp_libs= for i in $dependency_libs ; do case " $predeps $postdeps $compiler_lib_search_path " in *" $i "*) i="" ;; esac if test -n "$i" ; then func_append tmp_libs " $i" fi done dependency_libs=$tmp_libs done # for pass if test "$linkmode" = prog; then dlfiles="$newdlfiles" fi if test "$linkmode" = prog || test "$linkmode" = lib; then dlprefiles="$newdlprefiles" fi case $linkmode in oldlib) if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then func_warning "\`-dlopen' is ignored for archives" fi case " $deplibs" in *\ -l* | *\ -L*) func_warning "\`-l' and \`-L' are ignored for archives" ;; esac test -n "$rpath" && \ func_warning "\`-rpath' is ignored for archives" test -n "$xrpath" && \ func_warning "\`-R' is ignored for archives" test -n "$vinfo" && \ func_warning "\`-version-info/-version-number' is ignored for archives" test -n "$release" && \ func_warning "\`-release' is ignored for archives" test -n "$export_symbols$export_symbols_regex" && \ func_warning "\`-export-symbols' is ignored for archives" # Now set the variables for building old libraries. build_libtool_libs=no oldlibs="$output" func_append objs "$old_deplibs" ;; lib) # Make sure we only generate libraries of the form `libNAME.la'. case $outputname in lib*) func_stripname 'lib' '.la' "$outputname" name=$func_stripname_result eval shared_ext=\"$shrext_cmds\" eval libname=\"$libname_spec\" ;; *) test "$module" = no && \ func_fatal_help "libtool library \`$output' must begin with \`lib'" if test "$need_lib_prefix" != no; then # Add the "lib" prefix for modules if required func_stripname '' '.la' "$outputname" name=$func_stripname_result eval shared_ext=\"$shrext_cmds\" eval libname=\"$libname_spec\" else func_stripname '' '.la' "$outputname" libname=$func_stripname_result fi ;; esac if test -n "$objs"; then if test "$deplibs_check_method" != pass_all; then func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs" else echo $ECHO "*** Warning: Linking the shared library $output against the non-libtool" $ECHO "*** objects $objs is not portable!" func_append libobjs " $objs" fi fi test "$dlself" != no && \ func_warning "\`-dlopen self' is ignored for libtool libraries" set dummy $rpath shift test "$#" -gt 1 && \ func_warning "ignoring multiple \`-rpath's for a libtool library" install_libdir="$1" oldlibs= if test -z "$rpath"; then if test "$build_libtool_libs" = yes; then # Building a libtool convenience library. # Some compilers have problems with a `.al' extension so # convenience libraries should have the same extension an # archive normally would. oldlibs="$output_objdir/$libname.$libext $oldlibs" build_libtool_libs=convenience build_old_libs=yes fi test -n "$vinfo" && \ func_warning "\`-version-info/-version-number' is ignored for convenience libraries" test -n "$release" && \ func_warning "\`-release' is ignored for convenience libraries" else # Parse the version information argument. save_ifs="$IFS"; IFS=':' set dummy $vinfo 0 0 0 shift IFS="$save_ifs" test -n "$7" && \ func_fatal_help "too many parameters to \`-version-info'" # convert absolute version numbers to libtool ages # this retains compatibility with .la files and attempts # to make the code below a bit more comprehensible case $vinfo_number in yes) number_major="$1" number_minor="$2" number_revision="$3" # # There are really only two kinds -- those that # use the current revision as the major version # and those that subtract age and use age as # a minor version. But, then there is irix # which has an extra 1 added just for fun # case $version_type in # correct linux to gnu/linux during the next big refactor darwin|linux|osf|windows|none) func_arith $number_major + $number_minor current=$func_arith_result age="$number_minor" revision="$number_revision" ;; freebsd-aout|freebsd-elf|qnx|sunos) current="$number_major" revision="$number_minor" age="0" ;; irix|nonstopux) func_arith $number_major + $number_minor current=$func_arith_result age="$number_minor" revision="$number_minor" lt_irix_increment=no ;; *) func_fatal_configuration "$modename: unknown library version type \`$version_type'" ;; esac ;; no) current="$1" revision="$2" age="$3" ;; esac # Check that each of the things are valid numbers. case $current in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "CURRENT \`$current' must be a nonnegative integer" func_fatal_error "\`$vinfo' is not valid version information" ;; esac case $revision in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "REVISION \`$revision' must be a nonnegative integer" func_fatal_error "\`$vinfo' is not valid version information" ;; esac case $age in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) func_error "AGE \`$age' must be a nonnegative integer" func_fatal_error "\`$vinfo' is not valid version information" ;; esac if test "$age" -gt "$current"; then func_error "AGE \`$age' is greater than the current interface number \`$current'" func_fatal_error "\`$vinfo' is not valid version information" fi # Calculate the version variables. major= versuffix= verstring= case $version_type in none) ;; darwin) # Like Linux, but with the current version available in # verstring for coding it into the library header func_arith $current - $age major=.$func_arith_result versuffix="$major.$age.$revision" # Darwin ld doesn't like 0 for these options... func_arith $current + 1 minor_current=$func_arith_result xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision" verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" ;; freebsd-aout) major=".$current" versuffix=".$current.$revision"; ;; freebsd-elf) major=".$current" versuffix=".$current" ;; irix | nonstopux) if test "X$lt_irix_increment" = "Xno"; then func_arith $current - $age else func_arith $current - $age + 1 fi major=$func_arith_result case $version_type in nonstopux) verstring_prefix=nonstopux ;; *) verstring_prefix=sgi ;; esac verstring="$verstring_prefix$major.$revision" # Add in all the interfaces that we are compatible with. loop=$revision while test "$loop" -ne 0; do func_arith $revision - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result verstring="$verstring_prefix$major.$iface:$verstring" done # Before this point, $major must not contain `.'. major=.$major versuffix="$major.$revision" ;; linux) # correct to gnu/linux during the next big refactor func_arith $current - $age major=.$func_arith_result versuffix="$major.$age.$revision" ;; osf) func_arith $current - $age major=.$func_arith_result versuffix=".$current.$age.$revision" verstring="$current.$age.$revision" # Add in all the interfaces that we are compatible with. loop=$age while test "$loop" -ne 0; do func_arith $current - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result verstring="$verstring:${iface}.0" done # Make executables depend on our current version. func_append verstring ":${current}.0" ;; qnx) major=".$current" versuffix=".$current" ;; sunos) major=".$current" versuffix=".$current.$revision" ;; windows) # Use '-' rather than '.', since we only want one # extension on DOS 8.3 filesystems. func_arith $current - $age major=$func_arith_result versuffix="-$major" ;; *) func_fatal_configuration "unknown library version type \`$version_type'" ;; esac # Clear the version info if we defaulted, and they specified a release. if test -z "$vinfo" && test -n "$release"; then major= case $version_type in darwin) # we can't check for "0.0" in archive_cmds due to quoting # problems, so we reset it completely verstring= ;; *) verstring="0.0" ;; esac if test "$need_version" = no; then versuffix= else versuffix=".0.0" fi fi # Remove version info from name if versioning should be avoided if test "$avoid_version" = yes && test "$need_version" = no; then major= versuffix= verstring="" fi # Check to see if the archive will have undefined symbols. if test "$allow_undefined" = yes; then if test "$allow_undefined_flag" = unsupported; then func_warning "undefined symbols not allowed in $host shared libraries" build_libtool_libs=no build_old_libs=yes fi else # Don't allow undefined symbols. allow_undefined_flag="$no_undefined_flag" fi fi func_generate_dlsyms "$libname" "$libname" "yes" func_append libobjs " $symfileobj" test "X$libobjs" = "X " && libobjs= if test "$opt_mode" != relink; then # Remove our outputs, but don't remove object files since they # may have been created when compiling PIC objects. removelist= tempremovelist=`$ECHO "$output_objdir/*"` for p in $tempremovelist; do case $p in *.$objext | *.gcno) ;; $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) if test "X$precious_files_regex" != "X"; then if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 then continue fi fi func_append removelist " $p" ;; *) ;; esac done test -n "$removelist" && \ func_show_eval "${RM}r \$removelist" fi # Now set the variables for building old libraries. if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then func_append oldlibs " $output_objdir/$libname.$libext" # Transform .lo files to .o files. oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $lo2o" | $NL2SP` fi # Eliminate all temporary directories. #for path in $notinst_path; do # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"` #done if test -n "$xrpath"; then # If the user specified any rpath flags, then add them. temp_xrpath= for libdir in $xrpath; do func_replace_sysroot "$libdir" func_append temp_xrpath " -R$func_replace_sysroot_result" case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac done if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then dependency_libs="$temp_xrpath $dependency_libs" fi fi # Make sure dlfiles contains only unique files that won't be dlpreopened old_dlfiles="$dlfiles" dlfiles= for lib in $old_dlfiles; do case " $dlprefiles $dlfiles " in *" $lib "*) ;; *) func_append dlfiles " $lib" ;; esac done # Make sure dlprefiles contains only unique files old_dlprefiles="$dlprefiles" dlprefiles= for lib in $old_dlprefiles; do case "$dlprefiles " in *" $lib "*) ;; *) func_append dlprefiles " $lib" ;; esac done if test "$build_libtool_libs" = yes; then if test -n "$rpath"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) # these systems don't actually have a c library (as such)! ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C library is in the System framework func_append deplibs " System.ltframework" ;; *-*-netbsd*) # Don't link with libc until the a.out ld.so is fixed. ;; *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc due to us having libc/libc_r. ;; *-*-sco3.2v5* | *-*-sco5v6*) # Causes problems with __ctype ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work ;; *) # Add libc to deplibs on all other systems if necessary. if test "$build_libtool_need_lc" = "yes"; then func_append deplibs " -lc" fi ;; esac fi # Transform deplibs into only deplibs that can be linked in shared. name_save=$name libname_save=$libname release_save=$release versuffix_save=$versuffix major_save=$major # I'm not sure if I'm treating the release correctly. I think # release should show up in the -l (ie -lgmp5) so we don't want to # add it in twice. Is that correct? release="" versuffix="" major="" newdeplibs= droppeddeps=no case $deplibs_check_method in pass_all) # Don't check for shared/static. Everything works. # This might be a little naive. We might want to check # whether the library exists or not. But this is on # osf3 & osf4 and I'm not really sure... Just # implementing what was already the behavior. newdeplibs=$deplibs ;; test_compile) # This code stresses the "libraries are programs" paradigm to its # limits. Maybe even breaks it. We compile a program, linking it # against the deplibs as a proxy for the library. Then we can check # whether they linked in statically or dynamically with ldd. $opt_dry_run || $RM conftest.c cat > conftest.c </dev/null` $nocaseglob else potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` fi for potent_lib in $potential_libs; do # Follow soft links. if ls -lLd "$potent_lib" 2>/dev/null | $GREP " -> " >/dev/null; then continue fi # The statement above tries to avoid entering an # endless loop below, in case of cyclic links. # We might still enter an endless loop, since a link # loop can be closed while we follow links, # but so what? potlib="$potent_lib" while test -h "$potlib" 2>/dev/null; do potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` case $potliblink in [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; *) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$potliblink";; esac done if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | $SED -e 10q | $EGREP "$file_magic_regex" > /dev/null; then func_append newdeplibs " $a_deplib" a_deplib="" break 2 fi done done fi if test -n "$a_deplib" ; then droppeddeps=yes echo $ECHO "*** Warning: linker path does not have real file for library $a_deplib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because I did check the linker path looking for a file starting" if test -z "$potlib" ; then $ECHO "*** with $libname but no candidates were found. (...for file magic test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" $ECHO "*** using a file magic. Last file checked: $potlib" fi fi ;; *) # Add a -L argument. func_append newdeplibs " $a_deplib" ;; esac done # Gone through all deplibs. ;; match_pattern*) set dummy $deplibs_check_method; shift match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` for a_deplib in $deplibs; do case $a_deplib in -l*) func_stripname -l '' "$a_deplib" name=$func_stripname_result if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then case " $predeps $postdeps " in *" $a_deplib "*) func_append newdeplibs " $a_deplib" a_deplib="" ;; esac fi if test -n "$a_deplib" ; then libname=`eval "\\$ECHO \"$libname_spec\""` for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do potential_libs=`ls $i/$libname[.-]* 2>/dev/null` for potent_lib in $potential_libs; do potlib="$potent_lib" # see symlink-check above in file_magic test if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ $EGREP "$match_pattern_regex" > /dev/null; then func_append newdeplibs " $a_deplib" a_deplib="" break 2 fi done done fi if test -n "$a_deplib" ; then droppeddeps=yes echo $ECHO "*** Warning: linker path does not have real file for library $a_deplib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because I did check the linker path looking for a file starting" if test -z "$potlib" ; then $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" $ECHO "*** using a regex pattern. Last file checked: $potlib" fi fi ;; *) # Add a -L argument. func_append newdeplibs " $a_deplib" ;; esac done # Gone through all deplibs. ;; none | unknown | *) newdeplibs="" tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then for i in $predeps $postdeps ; do # can't use Xsed below, because $i might contain '/' tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s,$i,,"` done fi case $tmp_deplibs in *[!\ \ ]*) echo if test "X$deplibs_check_method" = "Xnone"; then echo "*** Warning: inter-library dependencies are not supported in this platform." else echo "*** Warning: inter-library dependencies are not known to be supported." fi echo "*** All declared inter-library dependencies are being dropped." droppeddeps=yes ;; esac ;; esac versuffix=$versuffix_save major=$major_save release=$release_save libname=$libname_save name=$name_save case $host in *-*-rhapsody* | *-*-darwin1.[012]) # On Rhapsody replace the C library with the System framework newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'` ;; esac if test "$droppeddeps" = yes; then if test "$module" = yes; then echo echo "*** Warning: libtool could not satisfy all declared inter-library" $ECHO "*** dependencies of module $libname. Therefore, libtool will create" echo "*** a static module, that should work as long as the dlopening" echo "*** application is linked with the -dlopen flag." if test -z "$global_symbol_pipe"; then echo echo "*** However, this would only work if libtool was able to extract symbol" echo "*** lists from a program, using \`nm' or equivalent, but libtool could" echo "*** not find such a program. So, this module is probably useless." echo "*** \`nm' from GNU binutils and a full rebuild may help." fi if test "$build_old_libs" = no; then oldlibs="$output_objdir/$libname.$libext" build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi else echo "*** The inter-library dependencies that have been dropped here will be" echo "*** automatically added whenever a program is linked with this library" echo "*** or is declared to -dlopen it." if test "$allow_undefined" = no; then echo echo "*** Since this library must not contain undefined symbols," echo "*** because either the platform does not support them or" echo "*** it was explicitly requested with -no-undefined," echo "*** libtool will only create a static version of it." if test "$build_old_libs" = no; then oldlibs="$output_objdir/$libname.$libext" build_libtool_libs=module build_old_libs=yes else build_libtool_libs=no fi fi fi fi # Done checking deplibs! deplibs=$newdeplibs fi # Time to change all our "foo.ltframework" stuff back to "-framework foo" case $host in *-*-darwin*) newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` ;; esac # move library search paths that coincide with paths to not yet # installed libraries to the beginning of the library search list new_libs= for path in $notinst_path; do case " $new_libs " in *" -L$path/$objdir "*) ;; *) case " $deplibs " in *" -L$path/$objdir "*) func_append new_libs " -L$path/$objdir" ;; esac ;; esac done for deplib in $deplibs; do case $deplib in -L*) case " $new_libs " in *" $deplib "*) ;; *) func_append new_libs " $deplib" ;; esac ;; *) func_append new_libs " $deplib" ;; esac done deplibs="$new_libs" # All the library-specific variables (install_libdir is set above). library_names= old_library= dlname= # Test again, we may have decided not to build it any more if test "$build_libtool_libs" = yes; then # Remove ${wl} instances when linking with ld. # FIXME: should test the right _cmds variable. case $archive_cmds in *\$LD\ *) wl= ;; esac if test "$hardcode_into_libs" = yes; then # Hardcode the library paths hardcode_libdirs= dep_rpath= rpath="$finalize_rpath" test "$opt_mode" != relink && rpath="$compile_rpath$rpath" for libdir in $rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then func_replace_sysroot "$libdir" libdir=$func_replace_sysroot_result if test -z "$hardcode_libdirs"; then hardcode_libdirs="$libdir" else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" func_append dep_rpath " $flag" fi elif test -n "$runpath_var"; then case "$perm_rpath " in *" $libdir "*) ;; *) func_append perm_rpath " $libdir" ;; esac fi done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir="$hardcode_libdirs" eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" fi if test -n "$runpath_var" && test -n "$perm_rpath"; then # We should set the runpath_var. rpath= for dir in $perm_rpath; do func_append rpath "$dir:" done eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" fi test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" fi shlibpath="$finalize_shlibpath" test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpath" if test -n "$shlibpath"; then eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" fi # Get the real and link names of the library. eval shared_ext=\"$shrext_cmds\" eval library_names=\"$library_names_spec\" set dummy $library_names shift realname="$1" shift if test -n "$soname_spec"; then eval soname=\"$soname_spec\" else soname="$realname" fi if test -z "$dlname"; then dlname=$soname fi lib="$output_objdir/$realname" linknames= for link do func_append linknames " $link" done # Use standard objects if they are pic test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP` test "X$libobjs" = "X " && libobjs= delfiles= if test -n "$export_symbols" && test -n "$include_expsyms"; then $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" export_symbols="$output_objdir/$libname.uexp" func_append delfiles " $export_symbols" fi orig_export_symbols= case $host_os in cygwin* | mingw* | cegcc*) if test -n "$export_symbols" && test -z "$export_symbols_regex"; then # exporting using user supplied symfile if test "x`$SED 1q $export_symbols`" != xEXPORTS; then # and it's NOT already a .def file. Must figure out # which of the given symbols are data symbols and tag # them as such. So, trigger use of export_symbols_cmds. # export_symbols gets reassigned inside the "prepare # the list of exported symbols" if statement, so the # include_expsyms logic still works. orig_export_symbols="$export_symbols" export_symbols= always_export_symbols=yes fi fi ;; esac # Prepare the list of exported symbols if test -z "$export_symbols"; then if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then func_verbose "generating symbol list for \`$libname.la'" export_symbols="$output_objdir/$libname.exp" $opt_dry_run || $RM $export_symbols cmds=$export_symbols_cmds save_ifs="$IFS"; IFS='~' for cmd1 in $cmds; do IFS="$save_ifs" # Take the normal branch if the nm_file_list_spec branch # doesn't work or if tool conversion is not needed. case $nm_file_list_spec~$to_tool_file_cmd in *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*) try_normal_branch=yes eval cmd=\"$cmd1\" func_len " $cmd" len=$func_len_result ;; *) try_normal_branch=no ;; esac if test "$try_normal_branch" = yes \ && { test "$len" -lt "$max_cmd_len" \ || test "$max_cmd_len" -le -1; } then func_show_eval "$cmd" 'exit $?' skipped_export=false elif test -n "$nm_file_list_spec"; then func_basename "$output" output_la=$func_basename_result save_libobjs=$libobjs save_output=$output output=${output_objdir}/${output_la}.nm func_to_tool_file "$output" libobjs=$nm_file_list_spec$func_to_tool_file_result func_append delfiles " $output" func_verbose "creating $NM input file list: $output" for obj in $save_libobjs; do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" done > "$output" eval cmd=\"$cmd1\" func_show_eval "$cmd" 'exit $?' output=$save_output libobjs=$save_libobjs skipped_export=false else # The command line is too long to execute in one step. func_verbose "using reloadable object file for export list..." skipped_export=: # Break out early, otherwise skipped_export may be # set to false by a later but shorter cmd. break fi done IFS="$save_ifs" if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' func_show_eval '$MV "${export_symbols}T" "$export_symbols"' fi fi fi if test -n "$export_symbols" && test -n "$include_expsyms"; then tmp_export_symbols="$export_symbols" test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' fi if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of # 's' commands which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter func_append delfiles " $export_symbols $output_objdir/$libname.filter" export_symbols=$output_objdir/$libname.def $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols fi tmp_deplibs= for test_deplib in $deplibs; do case " $convenience " in *" $test_deplib "*) ;; *) func_append tmp_deplibs " $test_deplib" ;; esac done deplibs="$tmp_deplibs" if test -n "$convenience"; then if test -n "$whole_archive_flag_spec" && test "$compiler_needs_object" = yes && test -z "$libobjs"; then # extract the archives, so we have objects to list. # TODO: could optimize this to just extract one archive. whole_archive_flag_spec= fi if test -n "$whole_archive_flag_spec"; then save_libobjs=$libobjs eval libobjs=\"\$libobjs $whole_archive_flag_spec\" test "X$libobjs" = "X " && libobjs= else gentop="$output_objdir/${outputname}x" func_append generated " $gentop" func_extract_archives $gentop $convenience func_append libobjs " $func_extract_archives_result" test "X$libobjs" = "X " && libobjs= fi fi if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then eval flag=\"$thread_safe_flag_spec\" func_append linker_flags " $flag" fi # Make a backup of the uninstalled library when relinking if test "$opt_mode" = relink; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? fi # Do each of the archive commands. if test "$module" = yes && test -n "$module_cmds" ; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then eval test_cmds=\"$module_expsym_cmds\" cmds=$module_expsym_cmds else eval test_cmds=\"$module_cmds\" cmds=$module_cmds fi else if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then eval test_cmds=\"$archive_expsym_cmds\" cmds=$archive_expsym_cmds else eval test_cmds=\"$archive_cmds\" cmds=$archive_cmds fi fi if test "X$skipped_export" != "X:" && func_len " $test_cmds" && len=$func_len_result && test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then : else # The command line is too long to link in one step, link piecewise # or, if using GNU ld and skipped_export is not :, use a linker # script. # Save the value of $output and $libobjs because we want to # use them later. If we have whole_archive_flag_spec, we # want to use save_libobjs as it was before # whole_archive_flag_spec was expanded, because we can't # assume the linker understands whole_archive_flag_spec. # This may have to be revisited, in case too many # convenience libraries get linked in and end up exceeding # the spec. if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then save_libobjs=$libobjs fi save_output=$output func_basename "$output" output_la=$func_basename_result # Clear the reloadable object creation command queue and # initialize k to one. test_cmds= concat_cmds= objlist= last_robj= k=1 if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then output=${output_objdir}/${output_la}.lnkscript func_verbose "creating GNU ld script: $output" echo 'INPUT (' > $output for obj in $save_libobjs do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" >> $output done echo ')' >> $output func_append delfiles " $output" func_to_tool_file "$output" output=$func_to_tool_file_result elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then output=${output_objdir}/${output_la}.lnk func_verbose "creating linker input file list: $output" : > $output set x $save_libobjs shift firstobj= if test "$compiler_needs_object" = yes; then firstobj="$1 " shift fi for obj do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" >> $output done func_append delfiles " $output" func_to_tool_file "$output" output=$firstobj\"$file_list_spec$func_to_tool_file_result\" else if test -n "$save_libobjs"; then func_verbose "creating reloadable object files..." output=$output_objdir/$output_la-${k}.$objext eval test_cmds=\"$reload_cmds\" func_len " $test_cmds" len0=$func_len_result len=$len0 # Loop over the list of objects to be linked. for obj in $save_libobjs do func_len " $obj" func_arith $len + $func_len_result len=$func_arith_result if test "X$objlist" = X || test "$len" -lt "$max_cmd_len"; then func_append objlist " $obj" else # The command $test_cmds is almost too long, add a # command to the queue. if test "$k" -eq 1 ; then # The first file doesn't have a previous command to add. reload_objs=$objlist eval concat_cmds=\"$reload_cmds\" else # All subsequent reloadable object files will link in # the last one created. reload_objs="$objlist $last_robj" eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" fi last_robj=$output_objdir/$output_la-${k}.$objext func_arith $k + 1 k=$func_arith_result output=$output_objdir/$output_la-${k}.$objext objlist=" $obj" func_len " $last_robj" func_arith $len0 + $func_len_result len=$func_arith_result fi done # Handle the remaining objects by creating one last # reloadable object file. All subsequent reloadable object # files will link in the last one created. test -z "$concat_cmds" || concat_cmds=$concat_cmds~ reload_objs="$objlist $last_robj" eval concat_cmds=\"\${concat_cmds}$reload_cmds\" if test -n "$last_robj"; then eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\" fi func_append delfiles " $output" else output= fi if ${skipped_export-false}; then func_verbose "generating symbol list for \`$libname.la'" export_symbols="$output_objdir/$libname.exp" $opt_dry_run || $RM $export_symbols libobjs=$output # Append the command to create the export file. test -z "$concat_cmds" || concat_cmds=$concat_cmds~ eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" if test -n "$last_robj"; then eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" fi fi test -n "$save_libobjs" && func_verbose "creating a temporary reloadable object file: $output" # Loop through the commands generated above and execute them. save_ifs="$IFS"; IFS='~' for cmd in $concat_cmds; do IFS="$save_ifs" $opt_silent || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? # Restore the uninstalled library and exit if test "$opt_mode" = relink; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) fi exit $lt_exit } done IFS="$save_ifs" if test -n "$export_symbols_regex" && ${skipped_export-false}; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' func_show_eval '$MV "${export_symbols}T" "$export_symbols"' fi fi if ${skipped_export-false}; then if test -n "$export_symbols" && test -n "$include_expsyms"; then tmp_export_symbols="$export_symbols" test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' fi if test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of # 's' commands which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter func_append delfiles " $export_symbols $output_objdir/$libname.filter" export_symbols=$output_objdir/$libname.def $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols fi fi libobjs=$output # Restore the value of output. output=$save_output if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then eval libobjs=\"\$libobjs $whole_archive_flag_spec\" test "X$libobjs" = "X " && libobjs= fi # Expand the library linking commands again to reset the # value of $libobjs for piecewise linking. # Do each of the archive commands. if test "$module" = yes && test -n "$module_cmds" ; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then cmds=$module_expsym_cmds else cmds=$module_cmds fi else if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then cmds=$archive_expsym_cmds else cmds=$archive_cmds fi fi fi if test -n "$delfiles"; then # Append the command to remove temporary files to $cmds. eval cmds=\"\$cmds~\$RM $delfiles\" fi # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then gentop="$output_objdir/${outputname}x" func_append generated " $gentop" func_extract_archives $gentop $dlprefiles func_append libobjs " $func_extract_archives_result" test "X$libobjs" = "X " && libobjs= fi save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" eval cmd=\"$cmd\" $opt_silent || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? # Restore the uninstalled library and exit if test "$opt_mode" = relink; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) fi exit $lt_exit } done IFS="$save_ifs" # Restore the uninstalled library and exit if test "$opt_mode" = relink; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? if test -n "$convenience"; then if test -z "$whole_archive_flag_spec"; then func_show_eval '${RM}r "$gentop"' fi fi exit $EXIT_SUCCESS fi # Create links to the real library. for linkname in $linknames; do if test "$realname" != "$linkname"; then func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' fi done # If -module or -export-dynamic was specified, set the dlname. if test "$module" = yes || test "$export_dynamic" = yes; then # On all known operating systems, these are identical. dlname="$soname" fi fi ;; obj) if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then func_warning "\`-dlopen' is ignored for objects" fi case " $deplibs" in *\ -l* | *\ -L*) func_warning "\`-l' and \`-L' are ignored for objects" ;; esac test -n "$rpath" && \ func_warning "\`-rpath' is ignored for objects" test -n "$xrpath" && \ func_warning "\`-R' is ignored for objects" test -n "$vinfo" && \ func_warning "\`-version-info' is ignored for objects" test -n "$release" && \ func_warning "\`-release' is ignored for objects" case $output in *.lo) test -n "$objs$old_deplibs" && \ func_fatal_error "cannot build library object \`$output' from non-libtool objects" libobj=$output func_lo2o "$libobj" obj=$func_lo2o_result ;; *) libobj= obj="$output" ;; esac # Delete the old objects. $opt_dry_run || $RM $obj $libobj # Objects from convenience libraries. This assumes # single-version convenience libraries. Whenever we create # different ones for PIC/non-PIC, this we'll have to duplicate # the extraction. reload_conv_objs= gentop= # reload_cmds runs $LD directly, so let us get rid of # -Wl from whole_archive_flag_spec and hope we can get by with # turning comma into space.. wl= if test -n "$convenience"; then if test -n "$whole_archive_flag_spec"; then eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` else gentop="$output_objdir/${obj}x" func_append generated " $gentop" func_extract_archives $gentop $convenience reload_conv_objs="$reload_objs $func_extract_archives_result" fi fi # If we're not building shared, we need to use non_pic_objs test "$build_libtool_libs" != yes && libobjs="$non_pic_objects" # Create the old-style object. reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test output="$obj" func_execute_cmds "$reload_cmds" 'exit $?' # Exit if we aren't doing a library object file. if test -z "$libobj"; then if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi exit $EXIT_SUCCESS fi if test "$build_libtool_libs" != yes; then if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi # Create an invalid libtool object if no PIC, so that we don't # accidentally link it into a program. # $show "echo timestamp > $libobj" # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? exit $EXIT_SUCCESS fi if test -n "$pic_flag" || test "$pic_mode" != default; then # Only do commands if we really have different PIC objects. reload_objs="$libobjs $reload_conv_objs" output="$libobj" func_execute_cmds "$reload_cmds" 'exit $?' fi if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi exit $EXIT_SUCCESS ;; prog) case $host in *cygwin*) func_stripname '' '.exe' "$output" output=$func_stripname_result.exe;; esac test -n "$vinfo" && \ func_warning "\`-version-info' is ignored for programs" test -n "$release" && \ func_warning "\`-release' is ignored for programs" test "$preload" = yes \ && test "$dlopen_support" = unknown \ && test "$dlopen_self" = unknown \ && test "$dlopen_self_static" = unknown && \ func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support." case $host in *-*-rhapsody* | *-*-darwin1.[012]) # On Rhapsody replace the C library is the System framework compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'` finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'` ;; esac case $host in *-*-darwin*) # Don't allow lazy linking, it breaks C++ global constructors # But is supposedly fixed on 10.4 or later (yay!). if test "$tagname" = CXX ; then case ${MACOSX_DEPLOYMENT_TARGET-10.0} in 10.[0123]) func_append compile_command " ${wl}-bind_at_load" func_append finalize_command " ${wl}-bind_at_load" ;; esac fi # Time to change all our "foo.ltframework" stuff back to "-framework foo" compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` ;; esac # move library search paths that coincide with paths to not yet # installed libraries to the beginning of the library search list new_libs= for path in $notinst_path; do case " $new_libs " in *" -L$path/$objdir "*) ;; *) case " $compile_deplibs " in *" -L$path/$objdir "*) func_append new_libs " -L$path/$objdir" ;; esac ;; esac done for deplib in $compile_deplibs; do case $deplib in -L*) case " $new_libs " in *" $deplib "*) ;; *) func_append new_libs " $deplib" ;; esac ;; *) func_append new_libs " $deplib" ;; esac done compile_deplibs="$new_libs" func_append compile_command " $compile_deplibs" func_append finalize_command " $finalize_deplibs" if test -n "$rpath$xrpath"; then # If the user specified any rpath flags, then add them. for libdir in $rpath $xrpath; do # This is the magic to use -rpath. case "$finalize_rpath " in *" $libdir "*) ;; *) func_append finalize_rpath " $libdir" ;; esac done fi # Now hardcode the library paths rpath= hardcode_libdirs= for libdir in $compile_rpath $finalize_rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then hardcode_libdirs="$libdir" else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" func_append rpath " $flag" fi elif test -n "$runpath_var"; then case "$perm_rpath " in *" $libdir "*) ;; *) func_append perm_rpath " $libdir" ;; esac fi case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$libdir:"*) ;; ::) dllsearchpath=$libdir;; *) func_append dllsearchpath ":$libdir";; esac case :$dllsearchpath: in *":$testbindir:"*) ;; ::) dllsearchpath=$testbindir;; *) func_append dllsearchpath ":$testbindir";; esac ;; esac done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir="$hardcode_libdirs" eval rpath=\" $hardcode_libdir_flag_spec\" fi compile_rpath="$rpath" rpath= hardcode_libdirs= for libdir in $finalize_rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then hardcode_libdirs="$libdir" else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) ;; *) func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" ;; esac fi else eval flag=\"$hardcode_libdir_flag_spec\" func_append rpath " $flag" fi elif test -n "$runpath_var"; then case "$finalize_perm_rpath " in *" $libdir "*) ;; *) func_append finalize_perm_rpath " $libdir" ;; esac fi done # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then libdir="$hardcode_libdirs" eval rpath=\" $hardcode_libdir_flag_spec\" fi finalize_rpath="$rpath" if test -n "$libobjs" && test "$build_old_libs" = yes; then # Transform all the library objects into standard objects. compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` fi func_generate_dlsyms "$outputname" "@PROGRAM@" "no" # template prelinking step if test -n "$prelink_cmds"; then func_execute_cmds "$prelink_cmds" 'exit $?' fi wrappers_required=yes case $host in *cegcc* | *mingw32ce*) # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. wrappers_required=no ;; *cygwin* | *mingw* ) if test "$build_libtool_libs" != yes; then wrappers_required=no fi ;; *) if test "$need_relink" = no || test "$build_libtool_libs" != yes; then wrappers_required=no fi ;; esac if test "$wrappers_required" = no; then # Replace the output file specification. compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` link_command="$compile_command$compile_rpath" # We have no uninstalled library dependencies, so finalize right now. exit_status=0 func_show_eval "$link_command" 'exit_status=$?' if test -n "$postlink_cmds"; then func_to_tool_file "$output" postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` func_execute_cmds "$postlink_cmds" 'exit $?' fi # Delete the generated files. if test -f "$output_objdir/${outputname}S.${objext}"; then func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"' fi exit $exit_status fi if test -n "$compile_shlibpath$finalize_shlibpath"; then compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" fi if test -n "$finalize_shlibpath"; then finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" fi compile_var= finalize_var= if test -n "$runpath_var"; then if test -n "$perm_rpath"; then # We should set the runpath_var. rpath= for dir in $perm_rpath; do func_append rpath "$dir:" done compile_var="$runpath_var=\"$rpath\$$runpath_var\" " fi if test -n "$finalize_perm_rpath"; then # We should set the runpath_var. rpath= for dir in $finalize_perm_rpath; do func_append rpath "$dir:" done finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " fi fi if test "$no_install" = yes; then # We don't need to create a wrapper script. link_command="$compile_var$compile_command$compile_rpath" # Replace the output file specification. link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` # Delete the old output file. $opt_dry_run || $RM $output # Link the executable and exit func_show_eval "$link_command" 'exit $?' if test -n "$postlink_cmds"; then func_to_tool_file "$output" postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` func_execute_cmds "$postlink_cmds" 'exit $?' fi exit $EXIT_SUCCESS fi if test "$hardcode_action" = relink; then # Fast installation is not supported link_command="$compile_var$compile_command$compile_rpath" relink_command="$finalize_var$finalize_command$finalize_rpath" func_warning "this platform does not like uninstalled shared libraries" func_warning "\`$output' will be relinked during installation" else if test "$fast_install" != no; then link_command="$finalize_var$compile_command$finalize_rpath" if test "$fast_install" = yes; then relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` else # fast_install is set to needless relink_command= fi else link_command="$compile_var$compile_command$compile_rpath" relink_command="$finalize_var$finalize_command$finalize_rpath" fi fi # Replace the output file specification. link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` # Delete the old output files. $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname func_show_eval "$link_command" 'exit $?' if test -n "$postlink_cmds"; then func_to_tool_file "$output_objdir/$outputname" postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` func_execute_cmds "$postlink_cmds" 'exit $?' fi # Now create the wrapper script. func_verbose "creating $output" # Quote the relink command for shipping. if test -n "$relink_command"; then # Preserve any variables that may affect compiler behavior for var in $variables_saved_for_relink; do if eval test -z \"\${$var+set}\"; then relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else func_quote_for_eval "$var_value" relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" fi done relink_command="(cd `pwd`; $relink_command)" relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` fi # Only actually do things if not in dry run mode. $opt_dry_run || { # win32 will think the script is a binary if it has # a .exe suffix, so we strip it off here. case $output in *.exe) func_stripname '' '.exe' "$output" output=$func_stripname_result ;; esac # test for cygwin because mv fails w/o .exe extensions case $host in *cygwin*) exeext=.exe func_stripname '' '.exe' "$outputname" outputname=$func_stripname_result ;; *) exeext= ;; esac case $host in *cygwin* | *mingw* ) func_dirname_and_basename "$output" "" "." output_name=$func_basename_result output_path=$func_dirname_result cwrappersource="$output_path/$objdir/lt-$output_name.c" cwrapper="$output_path/$output_name.exe" $RM $cwrappersource $cwrapper trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 func_emit_cwrapperexe_src > $cwrappersource # The wrapper executable is built using the $host compiler, # because it contains $host paths and files. If cross- # compiling, it, like the target executable, must be # executed on the $host or under an emulation environment. $opt_dry_run || { $LTCC $LTCFLAGS -o $cwrapper $cwrappersource $STRIP $cwrapper } # Now, create the wrapper script for func_source use: func_ltwrapper_scriptname $cwrapper $RM $func_ltwrapper_scriptname_result trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 $opt_dry_run || { # note: this script will not be executed, so do not chmod. if test "x$build" = "x$host" ; then $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result else func_emit_wrapper no > $func_ltwrapper_scriptname_result fi } ;; * ) $RM $output trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 func_emit_wrapper no > $output chmod +x $output ;; esac } exit $EXIT_SUCCESS ;; esac # See if we need to build an old-fashioned archive. for oldlib in $oldlibs; do if test "$build_libtool_libs" = convenience; then oldobjs="$libobjs_save $symfileobj" addlibs="$convenience" build_libtool_libs=no else if test "$build_libtool_libs" = module; then oldobjs="$libobjs_save" build_libtool_libs=no else oldobjs="$old_deplibs $non_pic_objects" if test "$preload" = yes && test -f "$symfileobj"; then func_append oldobjs " $symfileobj" fi fi addlibs="$old_convenience" fi if test -n "$addlibs"; then gentop="$output_objdir/${outputname}x" func_append generated " $gentop" func_extract_archives $gentop $addlibs func_append oldobjs " $func_extract_archives_result" fi # Do each command in the archive commands. if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then cmds=$old_archive_from_new_cmds else # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then gentop="$output_objdir/${outputname}x" func_append generated " $gentop" func_extract_archives $gentop $dlprefiles func_append oldobjs " $func_extract_archives_result" fi # POSIX demands no paths to be encoded in archives. We have # to avoid creating archives with duplicate basenames if we # might have to extract them afterwards, e.g., when creating a # static archive out of a convenience library, or when linking # the entirety of a libtool archive into another (currently # not supported by libtool). if (for obj in $oldobjs do func_basename "$obj" $ECHO "$func_basename_result" done | sort | sort -uc >/dev/null 2>&1); then : else echo "copying selected object files to avoid basename conflicts..." gentop="$output_objdir/${outputname}x" func_append generated " $gentop" func_mkdir_p "$gentop" save_oldobjs=$oldobjs oldobjs= counter=1 for obj in $save_oldobjs do func_basename "$obj" objbase="$func_basename_result" case " $oldobjs " in " ") oldobjs=$obj ;; *[\ /]"$objbase "*) while :; do # Make sure we don't pick an alternate name that also # overlaps. newobj=lt$counter-$objbase func_arith $counter + 1 counter=$func_arith_result case " $oldobjs " in *[\ /]"$newobj "*) ;; *) if test ! -f "$gentop/$newobj"; then break; fi ;; esac done func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" func_append oldobjs " $gentop/$newobj" ;; *) func_append oldobjs " $obj" ;; esac done fi func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 tool_oldlib=$func_to_tool_file_result eval cmds=\"$old_archive_cmds\" func_len " $cmds" len=$func_len_result if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then cmds=$old_archive_cmds elif test -n "$archiver_list_spec"; then func_verbose "using command file archive linking..." for obj in $oldobjs do func_to_tool_file "$obj" $ECHO "$func_to_tool_file_result" done > $output_objdir/$libname.libcmd func_to_tool_file "$output_objdir/$libname.libcmd" oldobjs=" $archiver_list_spec$func_to_tool_file_result" cmds=$old_archive_cmds else # the command line is too long to link in one step, link in parts func_verbose "using piecewise archive linking..." save_RANLIB=$RANLIB RANLIB=: objlist= concat_cmds= save_oldobjs=$oldobjs oldobjs= # Is there a better way of finding the last object in the list? for obj in $save_oldobjs do last_oldobj=$obj done eval test_cmds=\"$old_archive_cmds\" func_len " $test_cmds" len0=$func_len_result len=$len0 for obj in $save_oldobjs do func_len " $obj" func_arith $len + $func_len_result len=$func_arith_result func_append objlist " $obj" if test "$len" -lt "$max_cmd_len"; then : else # the above command should be used before it gets too long oldobjs=$objlist if test "$obj" = "$last_oldobj" ; then RANLIB=$save_RANLIB fi test -z "$concat_cmds" || concat_cmds=$concat_cmds~ eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" objlist= len=$len0 fi done RANLIB=$save_RANLIB oldobjs=$objlist if test "X$oldobjs" = "X" ; then eval cmds=\"\$concat_cmds\" else eval cmds=\"\$concat_cmds~\$old_archive_cmds\" fi fi fi func_execute_cmds "$cmds" 'exit $?' done test -n "$generated" && \ func_show_eval "${RM}r$generated" # Now create the libtool archive. case $output in *.la) old_library= test "$build_old_libs" = yes && old_library="$libname.$libext" func_verbose "creating $output" # Preserve any variables that may affect compiler behavior for var in $variables_saved_for_relink; do if eval test -z \"\${$var+set}\"; then relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else func_quote_for_eval "$var_value" relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" fi done # Quote the link command for shipping. relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` if test "$hardcode_automatic" = yes ; then relink_command= fi # Only create the output if not a dry run. $opt_dry_run || { for installed in no yes; do if test "$installed" = yes; then if test -z "$install_libdir"; then break fi output="$output_objdir/$outputname"i # Replace all uninstalled libtool libraries with the installed ones newdependency_libs= for deplib in $dependency_libs; do case $deplib in *.la) func_basename "$deplib" name="$func_basename_result" func_resolve_sysroot "$deplib" eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` test -z "$libdir" && \ func_fatal_error "\`$deplib' is not a valid libtool archive" func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name" ;; -L*) func_stripname -L '' "$deplib" func_replace_sysroot "$func_stripname_result" func_append newdependency_libs " -L$func_replace_sysroot_result" ;; -R*) func_stripname -R '' "$deplib" func_replace_sysroot "$func_stripname_result" func_append newdependency_libs " -R$func_replace_sysroot_result" ;; *) func_append newdependency_libs " $deplib" ;; esac done dependency_libs="$newdependency_libs" newdlfiles= for lib in $dlfiles; do case $lib in *.la) func_basename "$lib" name="$func_basename_result" eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ func_fatal_error "\`$lib' is not a valid libtool archive" func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" ;; *) func_append newdlfiles " $lib" ;; esac done dlfiles="$newdlfiles" newdlprefiles= for lib in $dlprefiles; do case $lib in *.la) # Only pass preopened files to the pseudo-archive (for # eventual linking with the app. that links it) if we # didn't already link the preopened objects directly into # the library: func_basename "$lib" name="$func_basename_result" eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ func_fatal_error "\`$lib' is not a valid libtool archive" func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" ;; esac done dlprefiles="$newdlprefiles" else newdlfiles= for lib in $dlfiles; do case $lib in [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; *) abs=`pwd`"/$lib" ;; esac func_append newdlfiles " $abs" done dlfiles="$newdlfiles" newdlprefiles= for lib in $dlprefiles; do case $lib in [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; *) abs=`pwd`"/$lib" ;; esac func_append newdlprefiles " $abs" done dlprefiles="$newdlprefiles" fi $RM $output # place dlname in correct position for cygwin # In fact, it would be nice if we could use this code for all target # systems that can't hard-code library paths into their executables # and that have no shared library path variable independent of PATH, # but it turns out we can't easily determine that from inspecting # libtool variables, so we have to hard-code the OSs to which it # applies here; at the moment, that means platforms that use the PE # object format with DLL files. See the long comment at the top of # tests/bindir.at for full details. tdlname=$dlname case $host,$output,$installed,$module,$dlname in *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) # If a -bindir argument was supplied, place the dll there. if test "x$bindir" != x ; then func_relative_path "$install_libdir" "$bindir" tdlname=$func_relative_path_result$dlname else # Otherwise fall back on heuristic. tdlname=../bin/$dlname fi ;; esac $ECHO > $output "\ # $outputname - a libtool library file # Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='$tdlname' # Names of this library. library_names='$library_names' # The name of the static archive. old_library='$old_library' # Linker flags that can not go in dependency_libs. inherited_linker_flags='$new_inherited_linker_flags' # Libraries that this one depends upon. dependency_libs='$dependency_libs' # Names of additional weak libraries provided by this library weak_library_names='$weak_libs' # Version information for $libname. current=$current age=$age revision=$revision # Is this an already installed library? installed=$installed # Should we warn about portability when linking against -modules? shouldnotlink=$module # Files to dlopen/dlpreopen dlopen='$dlfiles' dlpreopen='$dlprefiles' # Directory that this library needs to be installed in: libdir='$install_libdir'" if test "$installed" = no && test "$need_relink" = yes; then $ECHO >> $output "\ relink_command=\"$relink_command\"" fi done } # Do a symbolic link so that the libtool archive can be found in # LD_LIBRARY_PATH before the program is installed. func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' ;; esac exit $EXIT_SUCCESS } { test "$opt_mode" = link || test "$opt_mode" = relink; } && func_mode_link ${1+"$@"} # func_mode_uninstall arg... func_mode_uninstall () { $opt_debug RM="$nonopt" files= rmforce= exit_status=0 # This variable tells wrapper scripts just to set variables rather # than running their programs. libtool_install_magic="$magic" for arg do case $arg in -f) func_append RM " $arg"; rmforce=yes ;; -*) func_append RM " $arg" ;; *) func_append files " $arg" ;; esac done test -z "$RM" && \ func_fatal_help "you must specify an RM program" rmdirs= for file in $files; do func_dirname "$file" "" "." dir="$func_dirname_result" if test "X$dir" = X.; then odir="$objdir" else odir="$dir/$objdir" fi func_basename "$file" name="$func_basename_result" test "$opt_mode" = uninstall && odir="$dir" # Remember odir for removal later, being careful to avoid duplicates if test "$opt_mode" = clean; then case " $rmdirs " in *" $odir "*) ;; *) func_append rmdirs " $odir" ;; esac fi # Don't error if the file doesn't exist and rm -f was used. if { test -L "$file"; } >/dev/null 2>&1 || { test -h "$file"; } >/dev/null 2>&1 || test -f "$file"; then : elif test -d "$file"; then exit_status=1 continue elif test "$rmforce" = yes; then continue fi rmfiles="$file" case $name in *.la) # Possibly a libtool archive, so verify it. if func_lalib_p "$file"; then func_source $dir/$name # Delete the libtool libraries and symlinks. for n in $library_names; do func_append rmfiles " $odir/$n" done test -n "$old_library" && func_append rmfiles " $odir/$old_library" case "$opt_mode" in clean) case " $library_names " in *" $dlname "*) ;; *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;; esac test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i" ;; uninstall) if test -n "$library_names"; then # Do each command in the postuninstall commands. func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' fi if test -n "$old_library"; then # Do each command in the old_postuninstall commands. func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' fi # FIXME: should reinstall the best remaining shared library. ;; esac fi ;; *.lo) # Possibly a libtool object, so verify it. if func_lalib_p "$file"; then # Read the .lo file func_source $dir/$name # Add PIC object to the list of files to remove. if test -n "$pic_object" && test "$pic_object" != none; then func_append rmfiles " $dir/$pic_object" fi # Add non-PIC object to the list of files to remove. if test -n "$non_pic_object" && test "$non_pic_object" != none; then func_append rmfiles " $dir/$non_pic_object" fi fi ;; *) if test "$opt_mode" = clean ; then noexename=$name case $file in *.exe) func_stripname '' '.exe' "$file" file=$func_stripname_result func_stripname '' '.exe' "$name" noexename=$func_stripname_result # $file with .exe has already been added to rmfiles, # add $file without .exe func_append rmfiles " $file" ;; esac # Do a test to see if this is a libtool program. if func_ltwrapper_p "$file"; then if func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" relink_command= func_source $func_ltwrapper_scriptname_result func_append rmfiles " $func_ltwrapper_scriptname_result" else relink_command= func_source $dir/$noexename fi # note $name still contains .exe if it was in $file originally # as does the version of $file that was added into $rmfiles func_append rmfiles " $odir/$name $odir/${name}S.${objext}" if test "$fast_install" = yes && test -n "$relink_command"; then func_append rmfiles " $odir/lt-$name" fi if test "X$noexename" != "X$name" ; then func_append rmfiles " $odir/lt-${noexename}.c" fi fi fi ;; esac func_show_eval "$RM $rmfiles" 'exit_status=1' done # Try to remove the ${objdir}s in the directories where we deleted files for dir in $rmdirs; do if test -d "$dir"; then func_show_eval "rmdir $dir >/dev/null 2>&1" fi done exit $exit_status } { test "$opt_mode" = uninstall || test "$opt_mode" = clean; } && func_mode_uninstall ${1+"$@"} test -z "$opt_mode" && { help="$generic_help" func_fatal_help "you must specify a MODE" } test -z "$exec_cmd" && \ func_fatal_help "invalid operation mode \`$opt_mode'" if test -n "$exec_cmd"; then eval exec "$exec_cmd" exit $EXIT_FAILURE fi exit $exit_status # The TAGs below are defined such that we never get into a situation # in which we disable both kinds of libraries. Given conflicting # choices, we go for a static library, that is the most portable, # since we can't tell whether shared libraries were disabled because # the user asked for that or because the platform doesn't support # them. This is particularly important on AIX, because we don't # support having both static and shared libraries enabled at the same # time on that platform, so we default to a shared-only configuration. # If a disable-shared tag is given, we'll fallback to a static-only # configuration. But we'll never go from static-only to shared-only. # ### BEGIN LIBTOOL TAG CONFIG: disable-shared build_libtool_libs=no build_old_libs=yes # ### END LIBTOOL TAG CONFIG: disable-shared # ### BEGIN LIBTOOL TAG CONFIG: disable-static build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` # ### END LIBTOOL TAG CONFIG: disable-static # Local Variables: # mode:shell-script # sh-indentation:2 # End: # vi:sw=2 gnomint-1.3.0/config.sub0000755000175000017500000010577512672052510012111 00000000000000#! /bin/sh # Configuration validation subroutine script. # Copyright 1992-2014 Free Software Foundation, Inc. timestamp='2014-09-11' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, see . # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that # program. This Exception is an additional permission under section 7 # of the GNU General Public License, version 3 ("GPLv3"). # Please send patches with a ChangeLog entry to config-patches@gnu.org. # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. # If it is invalid, we print an error message on stderr and exit with code 1. # Otherwise, we print the canonical config type on stdout and succeed. # You can get the latest version of this script from: # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD # This file is supposed to be the same for all GNU packages # and recognize all the CPU types, system types and aliases # that are meaningful with *any* GNU software. # Each package is responsible for reporting which valid configurations # it does not support. The user should be able to distinguish # a failure to support a valid configuration from a meaningless # configuration. # The goal of this file is to map all the various variations of a given # machine specification into a single specification in the form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM # or in some cases, the newer four-part form: # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] CPU-MFR-OPSYS $0 [OPTION] ALIAS Canonicalize a configuration name. Operation modes: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.sub ($timestamp) Copyright 1992-2014 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" exit 1 ;; *local*) # First pass through any local machine types. echo $1 exit ;; * ) break ;; esac done case $# in 0) echo "$me: missing argument$help" >&2 exit 1;; 1) ;; *) echo "$me: too many arguments$help" >&2 exit 1;; esac # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ knetbsd*-gnu* | netbsd*-gnu* | \ kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; android-linux) os=-linux-android basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown ;; *) basic_machine=`echo $1 | sed 's/-[^-]*$//'` if [ $basic_machine != $1 ] then os=`echo $1 | sed 's/.*-/-/'` else os=; fi ;; esac ### Let's recognize common machines as not being operating systems so ### that things like config.sub decstation-3100 work. We also ### recognize some manufacturers as not being operating systems, so we ### can provide default operating systems below. case $os in -sun*os*) # Prevent following clause from handling this invalid input. ;; -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -apple | -axis | -knuth | -cray | -microblaze*) os= basic_machine=$1 ;; -bluegene*) os=-cnk ;; -sim | -cisco | -oki | -wec | -winbond) os= basic_machine=$1 ;; -scout) ;; -wrs) os=-vxworks basic_machine=$1 ;; -chorusos*) os=-chorusos basic_machine=$1 ;; -chorusrdb) os=-chorusrdb basic_machine=$1 ;; -hiux*) os=-hiuxwe2 ;; -sco6) os=-sco5v6 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco5) os=-sco3.2v5 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco4) os=-sco3.2v4 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2.[4-9]*) os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2v[4-9]*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco5v6*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco*) os=-sco3.2v2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -udk*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -isc) os=-isc2.2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -clix*) basic_machine=clipper-intergraph ;; -isc*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -lynx*178) os=-lynxos178 ;; -lynx*5) os=-lynxos5 ;; -lynx*) os=-lynxos ;; -ptx*) basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` ;; -windowsnt*) os=`echo $os | sed -e 's/windowsnt/winnt/'` ;; -psos*) os=-psos ;; -mint | -mint[0-9]*) basic_machine=m68k-atari os=-mint ;; esac # Decode aliases for certain CPU-COMPANY combinations. case $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here because they have special meanings below. 1750a | 580 \ | a29k \ | aarch64 | aarch64_be \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arceb \ | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ | avr | avr32 \ | be32 | be64 \ | bfin \ | c4x | c8051 | clipper \ | d10v | d30v | dlx | dsp16xx \ | epiphany \ | fido | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | hexagon \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ | k1om \ | le32 | le64 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ | mips64octeon | mips64octeonel \ | mips64orion | mips64orionel \ | mips64r5900 | mips64r5900el \ | mips64vr | mips64vrel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ | mips64vr5900 | mips64vr5900el \ | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ | mipsisa32r6 | mipsisa32r6el \ | mipsisa64 | mipsisa64el \ | mipsisa64r2 | mipsisa64r2el \ | mipsisa64r6 | mipsisa64r6el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ | mipsr5900 | mipsr5900el \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ | moxie \ | mt \ | msp430 \ | nds32 | nds32le | nds32be \ | nios | nios2 | nios2eb | nios2el \ | ns16k | ns32k \ | open8 | or1k | or1knd | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle \ | pyramid \ | riscv32 | riscv64 \ | rl78 | rx \ | score \ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ | spu \ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ | ubicom32 \ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ | we32k \ | x86 | xc16x | xstormy16 | xtensa \ | z8k | z80) basic_machine=$basic_machine-unknown ;; c54x) basic_machine=tic54x-unknown ;; c55x) basic_machine=tic55x-unknown ;; c6x) basic_machine=tic6x-unknown ;; m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) basic_machine=$basic_machine-unknown os=-none ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) ;; ms1) basic_machine=mt-unknown ;; strongarm | thumb | xscale) basic_machine=arm-unknown ;; xgate) basic_machine=$basic_machine-unknown os=-none ;; xscaleeb) basic_machine=armeb-unknown ;; xscaleel) basic_machine=armel-unknown ;; # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. i*86 | x86_64) basic_machine=$basic_machine-pc ;; # Object if more than one company name word. *-*-*) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; # Recognize the basic CPU types with company name. 580-* \ | a29k-* \ | aarch64-* | aarch64_be-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ | be32-* | be64-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* \ | c8051-* | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | hexagon-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ | k1om-* \ | le32-* | le64-* \ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ | microblaze-* | microblazeel-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ | mips64octeon-* | mips64octeonel-* \ | mips64orion-* | mips64orionel-* \ | mips64r5900-* | mips64r5900el-* \ | mips64vr-* | mips64vrel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ | mips64vr5900-* | mips64vr5900el-* \ | mipsisa32-* | mipsisa32el-* \ | mipsisa32r2-* | mipsisa32r2el-* \ | mipsisa32r6-* | mipsisa32r6el-* \ | mipsisa64-* | mipsisa64el-* \ | mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64r6-* | mipsisa64r6el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipsr5900-* | mipsr5900el-* \ | mipstx39-* | mipstx39el-* \ | mmix-* \ | mt-* \ | msp430-* \ | nds32-* | nds32le-* | nds32be-* \ | nios-* | nios2-* | nios2eb-* | nios2el-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | open8-* \ | or1k*-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ | pyramid-* \ | rl78-* | romp-* | rs6000-* | rx-* \ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ | tahoe-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | tile*-* \ | tron-* \ | ubicom32-* \ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ | z8k-* | z80-*) ;; # Recognize the basic CPU types without company name, with glob match. xtensa*) basic_machine=$basic_machine-unknown ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 386bsd) basic_machine=i386-unknown os=-bsd ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) basic_machine=m68000-att ;; 3b*) basic_machine=we32k-att ;; a29khif) basic_machine=a29k-amd os=-udi ;; abacus) basic_machine=abacus-unknown ;; adobe68k) basic_machine=m68010-adobe os=-scout ;; alliant | fx80) basic_machine=fx80-alliant ;; altos | altos3068) basic_machine=m68k-altos ;; am29k) basic_machine=a29k-none os=-bsd ;; amd64) basic_machine=x86_64-pc ;; amd64-*) basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; amdahl) basic_machine=580-amdahl os=-sysv ;; amiga | amiga-*) basic_machine=m68k-unknown ;; amigaos | amigados) basic_machine=m68k-unknown os=-amigaos ;; amigaunix | amix) basic_machine=m68k-unknown os=-sysv4 ;; apollo68) basic_machine=m68k-apollo os=-sysv ;; apollo68bsd) basic_machine=m68k-apollo os=-bsd ;; aros) basic_machine=i386-pc os=-aros ;; aux) basic_machine=m68k-apple os=-aux ;; balance) basic_machine=ns32k-sequent os=-dynix ;; blackfin) basic_machine=bfin-unknown os=-linux ;; blackfin-*) basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; bluegene*) basic_machine=powerpc-ibm os=-cnk ;; c54x-*) basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` ;; c55x-*) basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` ;; c6x-*) basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` ;; c90) basic_machine=c90-cray os=-unicos ;; cegcc) basic_machine=arm-unknown os=-cegcc ;; convex-c1) basic_machine=c1-convex os=-bsd ;; convex-c2) basic_machine=c2-convex os=-bsd ;; convex-c32) basic_machine=c32-convex os=-bsd ;; convex-c34) basic_machine=c34-convex os=-bsd ;; convex-c38) basic_machine=c38-convex os=-bsd ;; cray | j90) basic_machine=j90-cray os=-unicos ;; craynv) basic_machine=craynv-cray os=-unicosmp ;; cr16 | cr16-*) basic_machine=cr16-unknown os=-elf ;; crds | unos) basic_machine=m68k-crds ;; crisv32 | crisv32-* | etraxfs*) basic_machine=crisv32-axis ;; cris | cris-* | etrax*) basic_machine=cris-axis ;; crx) basic_machine=crx-unknown os=-elf ;; da30 | da30-*) basic_machine=m68k-da30 ;; decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) basic_machine=mips-dec ;; decsystem10* | dec10*) basic_machine=pdp10-dec os=-tops10 ;; decsystem20* | dec20*) basic_machine=pdp10-dec os=-tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) basic_machine=m68k-motorola ;; delta88) basic_machine=m88k-motorola os=-sysv3 ;; dicos) basic_machine=i686-pc os=-dicos ;; djgpp) basic_machine=i586-pc os=-msdosdjgpp ;; dpx20 | dpx20-*) basic_machine=rs6000-bull os=-bosx ;; dpx2* | dpx2*-bull) basic_machine=m68k-bull os=-sysv3 ;; ebmon29k) basic_machine=a29k-amd os=-ebmon ;; elxsi) basic_machine=elxsi-elxsi os=-bsd ;; encore | umax | mmax) basic_machine=ns32k-encore ;; es1800 | OSE68k | ose68k | ose | OSE) basic_machine=m68k-ericsson os=-ose ;; fx2800) basic_machine=i860-alliant ;; genix) basic_machine=ns32k-ns ;; gmicro) basic_machine=tron-gmicro os=-sysv ;; go32) basic_machine=i386-pc os=-go32 ;; h3050r* | hiux*) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; h8300hms) basic_machine=h8300-hitachi os=-hms ;; h8300xray) basic_machine=h8300-hitachi os=-xray ;; h8500hms) basic_machine=h8500-hitachi os=-hms ;; harris) basic_machine=m88k-harris os=-sysv3 ;; hp300-*) basic_machine=m68k-hp ;; hp300bsd) basic_machine=m68k-hp os=-bsd ;; hp300hpux) basic_machine=m68k-hp os=-hpux ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k2[0-9][0-9] | hp9k31[0-9]) basic_machine=m68000-hp ;; hp9k3[2-9][0-9]) basic_machine=m68k-hp ;; hp9k6[0-9][0-9] | hp6[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k7[0-79][0-9] | hp7[0-79][0-9]) basic_machine=hppa1.1-hp ;; hp9k78[0-9] | hp78[0-9]) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[0-9][13679] | hp8[0-9][13679]) basic_machine=hppa1.1-hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) basic_machine=hppa1.0-hp ;; hppa-next) os=-nextstep3 ;; hppaosf) basic_machine=hppa1.1-hp os=-osf ;; hppro) basic_machine=hppa1.1-hp os=-proelf ;; i370-ibm* | ibm*) basic_machine=i370-ibm ;; i*86v32) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv32 ;; i*86v4*) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv4 ;; i*86v) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv ;; i*86sol2) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-solaris2 ;; i386mach) basic_machine=i386-mach os=-mach ;; i386-vsta | vsta) basic_machine=i386-unknown os=-vsta ;; iris | iris4d) basic_machine=mips-sgi case $os in -irix*) ;; *) os=-irix4 ;; esac ;; isi68 | isi) basic_machine=m68k-isi os=-sysv ;; m68knommu) basic_machine=m68k-unknown os=-linux ;; m68knommu-*) basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; m88k-omron*) basic_machine=m88k-omron ;; magnum | m3230) basic_machine=mips-mips os=-sysv ;; merlin) basic_machine=ns32k-utek os=-sysv ;; microblaze*) basic_machine=microblaze-xilinx ;; mingw64) basic_machine=x86_64-pc os=-mingw64 ;; mingw32) basic_machine=i686-pc os=-mingw32 ;; mingw32ce) basic_machine=arm-unknown os=-mingw32ce ;; miniframe) basic_machine=m68000-convergent ;; *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) basic_machine=m68k-atari os=-mint ;; mips3*-*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` ;; mips3*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown ;; monitor) basic_machine=m68k-rom68k os=-coff ;; morphos) basic_machine=powerpc-unknown os=-morphos ;; moxiebox) basic_machine=moxie-unknown os=-moxiebox ;; msdos) basic_machine=i386-pc os=-msdos ;; ms1-*) basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ;; msys) basic_machine=i686-pc os=-msys ;; mvs) basic_machine=i370-ibm os=-mvs ;; nacl) basic_machine=le32-unknown os=-nacl ;; ncr3000) basic_machine=i486-ncr os=-sysv4 ;; netbsd386) basic_machine=i386-unknown os=-netbsd ;; netwinder) basic_machine=armv4l-rebel os=-linux ;; news | news700 | news800 | news900) basic_machine=m68k-sony os=-newsos ;; news1000) basic_machine=m68030-sony os=-newsos ;; news-3600 | risc-news) basic_machine=mips-sony os=-newsos ;; necv70) basic_machine=v70-nec os=-sysv ;; next | m*-next ) basic_machine=m68k-next case $os in -nextstep* ) ;; -ns2*) os=-nextstep2 ;; *) os=-nextstep3 ;; esac ;; nh3000) basic_machine=m68k-harris os=-cxux ;; nh[45]000) basic_machine=m88k-harris os=-cxux ;; nindy960) basic_machine=i960-intel os=-nindy ;; mon960) basic_machine=i960-intel os=-mon960 ;; nonstopux) basic_machine=mips-compaq os=-nonstopux ;; np1) basic_machine=np1-gould ;; neo-tandem) basic_machine=neo-tandem ;; nse-tandem) basic_machine=nse-tandem ;; nsr-tandem) basic_machine=nsr-tandem ;; op50n-* | op60c-*) basic_machine=hppa1.1-oki os=-proelf ;; openrisc | openrisc-*) basic_machine=or32-unknown ;; os400) basic_machine=powerpc-ibm os=-os400 ;; OSE68000 | ose68000) basic_machine=m68000-ericsson os=-ose ;; os68k) basic_machine=m68k-none os=-os68k ;; pa-hitachi) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; paragon) basic_machine=i860-intel os=-osf ;; parisc) basic_machine=hppa-unknown os=-linux ;; parisc-*) basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; pbd) basic_machine=sparc-tti ;; pbb) basic_machine=m68k-tti ;; pc532 | pc532-*) basic_machine=ns32k-pc532 ;; pc98) basic_machine=i386-pc ;; pc98-*) basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium | p5 | k5 | k6 | nexgen | viac3) basic_machine=i586-pc ;; pentiumpro | p6 | 6x86 | athlon | athlon_*) basic_machine=i686-pc ;; pentiumii | pentium2 | pentiumiii | pentium3) basic_machine=i686-pc ;; pentium4) basic_machine=i786-pc ;; pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumpro-* | p6-* | 6x86-* | athlon-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium4-*) basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pn) basic_machine=pn-gould ;; power) basic_machine=power-ibm ;; ppc | ppcbe) basic_machine=powerpc-unknown ;; ppc-* | ppcbe-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppcle | powerpclittle | ppc-le | powerpc-little) basic_machine=powerpcle-unknown ;; ppcle-* | powerpclittle-*) basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64) basic_machine=powerpc64-unknown ;; ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64le | powerpc64little | ppc64-le | powerpc64-little) basic_machine=powerpc64le-unknown ;; ppc64le-* | powerpc64little-*) basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ps2) basic_machine=i386-ibm ;; pw32) basic_machine=i586-unknown os=-pw32 ;; rdos | rdos64) basic_machine=x86_64-pc os=-rdos ;; rdos32) basic_machine=i386-pc os=-rdos ;; rom68k) basic_machine=m68k-rom68k os=-coff ;; rm[46]00) basic_machine=mips-siemens ;; rtpc | rtpc-*) basic_machine=romp-ibm ;; s390 | s390-*) basic_machine=s390-ibm ;; s390x | s390x-*) basic_machine=s390x-ibm ;; sa29200) basic_machine=a29k-amd os=-udi ;; sb1) basic_machine=mipsisa64sb1-unknown ;; sb1el) basic_machine=mipsisa64sb1el-unknown ;; sde) basic_machine=mipsisa32-sde os=-elf ;; sei) basic_machine=mips-sei os=-seiux ;; sequent) basic_machine=i386-sequent ;; sh) basic_machine=sh-hitachi os=-hms ;; sh5el) basic_machine=sh5le-unknown ;; sh64) basic_machine=sh64-unknown ;; sparclite-wrs | simso-wrs) basic_machine=sparclite-wrs os=-vxworks ;; sps7) basic_machine=m68k-bull os=-sysv2 ;; spur) basic_machine=spur-unknown ;; st2000) basic_machine=m68k-tandem ;; stratus) basic_machine=i860-stratus os=-sysv4 ;; strongarm-* | thumb-*) basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` ;; sun2) basic_machine=m68000-sun ;; sun2os3) basic_machine=m68000-sun os=-sunos3 ;; sun2os4) basic_machine=m68000-sun os=-sunos4 ;; sun3os3) basic_machine=m68k-sun os=-sunos3 ;; sun3os4) basic_machine=m68k-sun os=-sunos4 ;; sun4os3) basic_machine=sparc-sun os=-sunos3 ;; sun4os4) basic_machine=sparc-sun os=-sunos4 ;; sun4sol2) basic_machine=sparc-sun os=-solaris2 ;; sun3 | sun3-*) basic_machine=m68k-sun ;; sun4) basic_machine=sparc-sun ;; sun386 | sun386i | roadrunner) basic_machine=i386-sun ;; sv1) basic_machine=sv1-cray os=-unicos ;; symmetry) basic_machine=i386-sequent os=-dynix ;; t3e) basic_machine=alphaev5-cray os=-unicos ;; t90) basic_machine=t90-cray os=-unicos ;; tile*) basic_machine=$basic_machine-unknown os=-linux-gnu ;; tx39) basic_machine=mipstx39-unknown ;; tx39el) basic_machine=mipstx39el-unknown ;; toad1) basic_machine=pdp10-xkl os=-tops20 ;; tower | tower-32) basic_machine=m68k-ncr ;; tpf) basic_machine=s390x-ibm os=-tpf ;; udi29k) basic_machine=a29k-amd os=-udi ;; ultra3) basic_machine=a29k-nyu os=-sym1 ;; v810 | necv810) basic_machine=v810-nec os=-none ;; vaxv) basic_machine=vax-dec os=-sysv ;; vms) basic_machine=vax-dec os=-vms ;; vpp*|vx|vx-*) basic_machine=f301-fujitsu ;; vxworks960) basic_machine=i960-wrs os=-vxworks ;; vxworks68) basic_machine=m68k-wrs os=-vxworks ;; vxworks29k) basic_machine=a29k-wrs os=-vxworks ;; w65*) basic_machine=w65-wdc os=-none ;; w89k-*) basic_machine=hppa1.1-winbond os=-proelf ;; xbox) basic_machine=i686-pc os=-mingw32 ;; xps | xps100) basic_machine=xps100-honeywell ;; xscale-* | xscalee[bl]-*) basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` ;; ymp) basic_machine=ymp-cray os=-unicos ;; z8k-*-coff) basic_machine=z8k-unknown os=-sim ;; z80-*-coff) basic_machine=z80-unknown os=-sim ;; none) basic_machine=none-none os=-none ;; # Here we handle the default manufacturer of certain CPU types. It is in # some cases the only manufacturer, in others, it is the most popular. w89k) basic_machine=hppa1.1-winbond ;; op50n) basic_machine=hppa1.1-oki ;; op60c) basic_machine=hppa1.1-oki ;; romp) basic_machine=romp-ibm ;; mmix) basic_machine=mmix-knuth ;; rs6000) basic_machine=rs6000-ibm ;; vax) basic_machine=vax-dec ;; pdp10) # there are many clones, so DEC is not a safe bet basic_machine=pdp10-unknown ;; pdp11) basic_machine=pdp11-dec ;; we32k) basic_machine=we32k-att ;; sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) basic_machine=sparc-sun ;; cydra) basic_machine=cydra-cydrome ;; orion) basic_machine=orion-highlevel ;; orion105) basic_machine=clipper-highlevel ;; mac | mpw | mac-mpw) basic_machine=m68k-apple ;; pmac | pmac-mpw) basic_machine=powerpc-apple ;; *-unknown) # Make sure to match an already-canonicalized machine name. ;; *) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; esac # Here we canonicalize certain aliases for manufacturers. case $basic_machine in *-digital*) basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` ;; *-commodore*) basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` ;; *) ;; esac # Decode manufacturer-specific aliases for certain operating systems. if [ x"$os" != x"" ] then case $os in # First match some system type aliases # that might get confused with valid system types. # -solaris* is a basic system type, with this one exception. -auroraux) os=-auroraux ;; -solaris1 | -solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` ;; -solaris) os=-solaris2 ;; -svr4*) os=-sysv4 ;; -unixware*) os=-sysv4.2uw ;; -gnu/linux*) os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` ;; # First accept the basic system types. # The portable systems comes first. # Each alternative MUST END IN A *, to match a version number. # -sysv* is not here because it comes later, after sysvr4. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ | -sym* | -kopensolaris* | -plan9* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -aos* | -aros* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ | -bitrig* | -openbsd* | -solidbsd* \ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* | -cegcc* \ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ | -linux-newlib* | -linux-musl* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) case $basic_machine in x86-* | i*86-*) ;; *) os=-nto$os ;; esac ;; -nto-qnx*) ;; -nto*) os=`echo $os | sed -e 's|nto|nto-qnx|'` ;; -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) ;; -mac*) os=`echo $os | sed -e 's|mac|macos|'` ;; -linux-dietlibc) os=-linux-dietlibc ;; -linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; -sunos5*) os=`echo $os | sed -e 's|sunos5|solaris2|'` ;; -sunos6*) os=`echo $os | sed -e 's|sunos6|solaris3|'` ;; -opened*) os=-openedition ;; -os400*) os=-os400 ;; -wince*) os=-wince ;; -osfrose*) os=-osfrose ;; -osf*) os=-osf ;; -utek*) os=-bsd ;; -dynix*) os=-bsd ;; -acis*) os=-aos ;; -atheos*) os=-atheos ;; -syllable*) os=-syllable ;; -386bsd) os=-bsd ;; -ctix* | -uts*) os=-sysv ;; -nova*) os=-rtmk-nova ;; -ns2 ) os=-nextstep2 ;; -nsk*) os=-nsk ;; # Preserve the version number of sinix5. -sinix5.*) os=`echo $os | sed -e 's|sinix|sysv|'` ;; -sinix*) os=-sysv4 ;; -tpf*) os=-tpf ;; -triton*) os=-sysv3 ;; -oss*) os=-sysv3 ;; -svr4) os=-sysv4 ;; -svr3) os=-sysv3 ;; -sysvr4) os=-sysv4 ;; # This must come after -sysvr4. -sysv*) ;; -ose*) os=-ose ;; -es1800*) os=-ose ;; -xenix) os=-xenix ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) os=-mint ;; -aros*) os=-aros ;; -zvmoe) os=-zvmoe ;; -dicos*) os=-dicos ;; -nacl*) ;; -none) ;; *) # Get rid of the `-' at the beginning of $os. os=`echo $os | sed 's/[^-]*-//'` echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 exit 1 ;; esac else # Here we handle the default operating systems that come with various machines. # The value should be what the vendor currently ships out the door with their # machine or put another way, the most popular os provided with the machine. # Note that if you're going to try to match "-MANUFACTURER" here (say, # "-sun"), then you have to tell the case statement up towards the top # that MANUFACTURER isn't an operating system. Otherwise, code above # will signal an error saying that MANUFACTURER isn't an operating # system, and we'll never get to this point. case $basic_machine in score-*) os=-elf ;; spu-*) os=-elf ;; *-acorn) os=-riscix1.2 ;; arm*-rebel) os=-linux ;; arm*-semi) os=-aout ;; c4x-* | tic4x-*) os=-coff ;; c8051-*) os=-elf ;; hexagon-*) os=-elf ;; tic54x-*) os=-coff ;; tic55x-*) os=-coff ;; tic6x-*) os=-coff ;; # This must come before the *-dec entry. pdp10-*) os=-tops20 ;; pdp11-*) os=-none ;; *-dec | vax-*) os=-ultrix4.2 ;; m68*-apollo) os=-domain ;; i386-sun) os=-sunos4.0.2 ;; m68000-sun) os=-sunos3 ;; m68*-cisco) os=-aout ;; mep-*) os=-elf ;; mips*-cisco) os=-elf ;; mips*-*) os=-elf ;; or32-*) os=-coff ;; *-tti) # must be before sparc entry or we get the wrong os. os=-sysv3 ;; sparc-* | *-sun) os=-sunos4.1.1 ;; *-be) os=-beos ;; *-haiku) os=-haiku ;; *-ibm) os=-aix ;; *-knuth) os=-mmixware ;; *-wec) os=-proelf ;; *-winbond) os=-proelf ;; *-oki) os=-proelf ;; *-hp) os=-hpux ;; *-hitachi) os=-hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) os=-sysv ;; *-cbm) os=-amigaos ;; *-dg) os=-dgux ;; *-dolphin) os=-sysv3 ;; m68k-ccur) os=-rtu ;; m88k-omron*) os=-luna ;; *-next ) os=-nextstep ;; *-sequent) os=-ptx ;; *-crds) os=-unos ;; *-ns) os=-genix ;; i370-*) os=-mvs ;; *-next) os=-nextstep3 ;; *-gould) os=-sysv ;; *-highlevel) os=-bsd ;; *-encore) os=-bsd ;; *-sgi) os=-irix ;; *-siemens) os=-sysv4 ;; *-masscomp) os=-rtu ;; f30[01]-fujitsu | f700-fujitsu) os=-uxpv ;; *-rom68k) os=-coff ;; *-*bug) os=-coff ;; *-apple) os=-macos ;; *-atari*) os=-mint ;; *) os=-none ;; esac fi # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. vendor=unknown case $basic_machine in *-unknown) case $os in -riscix*) vendor=acorn ;; -sunos*) vendor=sun ;; -cnk*|-aix*) vendor=ibm ;; -beos*) vendor=be ;; -hpux*) vendor=hp ;; -mpeix*) vendor=hp ;; -hiux*) vendor=hitachi ;; -unos*) vendor=crds ;; -dgux*) vendor=dg ;; -luna*) vendor=omron ;; -genix*) vendor=ns ;; -mvs* | -opened*) vendor=ibm ;; -os400*) vendor=ibm ;; -ptx*) vendor=sequent ;; -tpf*) vendor=ibm ;; -vxsim* | -vxworks* | -windiss*) vendor=wrs ;; -aux*) vendor=apple ;; -hms*) vendor=hitachi ;; -mpw* | -macos*) vendor=apple ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) vendor=atari ;; -vos*) vendor=stratus ;; esac basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; esac echo $basic_machine$os exit # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: gnomint-1.3.0/README0000664000175000017500000000017212672052326010776 00000000000000gnoMint - A Certification Authority Software using GTK libraries. You can get more information at http://gnomint.sf.net gnomint-1.3.0/NEWS0000664000175000017500000000522512672052326010621 00000000000000* Version 0.3.2 (2007.11.03) - FIX: Fixing database upgrading from version 3 (gnoMint 0.1.5 or lower). * Version 0.3.1 (2007.11.01) - FEATURE: now, PKCS#12 structures can be exported, so certificates created in gnoMint can be easily imported in other programs as web browsers, or mail clients. - FEATURE: gnoMint is able to revoke certificates, and generate the corresponding Certificate Revocation Lists (CRLs). - FEATURE: gnoMint license has changed to GNU-GPLv3. - FIX: Fixed a lot of compilation errors in x86-64 architecture. - FIX: Fixing internal serial number in created certificates. * Version 0.1.5 (2007.05.15) - FEATURE: gnoMint can import the public part of Certificate Signing Requests made by other applications as long as they are formatted in PEM or in DER formats. This way, gnoMint now is able to make certificates for remote people or systems that can create their CSRs with other instances of gnoMint or other software. - FEATURE: gnoMint DB format version 3. This version of database format ensures that there won't be two or more CSRs in the database with the same Distinguished Name (DN). - FIX: Now the private key of CSRs can be exported without errors. - FIX: A just created CA has a default policy so it will be able to create useful certificates without change its default properties. - FIX: Some UI bugs are corrected: some label alignments now look OK, and the progress bar again moves while creating certificates or CSRs. * Version 0.1.4 (2007.05.14) - FEATURE: It allows defining policies for each Certification Authorities in the database, so as all the new certificates signed by the CA have common properties (uses, purposes and validity time). - FEATURE: It requires SQLite3, for proper UTF-8 support. Due to this change, all the pre 0.1.4 databases must be converted to a new format. A conversion script is included in the package. * Version 0.1.3 (2006.11.10) - FEATURE: it allows exporting uncrypted private keys (useful for unattended SSL/TLS servers). - FEATURE: it requires a minimum length (8 characters) for private-key export passphrase (so OpenSSL can import this keys) - FIX: checks that passphrase and confirmation are the same in private-key export passphrase - FIX: The focus is grabbed correctly when asking for passphrase, so no mouse action is needed. * Version 0.1.2 (2006.10.15) - FIX: version 0.1.1 couldn't save the certification authority database if the new file and /tmp were in different partitions. * Version 0.1.1 (2006.09.17) - FIX: version 0.1.0 couldn't be compiled on 64-bit architectures due to an type-conversion error * Version 0.1.0 (2006.09.15) - Initial version gnomint-1.3.0/mime/0000775000175000017500000000000012672104243011121 500000000000000gnomint-1.3.0/mime/Makefile.am0000664000175000017500000000027312672052326013103 00000000000000mimedir = $(datadir)/mime/packages mime_in_files = gnomint.xml.in mime_DATA = $(mime_in_files:.xml.in=.xml) @INTLTOOL_XML_RULE@ EXTRA_DIST = $(mime_in_files) CLEANFILES = $(mime_DATA) gnomint-1.3.0/mime/Makefile.in0000664000175000017500000003707612672104235013124 00000000000000# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = mime ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/isc-posix.m4 $(top_srcdir)/m4/libtool.m4 \ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(mimedir)" DATA = $(mime_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOMINTCLI_CFLAGS = @GNOMINTCLI_CFLAGS@ GNOMINTCLI_LIBS = @GNOMINTCLI_LIBS@ GNOMINT_CFLAGS = @GNOMINT_CFLAGS@ GNOMINT_LIBS = @GNOMINT_LIBS@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBGCRYPT_CFLAGS = @LIBGCRYPT_CFLAGS@ LIBGCRYPT_CONFIG = @LIBGCRYPT_CONFIG@ LIBGCRYPT_LIBS = @LIBGCRYPT_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ READLINE_LIBS = @READLINE_LIBS@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ mimedir = $(datadir)/mime/packages mime_in_files = gnomint.xml.in mime_DATA = $(mime_in_files:.xml.in=.xml) EXTRA_DIST = $(mime_in_files) CLEANFILES = $(mime_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign mime/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign mime/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-mimeDATA: $(mime_DATA) @$(NORMAL_INSTALL) @list='$(mime_DATA)'; test -n "$(mimedir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(mimedir)'"; \ $(MKDIR_P) "$(DESTDIR)$(mimedir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(mimedir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(mimedir)" || exit $$?; \ done uninstall-mimeDATA: @$(NORMAL_UNINSTALL) @list='$(mime_DATA)'; test -n "$(mimedir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(mimedir)'; $(am__uninstall_files_from_dir) tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(mimedir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-mimeDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-mimeDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic clean-libtool \ cscopelist-am ctags-am distclean distclean-generic \ distclean-libtool distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-mimeDATA install-pdf install-pdf-am install-ps \ install-ps-am install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ ps ps-am tags-am uninstall uninstall-am uninstall-mimeDATA .PRECIOUS: Makefile @INTLTOOL_XML_RULE@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: gnomint-1.3.0/mime/gnomint.xml.in0000664000175000017500000000056712672052326013657 00000000000000 gnoMint certificate database Base de datos de certificados de gnoMint gnomint-1.3.0/COPYING0000664000175000017500000010451312672052326011155 00000000000000 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . gnomint-1.3.0/intltool-update.in0000664000175000017500000000000012672102304013550 00000000000000gnomint-1.3.0/intltool-extract.in0000664000175000017500000000000012672102304013740 00000000000000gnomint-1.3.0/gui/0000775000175000017500000000000012672104243010756 500000000000000gnomint-1.3.0/gui/gnomint.png0000664000175000017500000001047312672052326013070 00000000000000PNG  IHDR00WbKGD pHYs  tIME +%0IDAThyp]W}?wy$=Ie[ lg)!,$Ф)I'H 4C;-چ2әhg@aδthHB88!;wɶ]oѻ.gJ~Q%qg]o< 9ߵxtLs_V஼;3f$jg=gL0pvF_ubf|lk_.Np'oT.3٫sCݞ1I;޷ }whkJ`x+fgC|?9H@!k#fۇɱ9?XW#ѳ'!l`LJB'(;ohNOƐ.-0o>'Ҍ~!/*srϟT>l{4KJ:՝E"N.*1V+l,Πm l?Kn{> ~^/.k6sa6ϑ|LcT 9\|q9RN~7g>|v'&VH<%{#o?od쬯6o{}a9بE:Hڊ0:r6t$pMǾ^'7X0:@i~(!_by .RT$$-.}j`qp^׽/AYx z4ΩJJrCEbJBɐD,Tpܺ 6y!$B0L7]{?22#\y9O(ly~#570|oZ` y5j{BJ筧-ybC TphO~%Ү&u9 X)P WR [[ɻ{v!8:qKؓ5/Yn|h$NR7}l627,#h 6E^*V&X%03 ^׾6U7궀}t^en#@XW37|)jB܈9hmrLJ딂 1 cMDξ Ma֢UJK0МXp]JB֭u|># 4Pu}t}ؙC2c'r6\t9ˋsln"BJ ~b=huVr9q:y%u )5Bj~>&#b &_zM]W.˗lKo/hhCyMyloC))|ο)+^ޙԨ&nGQ*fC֓sl[W&p:; )~rx^?3 O w'hw1`L礕1850TgC ﺁ4"h\k(Jظ-}x~7~oR{ƋW*y9r=np|6PG Rf$Ʊ y lL)Tg1b(4o9g'.c꙽$6J)ve0\ZOv7ܮ",}[n;%܇7 aGm⊡Jm ..^fn18  " Q46*E_ t2(dj7/PBGE٭˜ɕ씹M7xm;o%rp71 D&ˍ%8!hÒ4-]e]aK r^q]G.;:߲VʅW"m(4O/{X:z$juHB!&j6I(q=;`v5-mRUllvqup &wGˊRr0ClA(ú6Ao|7d1u6QPD*8-5Cl+Lѵ9=N_z#!`OnL5[P*hk71m韏q;eG!I-[1Gg?[@uh:V١@k@K1ChN&^!#vjS%#͹H%A=)m^OCI Di¾c賷lų]UWd̽BiRap:p[ki,j1ɈvDnp=@?wM2Pj<})BEmndΤĊ쭺IH*C}R4 dD-qsnHqx=*%O\aD&)q;|8Ӯ3q]o+B$Rѱk~HEi4.5xB+;5q30ˡDK:E Zu.9T:tw'KJ375þ *k$O,$"Q(E>([v-͓6[hRc!î#s fiHfVu_+_ Jj&+bܺ(%y?;'9R|POyshHWMesr]m@otk_p@y]795Lrָk֘5+R{/IENDB`gnomint-1.3.0/gui/new_crl_dialog.ui0000664000175000017500000001166612672052326014223 00000000000000 5 New CRL - gnoMint center-on-parent gnomint.png dialog False True vertical 11 True 0 0 <big><b>New Certificate Revocation List</b></big> True False False 1 True 0 Please, select the CA for which a Certificate Revocation List is going to be created: False False 2 True True automatic automatic in True True False 3 True end gtk-cancel True True True True False False 0 gtk-ok True False True True True False False 1 False end 0 button22 crl_ok_button gnomint-1.3.0/gui/preferences_dialog.ui0000664000175000017500000000774012672052326015071 00000000000000 5 General Preferences - gnoMint False True center-on-parent gnomint.png dialog False True vertical 2 True True True vertical Automatically export created certificates to Gnome-keyring certificate store True True False True True 0 True Export options False 6 1 True end gtk-ok True True True True False False 0 False end 0 preferences_ok_button gnomint-1.3.0/gui/import_password_dialog.ui0000664000175000017500000001722612672052326016024 00000000000000 Enter password - gnoMint True gnomint.png dialog False True vertical True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 20 vertical True 0 0 The whole selected file, or some of its elements, seems to be cyphered using a password or passphrase. For importing the file into gnoMint database, you must provide an appropiate password. True fill True 40 False False 0 True 0 8 <small><i>The part that is being imported has the description:</i></small> True True right 1 True 0 15 <small><i>#Description#</i></small> True True right 2 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK dialog-password 6 0 True 1 Password: True 1 True True True False True 2 3 1 True end gtk-cancel True True True True False False 0 gtk-ok True True True True False False 1 False end 0 button21 import_password_dialog_ok_button1 gnomint-1.3.0/gui/addca.png0000664000175000017500000000220112672052326012437 00000000000000PNG  IHDRĴl;sRGBbKGD pHYs B(xtIME 1IDAT8˥KlEmvw["JEJ 9 1z!z0&g51r!j|Aj ABI+nۥevx 5Z1_f>2 nzn@-97VLM*\O~zn/wǨR>CD*" dps&Rz.ba.]u Whl?9n4Οe\פb`uZ@-kp8ՊCÈQKm7\XfN$F=ݯYB3HYO6]\;ߦB+^D9GK_#Q&q3y.u,ŋ0 5vCg NӓD(W\\,9DvSݲiLSՖ @x%RtljQ2}i('tXnqGRZ!S0٨ә0BpJcu-?`a3͆H$4VL4s%R@6; >\"jb&,^i˧Ž1=dMLh;s L6m356Juj Ǐ8atwwݽ{d0"mѤĨK\G[ V<ϻG*4Iv&HjCW1v:CkO7nJRtr^aKL&s/gi&kaO;](󧨭ۻd0,p.# CJtR( ]:> =ǦMH&K8ݷ֮R6˘7~+-@0}~:t0Ғw'{_OR僙_IENDB`gnomint-1.3.0/gui/extractpkey.png0000664000175000017500000000213212672052326013751 00000000000000PNG  IHDRĴl;sRGBbKGD pHYs  tIME 8, tEXtCommentMenu-sized icon ========== (c) 2003 Jakub 'jimmac' Steiner, http://jimmac.musichall.cz created with the GIMP, http://www.gimp.orggGBIDAT8˵Qh[Uibc.P۲tb]:Re+8f('eRf( C`v/1^p.Mr>քLs~{` t/W3[%a x^2Q jۍeY3==|VW~Y߻ Ştwwt: \]y\xQEC#_]љ7H$\|RBH]q; >,SF*?5SiJ>pwDH&LLL000@oo/---vMeدrw:pӹ%A}}=\7W9zӲڟm#bl}p\|ё;S(TA1FSǻr떅c5cGx}BDJ;E=yA>kadž |5bk 54M4M>22 =mMLM(8p{/(, M4oVGY=|S/t`d2X?'J)$44MIRJdyyYVWWmrek|Qo{ɺL&f"beeSM4 nw UUUerQm +Z|>(77bWVC}=^CUf)NIENDB`gnomint-1.3.0/gui/new_ca_window.ui0000664000175000017500000011153212672052326014067 00000000000000 2048 1024 5120 1024 1024 240 1 600 1 12 True New CA - gnoMint True center gnomint.png dialog True 8 False False True 6 True True 0 0 <big>CA Subject Properties</big> True False False 0 True 0 0 False False 1 False False 0 True 6 6 2 6 True 0 0 Organization: 3 4 GTK_FILL True 0 0 Organization Unit: 4 5 GTK_FILL True 0 0 Country: 0 GTK_FILL True 0 0 State or Province name: 1 2 GTK_FILL True 0 0 City: 2 3 GTK_FILL True True 1 2 1 2 True True 1 2 2 3 True True 1 2 3 4 True True 1 2 4 5 True 0 0 CA Root Certificate Common Name (CN): 5 6 GTK_FILL True True 1 2 5 6 True 1 2 GTK_FILL 1 True 12 end gtk-help True True True True True False False 0 gtk-cancel True True True True True False False 1 gtk-media-next True False True True True True False False 2 False False 2 False True 0 0 CA properties False True True True 0 0 <big>CA Root certificate properties</big> True False False 0 True 0 0 False False 1 False 0 True 6 3 2 True True True adjustmentMonthsBeforeExpiration True True True if-valid 1 2 2 3 True 0 0 Months before root certificate expiration: 2 3 GTK_FILL True True adjustmentCAKeyLength True True True if-valid 1 2 1 2 True True RSA True True False True True True False False 0 DSA True True False True True rsa_radiobutton False False 1 1 2 GTK_FILL True 0 0 Private key bit length: 1 2 GTK_FILL True 0 0 Private key type: GTK_FILL 1 True 12 end gtk-help True True True True True False False 0 gtk-cancel True True True True True False False 1 gtk-media-previous True True True True True False False 2 gtk-media-next True True True True True False False 3 False 2 1 True 0 0 Root certificate prop 1 False True True True 0 0 <big>CA properties</big> True False False 0 True 0 0 False False 1 False 0 True True 0 CRL Distribution Point: False False 0 True 0 0 <small>Please, in this field enter an URL where the CRL for this CA will be available. You can leave it blank. In this case, no CRL Distribution Point will be set in the CA Certificate, and you will be able to set it as a new CA property. This value will be copied into the certificates generated by this CA. </small> True True 60 False False 1 True True False False 2 1 True 12 end gtk-help True True True True True False False 0 gtk-cancel True True True True True False False 1 gtk-media-previous True True True True True False False 2 gtk-ok True True True True True False False 3 False 2 2 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Password protect 2 False gnomint-1.3.0/gui/addcsr.png0000664000175000017500000000211212672052326012644 00000000000000PNG  IHDRĴl;sRGBbKGD pHYs B(xtIME /NIDAT8˥Oh\U02I&)1h6Xbu"X.J]U"(ٴvRڥ 7B%c"%%60tefӔI&f2=.fuڴw޹;wιWW>Pƴ×/.ԈD"(;e{o>ƶO?V۞(1+o'r9*"HT3('f~Q4x)7P݇6O7 *U]AL 0@؍ "Tn{@4<&1vA<XQ-oUg{4`c#f 4,,j} ^um{]c7~BSa^g'R,//'dQ)Fc*~{^yxbzًAH=zJ~ʕ+?n-:#G8uGXty,{Tx<ν{]**cscsFJ$Gr|IENDB`gnomint-1.3.0/gui/dh_parameters_dialog.ui0000664000175000017500000001364112672052326015403 00000000000000 1024 10240 1024 1024 0 1024 5 New Diffie-Hellman parameters - gnoMint center-on-parent gnomint.png dialog False True vertical 2 True vertical 12 True 0 You are about to create and export a set of Diffie·Hellman parameters into a PKCS#3 structure file. True True 0 True 0 8 <small><i>PKCS#3 files containing Diffie·Hellman parameters are used by some cryptographic applications for a secure interchange of their keys over insecure channels.</i></small> True True 80 1 True 0 Please, enter the prime size, in bits: True True 2 True True AdjustmentDHPrimeSizeSpinButton 3 10 1 True end gtk-cancel True True True True False False 0 gtk-ok True True True True False False 1 False end 0 button19 button18 gnomint-1.3.0/gui/get_db_password_dialog.ui0000664000175000017500000001620312672052326015730 00000000000000 Enter password - gnoMint True gnomint.png dialog False True vertical True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 20 vertical True 0 0 This action requires using one or more private keys saved in the CA database. Please insert the database password. True fill True 40 False False 0 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK dialog-password 6 0 True 1 Password: True 1 True True True False True 2 1 Remember this password during this gnoMint session True True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False 0 True False False 2 1 True end gtk-cancel True True True True False False 0 gtk-ok True True True True False False 1 False end 0 button11 cadb_password_dialog_ok_button gnomint-1.3.0/gui/export_certificate_dialog.ui0000664000175000017500000002537412672052326016456 00000000000000 Export certificate - gnoMint True center True gnomint.png dialog True False True vertical True 8 vertical 8 True 0 0 Please, choose which part of the saved certificate you want to export: True 0 True vertical Only the pu_blic part. True True False True True True 0 True 0 0 24 9 <i>Export only the certificate to a public file, in PEM format.</i> True fill True 1 Only the private key (crypted). True False True False True True publicpart_radiobutton1 2 True 0 0 24 9 <i>Export the saved private key to a PKCS#8 password-protected file. This file should only be accessed by the subject of the certificate.</i> True fill True 3 Only the private key (uncrypted). True True False True True publicpart_radiobutton1 4 True 0 0 24 9 <i>Export the saved private key to a PEM file. This option should only be used for exporting certificates that will be used in unattended servers.</i> True fill True 5 Both parts. True True False True True publicpart_radiobutton1 6 True 0 0 24 9 <i>Export both (private and public) parts to a password-protected PKCS#12 file. This kind of file can be imported by other common programs, such as web or mail clients.</i> True fill True 7 1 1 True end gtk-cancel True True True True False False 0 gtk-ok True True True True False False 1 False end 0 button1 button4 gnomint-1.3.0/gui/get_password_dialog.ui0000664000175000017500000001500112672052326015256 00000000000000 Enter password - gnoMint True gnomint.png dialog False True vertical True 11 vertical True 0 0 Please, enter password True True 0 True 30 2 2 True True False 1 2 1 2 True True False True 1 2 True 0 0 Password (confirm): True 1 2 True 0 0 Password: True 1 1 True end gtk-cancel True True True True False False 0 gtk-ok True False True True True False False 1 False end 0 button10 password_dialog_ok_button gnomint-1.3.0/gui/main_window.ui0000664000175000017500000006664112672052326013571 00000000000000 True gnoMint gnoMint_main center 400 300 gnomint.png True vertical True True _Certificates True _New certificate database True True False _Open certificate database True True False True Open _recents True _Save certificate database as... True True False True gtk-add True True True True _Add self-signed CA True True False Add _Certificate Request True True False Extrac_t private key True False True Extract the saved private key to an external file or device Extract the saved private key to an external file or device True False Revo_ke True False True False _Sign True False True False gtk-delete True False True True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True Generate the current Certificate Revocation List Generate the current Certificate Revocation List Generate _CRL True True True Generate D_H parameters... True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Change database pass_word True True _Import True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True False True False E_xport True True gtk-quit True True True True _Edit True gtk-properties True True True True gtk-preferences True True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK _View True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Certificate _Signing Requests True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK _Revoked Certificates True True True _Help True gtk-about True True True False False 0 True True True Create a new database Create a new database gtk-new False True True True Open an existing database Open an existing database gtk-open False True True False True True True Add an autosigned CA Add an autosigned CA Add autosigned CA certificate addcaimg False True True True Add a new Certificate Signing Request Add a new Certificate Signing Request Add CSR addcsrimg False True True False True True False True Extract the private key of the selected item into a external file Extract the private key of the selected item into a external file Extract Private Key extractpkeyimg False True True False True Revoke the selected certificate Revoke the selected certificate Revoke gtk-cancel False True True False True Sign the selected Certificate Signing Request Sign the selected Certificate Signing Request Sign signimg False True True False True Delete the selected Certificate Signing Request Delete the selected Certificate Signing Request gtk-delete False True False False 1 True True automatic automatic in True True True 2 True addca.png True addcsr.png True sign.png True extractpkey.png gnomint-1.3.0/gui/csr_popup_menu.ui0000664000175000017500000001051312672052326014277 00000000000000 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gtk-properties True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True Shows the CSR properties window Shows the CSR properties window True True True E_xport True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True Exports the CSR so it can be imported by any other application Exports the CSR so it can be imported by any other application True False Extrac_t private key True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True Extracts the private key of the selected certificate from the database to an external file. This file must be provided each time the CSR will be used Extracts the private key of the selected certificate from the database to an external file. This file must be provided each time the CSR will be used True False True _Sign True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True False gtk-delete True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True True gnomint-1.3.0/gui/new_cert_window.ui0000664000175000017500000013262212672052326014444 00000000000000 1 600 1 12 0 1 True New Certificate - gnoMint True center gnomint.png dialog True 8 False False True vertical 6 True 0 0 <big>New Certificate Properties</big> True False False 0 True 0 0 You are about to sign a Certificate Signing Request, and this way, creating a new certificate. Please check the certificate properties. fill True 1 True 16 6 2 10 6 True 0 0 label 1 2 5 6 True 0 0 label 1 2 4 5 True 0 0 label 1 2 3 4 True 0 0 label 1 2 2 3 True 0 0 label 1 2 1 2 True 0 0 label 1 2 True 0 0 Organization: 3 4 GTK_FILL True 0 0 Organization Unit: 4 5 GTK_FILL True 0 0 Country: GTK_FILL True 0 0 State or Province name: 1 2 GTK_FILL True 0 0 City: 2 3 GTK_FILL True 0 0 New certificate Common Name (CN): 5 6 GTK_FILL 2 True 12 end gtk-help True True True True True False False 0 gtk-cancel True True True True True False False 1 gtk-media-next True True True True True False False 2 False False 3 False True 0 0 CA properties False True vertical 6 True 0 0 <big>New Certificate Properties</big> True False False 0 True 0 0 You are about to sign a Certificate Signing Request. Please, choose the Certification Authority you are going to use for signing it. fill True 1 True True automatic automatic in True True False 2 True 12 end gtk-help True True True True True False False 0 gtk-cancel True True True True True False False 1 gtk-media-previous True True True True True False False 2 gtk-media-next True False True True True True False False 3 False False 3 1 True 0 0 Choose CA for signing the CSR 2 False True vertical True 0 0 <big>New Certificate Properties</big> True False False 0 True 8 True 0 0 Months before certificate expiration: 0 True True AdjustmentMonthsBeforeExpirationSpinButton1 1 True 1 False False 1 True True 4 True 10 4 2 Data encipherment True True False True True True 1 2 2 3 Key encipherment True True False True True True 1 2 1 2 Digital signature True True False True True True 1 2 Certification Authority True True False True True Key agreement True True False True True True 3 4 Non repudiation True True False True True 2 3 CRL signing True True False True True 1 2 True 1 2 3 4 True 0 0 <b>Certificate uses</b> True False False 2 True True 4 True 10 4 2 True 0 0 1 2 3 4 OCSP signing True True False True True 1 2 2 3 Any purpose True True False True True 3 4 Time stamping True True False True True 2 3 TLS Web server True True False True True True TLS Web client True True False True True True 1 2 Code signing True True False True True 1 2 Email protection True True False True True True 1 2 1 2 True 0 0 <b>Certificate purposes</b> True 3 True False 10 4 True 12 end gtk-help True True True True True False False 0 gtk-cancel True True True True True False False 1 gtk-media-previous True True True True True False False 2 gtk-ok True True True True True False False 3 False 5 2 True Certificate properties 2 False gnomint-1.3.0/gui/get_pkey_dialog.ui0000664000175000017500000002032112672052326014365 00000000000000 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 5 Choose private key file. gnoMint True center-on-parent gnomint.png dialog False True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK vertical 2 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK vertical 20 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 0 <big>Choose private key file</big> For doing the selected operation, you must provide the file where resides the private key corresponding to the certificate: True True word-char 40 False False 0 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Certificate DN 1 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 0 Please, choose the file: True True word-char 40 False False 2 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False False 3 _Save filename in the database for automatic loading True True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True True False False 4 10 1 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK end gtk-cancel True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True False False 0 gtk-ok True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True False False 1 False 4 end 0 button15 button7 gnomint-1.3.0/gui/creation_process_window.ui0000664000175000017500000001035412672052326016175 00000000000000 True Creating new CA - gnoMint True center gnomint.png dialog True True 0 0 0 True 9 vertical True True 0 0 Creating CA Root Certificate False False 0 True 0 0 False False 1 True True 0 False False 2 gtk-cancel True True True True False False 3 False 1 True 0 0 2 gnomint-1.3.0/gui/gnomint.desktop.in0000664000175000017500000000050012672052326014350 00000000000000[Desktop Entry] _Name=gnoMint X.509 CA Manager GenericName=gnoMint X.509 CA Manager _Comment=Manage X.509 certificates and CAs, easily and graphically Exec=gnomint Terminal=false Type=Application Icon=gnomint Categories=GNOME;Application;System;Security MimeType=application/x-gnomint; StartupNotify=true Encoding=UTF-8 gnomint-1.3.0/gui/import_file_or_directory_dialog.ui0000664000175000017500000001642312672052326017663 00000000000000 5 Import selection - gnoMint center-on-parent gnomint.png dialog False True vertical 2 True 8 vertical 8 True 0 0 Please, choose the more suitable option for what you want to import: True 0 True vertical Import a single file. True True False True True True 0 True 0 0 24 9 <i>Import a single file, encoded in DER or PEM format, containing certificates, private keys (encrypted or plain), signing requests (CSRs), revocation lists (CRLs) or PKCS#12 packages.</i> True True 1 Import a whole directory. True True False True True importfile_radiobutton 2 True 0 0 24 9 <i>Import a directory containing the structure of a whole CA made with OpenSSL .</i> True fill True 3 1 1 True end gtk-cancel True True True True False False 0 gtk-ok True True True True False False 1 False end 0 button24 button23 gnomint-1.3.0/gui/Makefile.am0000664000175000017500000000172712672052326012745 00000000000000desktop_in_files = gnomint.desktop.in desktopdir = $(datadir)/applications desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) @INTLTOOL_DESKTOP_RULE@ deskicondir = $(datadir)/pixmaps deskicon_DATA = gnomint.png gtkbuilderdir = $(datadir)/gnomint gtkbuilder_DATA = \ certificate_popup_menu.ui \ certificate_properties_dialog.ui \ change_password_dialog.ui \ creation_process_window.ui \ csr_popup_menu.ui \ csr_properties_dialog.ui \ dh_parameters_dialog.ui \ export_certificate_dialog.ui \ get_db_password_dialog.ui \ get_password_dialog.ui \ get_pkey_dialog.ui \ import_file_or_directory_dialog.ui \ import_password_dialog.ui \ main_window.ui \ new_ca_window.ui \ new_cert_window.ui \ new_crl_dialog.ui \ new_req_window.ui \ preferences_dialog.ui \ gnomint.png \ key-16.png \ ca-stamp-16.png \ addca.png \ addcsr.png \ extractpkey.png \ sign.png EXTRA_DIST = $(gtkbuilder_DATA) $(deskicon_DATA) $(desktop_in_files) CLEANFILES = $(desktop_DATA) gnomint-1.3.0/gui/ca-stamp-16.png0000664000175000017500000000156512672052326013350 00000000000000PNG  IHDRabKGD pHYs  tIME 0+\?IDAT8˥]h[uMn6ma7BA؛> 듂@CEAZ9?Wnus&&6$Kܛ^_ZC=9ODM\|QxtVɍ?nɡ[z:?] ?y/Mε2A9@v_8~@@ _{p{rƇ|jN/_7Nv1/9ޱQU^^ڨfG8{&<Կ93&yņ9 \JcI@x0nZ}CRl:\7WX$/LDXď9J-,bGܫe얎mO?x ‘Z+˄4^M1{kIZZKU 'Ex5(ӛꕪ`īpǘa 8|h8@-4: S |~S,Az6MD٪VI-g޴b>)3T -nWeŇY-N0Vz -spjub;f&Gt`ԯб]B]b~JHcp>+>h'G5C@V-! 9x}~5_X^Ҁ%'_뿞 *H-6A7ت?|`n  Msp!HɈ+AI_ͽ&`mܰY73?o~*,͖%[,[yԶ! @ЀYZ;`b4IENDB`gnomint-1.3.0/gui/certificate_properties_dialog.ui0000664000175000017500000023651312672062103017322 00000000000000 24 1 8760 24 168 60 1 600 1 12 Certificate properties - gnoMint True center gnomint.png dialog True True True 5 True 5 True 5 5 0 0 <b>This certificate has been verified for the following uses:</b> True 0 False 0 False 1 True 5 17 2 10 True 0 0 MD5FINGERPRINT 1 2 14 15 True 0 0 SHA1FINGERPRINT 1 2 13 14 True 0 0 1 2 12 13 True 0 0 CertExpirationDate 1 2 11 12 True 0 0 CertActivationDate 1 2 10 11 True 0 0 1 2 9 10 True 0 0 CAOU 1 2 8 9 True 0 0 CAO 1 2 7 8 True 0 0 CACN 1 2 6 7 True 0 0 1 2 5 6 True 0 0 CertSN 1 2 4 5 True 0 0 SubjectOU 1 2 3 4 True 0 0 SubjectO 1 2 2 3 True 0 0 SubjectCN 1 2 1 2 True 0 0 1 2 True 0 0 MD5 fingerprint 14 15 GTK_FILL True 0 0 SHA1 fingerprint 13 14 GTK_FILL True 0 1 <b>Fingerprints</b> True 12 13 GTK_FILL 7 True 0 0 Expires on 11 12 GTK_FILL True 0 0 Activated on 10 11 GTK_FILL True 0 1 <b>Validity</b> True 9 10 GTK_FILL 7 True 0 0 Organizational Unit (OU) 8 9 GTK_FILL True 0 0 Organization (O) 7 8 GTK_FILL True 0 0 Common Name (CN) 6 7 GTK_FILL True 0 1 <b>Emmited by</b> True 5 6 GTK_FILL 7 True 0 0 Serial number 4 5 GTK_FILL True 0 0 Organizational Unit (OU) 3 4 GTK_FILL True 0 0 Organization (O) 2 3 GTK_FILL True 0 0 Common Name (CN) 1 2 GTK_FILL True 0 1 <b>Certificate subject</b> True GTK_FILL 7 True 0 0 SHA256FINGERPRINT True char 60 1 2 15 16 True 0 0 SHA256 fingerprint 15 16 GTK_FILL True 0 0 SHA512FINGERPRINT True char 60 1 2 16 17 True 0 0 SHA512 fingerprint 16 17 GTK_FILL 2 True 0 0 General False True 10 5 0 0 <b>Certificate hierarchy</b> True False 0 True automatic automatic in True False False 1 True 0 0 <b>Certificate fields</b> True False 2 True True automatic automatic in True True False 3 1 True 0 0 Details 1 False True True 0 0 5 <small><i> It is recommended that all the certificates generated by a CA share the same properties. If you want to generate certificates with different properties, you should create a hierarchy of CAs, each one with its own policy for certificate generation.</i> </small> Please, define the maximum set of properties for the certificates that this CA will be able to generate: True True False False 0 True 8 True 0 0 Maximum number of months before expiration of the new generated certificates: True 0 True True AdjustmentCertMonthsBeforeExpiration 1 True 1 False False 1 True True 4 True True 8 True 0 Hours between CRL updates: True 0 True True AdjustmentHoursBetweenCRLUpdates 1 True 1 0 True 9 True 0 CRL distribution URL: 0 True True False False 1 1 True <b>CRL Properties</b> True False False 2 True True 4 True 10 5 2 Country True True False True True State or Province name True True False True True 1 2 True must be the same True False True False True country_differ_radiobutton 0 may differ True False True False True True 1 1 2 True must be the same True False True False True state_differ_radiobutton 0 may differ True False True False True True 1 1 2 1 2 City True True False True True 2 3 Organization True True False True True 3 4 Organizational unit True True False True True 4 5 True must be the same True False True False True city_differ_radiobutton 0 may differ True False True False True True 1 1 2 2 3 True must be the same True False True False True organization_differ_radiobutton 0 may differ True False True False True True 1 1 2 3 4 True must be the same True False True False True ou_differ_radiobutton 0 may differ True False True False True True 1 1 2 4 5 True 0 0 <b>Inherited fields from CA subject</b> True False False 3 True True 4 True 10 4 2 Certification Authority True True False True True Non repudiation True True False True True 1 2 Key encipherment True True False True True True 1 2 1 2 Data encipherment True True False True True True 1 2 2 3 Key agreement True True False True True True 3 4 Digital signature True True False True True True 2 3 CRL signing True True False True True 1 2 True 1 2 3 4 True 0 0 <b>Uses of new generated certificates</b> True False False 4 True True 4 True 10 4 2 Email protection True True False True True True 1 2 1 2 Code signing True True False True True 1 2 TLS Web client True True False True True True 1 2 TLS Web server True True False True True True Time stamping True True False True True 2 3 Any purpose True True False True True 3 4 OCSP signing True True False True True 1 2 2 3 True 0 0 1 2 3 4 True 0 0 <b>Purposes of new generated certificates</b> True 5 2 True 0 0 CA Policy 2 False 0 True 10 end gtk-close True True True True False False 0 False end 1 gnomint-1.3.0/gui/Makefile.in0000664000175000017500000004450512672104235012754 00000000000000# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = gui ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/isc-posix.m4 $(top_srcdir)/m4/libtool.m4 \ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(deskicondir)" "$(DESTDIR)$(desktopdir)" \ "$(DESTDIR)$(gtkbuilderdir)" DATA = $(deskicon_DATA) $(desktop_DATA) $(gtkbuilder_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOMINTCLI_CFLAGS = @GNOMINTCLI_CFLAGS@ GNOMINTCLI_LIBS = @GNOMINTCLI_LIBS@ GNOMINT_CFLAGS = @GNOMINT_CFLAGS@ GNOMINT_LIBS = @GNOMINT_LIBS@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBGCRYPT_CFLAGS = @LIBGCRYPT_CFLAGS@ LIBGCRYPT_CONFIG = @LIBGCRYPT_CONFIG@ LIBGCRYPT_LIBS = @LIBGCRYPT_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ READLINE_LIBS = @READLINE_LIBS@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ desktop_in_files = gnomint.desktop.in desktopdir = $(datadir)/applications desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) deskicondir = $(datadir)/pixmaps deskicon_DATA = gnomint.png gtkbuilderdir = $(datadir)/gnomint gtkbuilder_DATA = \ certificate_popup_menu.ui \ certificate_properties_dialog.ui \ change_password_dialog.ui \ creation_process_window.ui \ csr_popup_menu.ui \ csr_properties_dialog.ui \ dh_parameters_dialog.ui \ export_certificate_dialog.ui \ get_db_password_dialog.ui \ get_password_dialog.ui \ get_pkey_dialog.ui \ import_file_or_directory_dialog.ui \ import_password_dialog.ui \ main_window.ui \ new_ca_window.ui \ new_cert_window.ui \ new_crl_dialog.ui \ new_req_window.ui \ preferences_dialog.ui \ gnomint.png \ key-16.png \ ca-stamp-16.png \ addca.png \ addcsr.png \ extractpkey.png \ sign.png EXTRA_DIST = $(gtkbuilder_DATA) $(deskicon_DATA) $(desktop_in_files) CLEANFILES = $(desktop_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign gui/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign gui/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-deskiconDATA: $(deskicon_DATA) @$(NORMAL_INSTALL) @list='$(deskicon_DATA)'; test -n "$(deskicondir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(deskicondir)'"; \ $(MKDIR_P) "$(DESTDIR)$(deskicondir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(deskicondir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(deskicondir)" || exit $$?; \ done uninstall-deskiconDATA: @$(NORMAL_UNINSTALL) @list='$(deskicon_DATA)'; test -n "$(deskicondir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(deskicondir)'; $(am__uninstall_files_from_dir) install-desktopDATA: $(desktop_DATA) @$(NORMAL_INSTALL) @list='$(desktop_DATA)'; test -n "$(desktopdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(desktopdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(desktopdir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(desktopdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(desktopdir)" || exit $$?; \ done uninstall-desktopDATA: @$(NORMAL_UNINSTALL) @list='$(desktop_DATA)'; test -n "$(desktopdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(desktopdir)'; $(am__uninstall_files_from_dir) install-gtkbuilderDATA: $(gtkbuilder_DATA) @$(NORMAL_INSTALL) @list='$(gtkbuilder_DATA)'; test -n "$(gtkbuilderdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(gtkbuilderdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(gtkbuilderdir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(gtkbuilderdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(gtkbuilderdir)" || exit $$?; \ done uninstall-gtkbuilderDATA: @$(NORMAL_UNINSTALL) @list='$(gtkbuilder_DATA)'; test -n "$(gtkbuilderdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(gtkbuilderdir)'; $(am__uninstall_files_from_dir) tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(deskicondir)" "$(DESTDIR)$(desktopdir)" "$(DESTDIR)$(gtkbuilderdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-deskiconDATA install-desktopDATA \ install-gtkbuilderDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-deskiconDATA uninstall-desktopDATA \ uninstall-gtkbuilderDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic clean-libtool \ cscopelist-am ctags-am distclean distclean-generic \ distclean-libtool distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am \ install-deskiconDATA install-desktopDATA install-dvi \ install-dvi-am install-exec install-exec-am \ install-gtkbuilderDATA install-html install-html-am \ install-info install-info-am install-man install-pdf \ install-pdf-am install-ps install-ps-am install-strip \ installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \ uninstall-am uninstall-deskiconDATA uninstall-desktopDATA \ uninstall-gtkbuilderDATA .PRECIOUS: Makefile @INTLTOOL_DESKTOP_RULE@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: gnomint-1.3.0/gui/sign.png0000664000175000017500000000240312672052326012347 00000000000000PNG  IHDRĴl;sRGBbKGD pHYs  tIME 3=tEXtCommentMenu-sized icon ========== (c) 2003 Jakub 'jimmac' Steiner, http://jimmac.musichall.cz created with the GIMP, http://www.gimp.orggGIDAT8˵MH[tF '*c2L$& ]2EF ںnoMJ &mS&831sVtS99(w 'Ǐز,eZޱBMdmme4nO ˅id2'Q^^ӧ)++A޽MaӧO ޾}˹sF444<}tZa {zzX,F}}=Oim˗rmG٬lmm1::JII `@Xq0,ܸqCnl_t277'y$@HOOPPeii.sl)Ih PD"!|c3!F'5MUeY8p 4fXd6 ]ebbB={m5Jɓ') S(bض'DHRĉ\.vvvz\rL&ܻw!N'`(۶zt:oߏkFyy9eۣGdrr0y&˴ r{NjkkթS| ].eaA/^TKKKL&Y]][Kii)W^Us8x<IR srۄanݺ677QÁU޼yC&A)穫SC677!+**daa5666|v…#fh4J:X,ov40@IENDB`gnomint-1.3.0/gui/csr_properties_dialog.ui0000664000175000017500000002716412672052326015635 00000000000000 CSR properties - gnoMint True center gnomint.png dialog True True vertical True 5 False False True 5 vertical True 5 vertical 5 True 0 0 <b>This Certificate Signing Request has its corresponding private key saved in the internal database.</b> True True 0 False 0 True False 1 True 5 4 2 10 True 0 0 SubjectOU 1 2 3 4 True 0 0 SubjectO 1 2 2 3 True 0 0 SubjectCN 1 2 1 2 True 0 0 1 2 True 0 0 Organizational Unit (OU) 3 4 GTK_FILL True 0 0 Organization (O) 2 3 GTK_FILL True 0 0 Common Name (CN) 1 2 GTK_FILL True 0 1 <b>CSR subject</b> True GTK_FILL 7 False 2 False True 0 0 General False True 0 0 Details 1 False 0 True 10 end gtk-close True True True True False False 0 end 1 gnomint-1.3.0/gui/change_password_dialog.ui0000664000175000017500000002744512672052326015743 00000000000000 GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 5 Database password protection - gnoMint center-on-parent gnomint.png dialog False True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK vertical 2 True 20 4 2 10 10 True True _Yes True True False True True True False False 0 _No True True False True True ca_changepwd_pwd_protect_yes_radiobutton False False 1 1 2 GTK_FILL True 0 0 Protect CA database private keys with password: True GTK_FILL True 0 Enter new password again for confirmation: True word-char 3 4 GTK_FILL True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False 1 2 3 4 True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False 1 2 2 3 True 0 Please, enter new password: True 2 3 GTK_FILL True 0 0 Please, enter current password: True 1 2 GTK_FILL 15 True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False 1 2 1 2 1 True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK end gtk-cancel True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True False False 0 gtk-ok True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True False False 1 False end 0 ca_changepwd_cancel_button ca_changepwd_commit_button gnomint-1.3.0/gui/new_req_window.ui0000664000175000017500000010711612672052326014276 00000000000000 2048 1024 5120 1024 True New certificate request - gnoMint True center gnomint.png dialog True 8 False False True 7 True True 0 0 <big>Certificate Request Properties</big> True False False 0 True 0 0 False False 1 False 0 True 0 <small>The subject of the new certificate request can inherit information from one of the existing Certification Authorities. This is a must if the policy of the CA you are going to use is defined to force some fields of a certificate subject to be the same as the ones in the CA cert subject.</small> True True 1 Don't inherit any fields from existing Certification Authorities True True False True True 2 Inherit fields according to selected Certification Authority and its policy. True True False True dont_inherit_radiobutton 3 True True automatic automatic in True True False True 4 True 12 end gtk-help True True True True True False False 0 gtk-cancel True True True True True False False 1 gtk-media-next True True True True True False False 2 False 5 True 0 0 CA properties False True 6 True True 0 0 <big>Certificate Request Properties</big> True False False 0 True 0 0 False False 1 False False 0 True 6 6 2 6 True 1 2 GTK_FILL True True 1 2 5 6 True 0 0 Certificate Common Name (CN): 5 6 GTK_FILL True True 1 2 4 5 True True 1 2 3 4 True True 1 2 2 3 True True 1 2 1 2 True 0 0 City: 2 3 GTK_FILL True 0 0 State or Province name: 1 2 GTK_FILL True 0 0 Country: GTK_FILL True 0 0 Organization Unit: 4 5 GTK_FILL True 0 0 Organization: 3 4 GTK_FILL 1 True 12 end gtk-help True True True True True False False 0 gtk-cancel True True True True True False False 1 gtk-media-previous True True True True True False False 2 gtk-media-next True False True True True True False False 3 False False 2 1 True 0 0 Root certificate prop 1 False True True True 0 0 <big>Certificate Request Properties</big> True False False 0 True 0 0 False False 1 False 0 True 6 2 2 True True True False 5 AdjustmentKeyLengthSpinButton1 1024 True True if-valid 1 2 1 2 True True RSA True True False True True True dsa_radiobutton1 False False 0 DSA True True False True True rsa_radiobutton1 False False 1 1 2 GTK_FILL True 0 0 Private key bit length: 1 2 GTK_FILL True 0 0 Private key type: GTK_FILL 1 True 12 end gtk-help True True True True True False False 0 gtk-cancel True True True True True False False 1 gtk-media-previous True True True True True False False 2 gtk-ok True True True True True False False 3 False 2 2 True page 3 2 False gnomint-1.3.0/gui/key-16.png0000664000175000017500000000103112672052326012417 00000000000000PNG  IHDRabKGD pHYs  tIME1Y͏tEXtCommentMenu-sized icon ========== (c) 2003 Jakub 'jimmac' Steiner, http://jimmac.musichall.cz created with the GIMP, http://www.gimp.orggGIDATxڽRj<(Ohvq*&Y:u!n:etuY\] -$xxw8FxG{ϓį/lrMqSDh6,]n n 6KVUEq87?0neI<"rq{p4Mm Vg$Ѷ-9t]Gu}n True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gtk-properties True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True Shows the certificate properties window Shows the certificate properties window True True True E_xport True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True Exports the certificate so it can be imported by any other application Exports the certificate so it can be imported by any other application True False Extrac_t private key True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True Extracts the private key of the selected certificate from the database to an external file. This file must be provided each time the certificate will be used Extracts the private key of the selected certificate from the database to an external file. This file must be provided each time the certificate will be used True False True Revo_ke True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True Revokes the selected certificate Revokes the selected certificate True False gnomint-1.3.0/configure.ac0000664000175000017500000001272312672101427012406 00000000000000AC_PREREQ([2.64]) AC_INIT(gnoMint, [1.3.0], [], gnomint) PACKAGE_COPYRIGHT="(c) 2006-2016 David Marín Carreño " PACKAGE_WEBSITE="http://gnomint.sourceforge.net" PACKAGE_AUTHORS=$(cat AUTHORS | tr '\n' ',' | sed 's/,/\\n/g') AC_DEFINE_UNQUOTED(PACKAGE_COPYRIGHT, "$PACKAGE_COPYRIGHT") AC_DEFINE_UNQUOTED(PACKAGE_WEBSITE, "$PACKAGE_WEBSITE") AC_DEFINE_UNQUOTED(PACKAGE_AUTHORS, "$PACKAGE_AUTHORS") AM_INIT_AUTOMAKE([1.12 foreign]) AC_CONFIG_MACRO_DIR([m4]) dnl Put the ACLOCAL flags in the Makefile AC_SUBST([ACLOCAL_AMFLAGS], ["-I $ac_macro_dir \${ACLOCAL_FLAGS}"]) dnl Initialize maintainer mode AM_MAINTAINER_MODE([enable]) AM_SILENT_RULES([yes]) # Check for programs AC_ISC_POSIX AC_PROG_CC AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_MAKE_SET AC_DISABLE_STATIC AM_PROG_LIBTOOL AM_PROG_CC_C_O # Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS([libintl.h locale.h stdlib.h string.h]) # Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_C_INLINE AC_TYPE_SIZE_T AC_STRUCT_TM AC_C_VOLATILE # Checks for library functions. AC_FUNC_MALLOC AC_FUNC_MKTIME AC_FUNC_STRFTIME AC_CHECK_FUNCS([memset strcasecmp strdup]) # gettext stuff GETTEXT_PACKAGE=${PACKAGE} AC_SUBST(GETTEXT_PACKAGE) AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE") AC_DEFINE_UNQUOTED(BONOBO_EXPLICIT_TRANSLATION_DOMAIN, "$GETTEXT_PACKAGE") ALL_LINGUAS="ca cs de es fi fr it pt_BR oc ru sk sv" AM_GLIB_GNU_GETTEXT AM_GLIB_DEFINE_LOCALEDIR(PACKAGE_LOCALE_DIR) AC_PROG_INTLTOOL([0.23]) # required versions GNUTLS_REQUIRED=2.0 GNUTLS_ADVANCED_FEATURES_MINIMUM_VERSION=2.7.4 SQLITE_REQUIRED=3.0 GLIB_REQUIRED=2.6.0 GCONF_REQUIRED=2.0 GTK_REQUIRED=2.12.0 ISO_CODES_REQUIRED=0.35 # check for sqlite PKG_CHECK_MODULES(SQLITE, sqlite3 >= $SQLITE_REQUIRED) AC_SUBST(SQLITE_CFLAGS) AC_SUBST(SQLITE_LIBS) # check for libgcrypt gcrypt=0 AM_PATH_LIBGCRYPT(1.2.0, gcrypt=1) if test $gcrypt = 0 then AC_MSG_ERROR([gnoMint needs libgcrypt]) fi PKG_CHECK_MODULES(GNOMINT, glib-2.0 >= $GLIB_REQUIRED \ gthread-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gtk+-2.0 >= $GTK_REQUIRED \ gdk-pixbuf-2.0 \ gnutls >= $GNUTLS_REQUIRED \ ) AC_SUBST(GNOMINT_CFLAGS) AC_SUBST(GNOMINT_LIBS) ####################### # Check for readline. ######################## AC_CHECK_HEADER(readline/readline.h, readline_found=true, [AC_MSG_ERROR([libreadline is needed for compiling gnoMint.])] ) old_LIBS=$LIBS LIBS="-lreadline" AC_TRY_LINK(,,[ READLINE_LIBS="-lreadline" ],[ LIBS="$LIBS -ltermcap" AC_TRY_LINK(,,[ READLINE_LIBS="-lreadline -ltermcap" ],[ AC_MSG_ERROR([Cannot figure out how to link with the readline library; see config.log for more information]) ]) ]) LIBS=$old_LIBS AC_SUBST(READLINE_LIBS) PKG_CHECK_MODULES(GNOMINTCLI, glib-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gnutls >= $GNUTLS_REQUIRED \ ) AC_SUBST(GNOMINTCLI_CFLAGS) AC_SUBST(GNOMINTCLI_LIBS) dnl Check gnutls version dnl (if >= GNUTLS_ADVANCED_FEATURES_MINIMUM_VERSION it enables some extra characteristics and functionalities) AC_MSG_CHECKING([whether gnutls >= $GNUTLS_ADVANCED_FEATURES_MINIMUM_VERSION (for advanced features)]) PKG_CHECK_EXISTS([gnutls >= $GNUTLS_ADVANCED_FEATURES_MINIMUM_VERSION], [have_advanced_gnutls=yes],[have_advanced_gnutls=no]) if test "x$have_advanced_gnutls" = "xyes"; then AC_DEFINE_UNQUOTED(ADVANCED_GNUTLS, "yes") AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) fi dnl Check iso-codes dnl (just a chek for packagers, it is required for l10n at runtime) PKG_CHECK_EXISTS([iso-codes >= $ISO_CODES_REQUIRED], [have_iso_codes=yes],[have_iso_codes=no]) if test "x$have_iso_codes" = "xyes"; then AC_MSG_CHECKING([whether iso-codes has iso-639 and iso-3166 domains]) if $PKG_CONFIG --variable=domains iso-codes | grep 639 > /dev/null && \ $PKG_CONFIG --variable=domains iso-codes | grep 3166 > /dev/null ; then result=yes else result=no have_iso_codes=no fi AC_MSG_RESULT([$result]) fi dnl glib-genmarshal GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0` AC_SUBST(GLIB_GENMARSHAL) dnl The following conditional is set in AM_GCONF_SOURCE_2. dnl Because we may skip its execution, we have to set a default here. m4_pattern_allow([^AM_GCONF_SOURCE_2$]) AM_CONDITIONAL([GCONF_SCHEMAS_INSTALL], [false]) GCONFTOOL="" AC_CHECK_PROG(GCONFTOOL, gconftool-2, gconftool-2) if test x"$GCONFTOOL" = x; then AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf]) fi AM_GCONF_SOURCE_2 dnl dnl Check if src should be build with the debug mode dnl AC_ARG_ENABLE(debug, [ --enable-debug debug [default=no]], use_debug="Yes"; AC_DEFINE(debug), use_debug="No") dnl dnl Check if src should be build with the debug_signals mode dnl AC_ARG_ENABLE(debug-signal, [ --enable-debug-signal debug signals sent [default=no]], use_debug_sig="Yes"; AC_DEFINE(debug_signal), use_debug_sig="No") dnl dnl if test "x$GCC" = "xyes"; then CFLAGS="-Wall -Werror " if test "x$use_debug" = "xYes"; then CFLAGS="$CFLAGS -g -O0" fi fi AC_SUBST(CFLAGS) AC_SUBST(CPPFLAGS) AC_SUBST(LDFLAGS) AC_OUTPUT([ Makefile src/Makefile m4/Makefile gui/Makefile po/Makefile.in mime/Makefile gconf/Makefile gnomint.spec ]) dnl dnl Print a little note dnl echo " Configure summary: Source code location .......: ${srcdir} Compiler ...................: ${CC} Compiler flags .............: ${CFLAGS} Installing into prefix .....: ${prefix} ALL_LINGUAS ................: ${ALL_LINGUAS} Type make to build ${PACKAGE_STRING} " gnomint-1.3.0/depcomp0000755000175000017500000005601612672052510011474 00000000000000#! /bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2013-05-30.07; # UTC # Copyright (C) 1999-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Alexandre Oliva . case $1 in '') echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: depcomp [--help] [--version] PROGRAM [ARGS] Run PROGRAMS ARGS to compile a file, generating dependencies as side-effects. Environment variables: depmode Dependency tracking mode. source Source file read by 'PROGRAMS ARGS'. object Object file output by 'PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. tmpdepfile Temporary file to use when outputting dependencies. libtool Whether libtool is used (yes/no). Report bugs to . EOF exit $? ;; -v | --v*) echo "depcomp $scriptversion" exit $? ;; esac # Get the directory component of the given path, and save it in the # global variables '$dir'. Note that this directory component will # be either empty or ending with a '/' character. This is deliberate. set_dir_from () { case $1 in */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;; *) dir=;; esac } # Get the suffix-stripped basename of the given path, and save it the # global variable '$base'. set_base_from () { base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'` } # If no dependency file was actually created by the compiler invocation, # we still have to create a dummy depfile, to avoid errors with the # Makefile "include basename.Plo" scheme. make_dummy_depfile () { echo "#dummy" > "$depfile" } # Factor out some common post-processing of the generated depfile. # Requires the auxiliary global variable '$tmpdepfile' to be set. aix_post_process_depfile () { # If the compiler actually managed to produce a dependency file, # post-process it. if test -f "$tmpdepfile"; then # Each line is of the form 'foo.o: dependency.h'. # Do two passes, one to just change these to # $object: dependency.h # and one to simply output # dependency.h: # which is needed to avoid the deleted-header problem. { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile" sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile" } > "$depfile" rm -f "$tmpdepfile" else make_dummy_depfile fi } # A tabulation character. tab=' ' # A newline character. nl=' ' # Character ranges might be problematic outside the C locale. # These definitions help. upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ lower=abcdefghijklmnopqrstuvwxyz digits=0123456789 alpha=${upper}${lower} if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 fi # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. depfile=${depfile-`echo "$object" | sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} rm -f "$tmpdepfile" # Avoid interferences from the environment. gccflag= dashmflag= # Some modes work just like other modes, but use different flags. We # parameterize here, but still list the modes in the big case below, # to make depend.m4 easier to write. Note that we *cannot* use a case # here, because this file can only contain one case statement. if test "$depmode" = hp; then # HP compiler uses -M and no extra arg. gccflag=-M depmode=gcc fi if test "$depmode" = dashXmstdout; then # This is just like dashmstdout with a different argument. dashmflag=-xM depmode=dashmstdout fi cygpath_u="cygpath -u -f -" if test "$depmode" = msvcmsys; then # This is just like msvisualcpp but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 cygpath_u='sed s,\\\\,/,g' depmode=msvisualcpp fi if test "$depmode" = msvc7msys; then # This is just like msvc7 but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 cygpath_u='sed s,\\\\,/,g' depmode=msvc7 fi if test "$depmode" = xlc; then # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information. gccflag=-qmakedep=gcc,-MF depmode=gcc fi case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what ## we want. Yay! Note: for some reason libtool 1.4 doesn't like ## it if -MD -MP comes after the -MF stuff. Hmm. ## Unfortunately, FreeBSD c89 acceptance of flags depends upon ## the command line argument order; so add the flags where they ## appear in depend2.am. Note that the slowdown incurred here ## affects only configure: in makefiles, %FASTDEP% shortcuts this. for arg do case $arg in -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; *) set fnord "$@" "$arg" ;; esac shift # fnord shift # $arg done "$@" stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi mv "$tmpdepfile" "$depfile" ;; gcc) ## Note that this doesn't just cater to obsosete pre-3.x GCC compilers. ## but also to in-use compilers like IMB xlc/xlC and the HP C compiler. ## (see the conditional assignment to $gccflag above). ## There are various ways to get dependency output from gcc. Here's ## why we pick this rather obscure method: ## - Don't want to use -MD because we'd like the dependencies to end ## up in a subdir. Having to rename by hand is ugly. ## (We might end up doing this anyway to support other compilers.) ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like ## -MM, not -M (despite what the docs say). Also, it might not be ## supported by the other compilers which use the 'gcc' depmode. ## - Using -M directly means running the compiler twice (even worse ## than renaming). if test -z "$gccflag"; then gccflag=-MD, fi "$@" -Wp,"$gccflag$tmpdepfile" stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" # The second -e expression handles DOS-style file names with drive # letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" ## This next piece of magic avoids the "deleted header file" problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. ## Some versions of gcc put a space before the ':'. On the theory ## that the space means something, we add a space to the output as ## well. hp depmode also adds that space, but also prefixes the VPATH ## to the object. Take care to not repeat it in the output. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; sgi) if test "$libtool" = yes; then "$@" "-Wp,-MDupdate,$tmpdepfile" else "$@" -MDupdate "$tmpdepfile" fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files echo "$object : \\" > "$depfile" # Clip off the initial element (the dependent). Don't try to be # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; # the IRIX cc adds comments like '#:fec' to the end of the # dependency line. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \ | tr "$nl" ' ' >> "$depfile" echo >> "$depfile" # The second pass generates a dummy entry for each header file. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> "$depfile" else make_dummy_depfile fi rm -f "$tmpdepfile" ;; xlc) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the # current directory. Also, the AIX compiler puts '$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. set_dir_from "$object" set_base_from "$object" if test "$libtool" = yes; then tmpdepfile1=$dir$base.u tmpdepfile2=$base.u tmpdepfile3=$dir.libs/$base.u "$@" -Wc,-M else tmpdepfile1=$dir$base.u tmpdepfile2=$dir$base.u tmpdepfile3=$dir$base.u "$@" -M fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" do test -f "$tmpdepfile" && break done aix_post_process_depfile ;; tcc) # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26 # FIXME: That version still under development at the moment of writing. # Make that this statement remains true also for stable, released # versions. # It will wrap lines (doesn't matter whether long or short) with a # trailing '\', as in: # # foo.o : \ # foo.c \ # foo.h \ # # It will put a trailing '\' even on the last line, and will use leading # spaces rather than leading tabs (at least since its commit 0394caf7 # "Emit spaces for -MD"). "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'. # We have to change lines of the first kind to '$object: \'. sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile" # And for each line of the second kind, we have to emit a 'dep.h:' # dummy dependency, to avoid the deleted-header problem. sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile" rm -f "$tmpdepfile" ;; ## The order of this option in the case statement is important, since the ## shell code in configure will try each of these formats in the order ## listed in this file. A plain '-MD' option would be understood by many ## compilers, so we must ensure this comes after the gcc and icc options. pgcc) # Portland's C compiler understands '-MD'. # Will always output deps to 'file.d' where file is the root name of the # source file under compilation, even if file resides in a subdirectory. # The object file name does not affect the name of the '.d' file. # pgcc 10.2 will output # foo.o: sub/foo.c sub/foo.h # and will wrap long lines using '\' : # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... set_dir_from "$object" # Use the source, not the object, to determine the base name, since # that's sadly what pgcc will do too. set_base_from "$source" tmpdepfile=$base.d # For projects that build the same source file twice into different object # files, the pgcc approach of using the *source* file root name can cause # problems in parallel builds. Use a locking strategy to avoid stomping on # the same $tmpdepfile. lockdir=$base.d-lock trap " echo '$0: caught signal, cleaning up...' >&2 rmdir '$lockdir' exit 1 " 1 2 13 15 numtries=100 i=$numtries while test $i -gt 0; do # mkdir is a portable test-and-set. if mkdir "$lockdir" 2>/dev/null; then # This process acquired the lock. "$@" -MD stat=$? # Release the lock. rmdir "$lockdir" break else # If the lock is being held by a different process, wait # until the winning process is done or we timeout. while test -d "$lockdir" && test $i -gt 0; do sleep 1 i=`expr $i - 1` done fi i=`expr $i - 1` done trap - 1 2 13 15 if test $i -le 0; then echo "$0: failed to acquire lock after $numtries attempts" >&2 echo "$0: check lockdir '$lockdir'" >&2 exit 1 fi if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each line is of the form `foo.o: dependent.h', # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this invocation # correctly. Breaking it into two sed invocations is a workaround. sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp2) # The "hp" stanza above does not work with aCC (C++) and HP's ia64 # compilers, which have integrated preprocessors. The correct option # to use with these is +Maked; it writes dependencies to a file named # 'foo.d', which lands next to the object file, wherever that # happens to be. # Much of this is similar to the tru64 case; see comments there. set_dir_from "$object" set_base_from "$object" if test "$libtool" = yes; then tmpdepfile1=$dir$base.d tmpdepfile2=$dir.libs/$base.d "$@" -Wc,+Maked else tmpdepfile1=$dir$base.d tmpdepfile2=$dir$base.d "$@" +Maked fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile1" "$tmpdepfile2" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile" # Add 'dependent.h:' lines. sed -ne '2,${ s/^ *// s/ \\*$// s/$/:/ p }' "$tmpdepfile" >> "$depfile" else make_dummy_depfile fi rm -f "$tmpdepfile" "$tmpdepfile2" ;; tru64) # The Tru64 compiler uses -MD to generate dependencies as a side # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put # dependencies in 'foo.d' instead, so we check for that too. # Subdirectories are respected. set_dir_from "$object" set_base_from "$object" if test "$libtool" = yes; then # Libtool generates 2 separate objects for the 2 libraries. These # two compilations output dependencies in $dir.libs/$base.o.d and # in $dir$base.o.d. We have to check for both files, because # one of the two compilations can be disabled. We should prefer # $dir$base.o.d over $dir.libs/$base.o.d because the latter is # automatically cleaned when .libs/ is deleted, while ignoring # the former would cause a distcleancheck panic. tmpdepfile1=$dir$base.o.d # libtool 1.5 tmpdepfile2=$dir.libs/$base.o.d # Likewise. tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504 "$@" -Wc,-MD else tmpdepfile1=$dir$base.d tmpdepfile2=$dir$base.d tmpdepfile3=$dir$base.d "$@" -MD fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" do test -f "$tmpdepfile" && break done # Same post-processing that is required for AIX mode. aix_post_process_depfile ;; msvc7) if test "$libtool" = yes; then showIncludes=-Wc,-showIncludes else showIncludes=-showIncludes fi "$@" $showIncludes > "$tmpdepfile" stat=$? grep -v '^Note: including file: ' "$tmpdepfile" if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" # The first sed program below extracts the file names and escapes # backslashes for cygpath. The second sed program outputs the file # name when reading, but also accumulates all include files in the # hold buffer in order to output them again at the end. This only # works with sed implementations that can handle large buffers. sed < "$tmpdepfile" -n ' /^Note: including file: *\(.*\)/ { s//\1/ s/\\/\\\\/g p }' | $cygpath_u | sort -u | sed -n ' s/ /\\ /g s/\(.*\)/'"$tab"'\1 \\/p s/.\(.*\) \\/\1:/ H $ { s/.*/'"$tab"'/ G p }' >> "$depfile" echo >> "$depfile" # make sure the fragment doesn't end with a backslash rm -f "$tmpdepfile" ;; msvc7msys) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. dashmstdout) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # Remove '-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done test -z "$dashmflag" && dashmflag=-M # Require at least two characters before searching for ':' # in the target name. This is to cope with DOS-style filenames: # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise. "$@" $dashmflag | sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this sed invocation # correctly. Breaking it into two sed invocations is a workaround. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; dashXmstdout) # This case only exists to satisfy depend.m4. It is never actually # run, as this mode is specially recognized in the preamble. exit 1 ;; makedepend) "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # X makedepend shift cleared=no eat=no for arg do case $cleared in no) set ""; shift cleared=yes ;; esac if test $eat = yes; then eat=no continue fi case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. -arch) eat=yes ;; -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done obj_suffix=`echo "$object" | sed 's/^.*\././'` touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" # makedepend may prepend the VPATH from the source file name to the object. # No need to regex-escape $object, excess matching of '.' is harmless. sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process the last invocation # correctly. Breaking it into two sed invocations is a workaround. sed '1,2d' "$tmpdepfile" \ | tr ' ' "$nl" \ | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" "$tmpdepfile".bak ;; cpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # Remove '-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done "$@" -E \ | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ | sed '$ s: \\$::' > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" cat < "$tmpdepfile" >> "$depfile" sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; msvisualcpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi IFS=" " for arg do case "$arg" in -o) shift ;; $object) shift ;; "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift shift ;; *) set fnord "$@" "$arg" shift shift ;; esac done "$@" -E 2>/dev/null | sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile" echo "$tab" >> "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; msvcmsys) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; none) exec "$@" ;; *) echo "Unknown depmode $depmode" 1>&2 exit 1 ;; esac exit 0 # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: gnomint-1.3.0/config.guess0000755000175000017500000012355012672052510012435 00000000000000#! /bin/sh # Attempt to guess a canonical system name. # Copyright 1992-2014 Free Software Foundation, Inc. timestamp='2014-03-23' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, see . # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that # program. This Exception is an additional permission under section 7 # of the GNU General Public License, version 3 ("GPLv3"). # # Originally written by Per Bothner. # # You can get the latest version of this script from: # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD # # Please send patches with a ChangeLog entry to config-patches@gnu.org. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] Output the configuration name of the system \`$me' is run on. Operation modes: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. Copyright 1992-2014 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" >&2 exit 1 ;; * ) break ;; esac done if test $# != 0; then echo "$me: too many arguments$help" >&2 exit 1 fi trap 'exit 1' 1 2 15 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires # temporary files to be created and, as you can see below, it is a # headache to deal with in a portable fashion. # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still # use `HOST_CC' if defined, but it is deprecated. # Portable tmp directory creation inspired by the Autoconf team. set_cc_for_build=' trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; : ${TMPDIR=/tmp} ; { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; dummy=$tmp/dummy ; tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; case $CC_FOR_BUILD,$HOST_CC,$CC in ,,) echo "int x;" > $dummy.c ; for c in cc gcc c89 c99 ; do if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then CC_FOR_BUILD="$c"; break ; fi ; done ; if test x"$CC_FOR_BUILD" = x ; then CC_FOR_BUILD=no_compiler_found ; fi ;; ,,*) CC_FOR_BUILD=$CC ;; ,*,*) CC_FOR_BUILD=$HOST_CC ;; esac ; set_cc_for_build= ;' # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) if (test -f /.attbin/uname) >/dev/null 2>&1 ; then PATH=$PATH:/.attbin ; export PATH fi UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown case "${UNAME_SYSTEM}" in Linux|GNU|GNU/*) # If the system lacks a compiler, then just pick glibc. # We could probably try harder. LIBC=gnu eval $set_cc_for_build cat <<-EOF > $dummy.c #include #if defined(__UCLIBC__) LIBC=uclibc #elif defined(__dietlibc__) LIBC=dietlibc #else LIBC=gnu #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` ;; esac # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently # switched to ELF, *-*-netbsd* would select the old # object file format. This provides both forward # compatibility and a consistent mechanism for selecting the # object file format. # # Note: NetBSD doesn't particularly care about the vendor # portion of the name. We always set it to "unknown". sysctl="sysctl -n hw.machine_arch" UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ /usr/sbin/$sysctl 2>/dev/null || echo unknown)` case "${UNAME_MACHINE_ARCH}" in armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; sh5el) machine=sh5le-unknown ;; *) machine=${UNAME_MACHINE_ARCH}-unknown ;; esac # The Operating System including object format, if it has switched # to ELF recently, or will in the future. case "${UNAME_MACHINE_ARCH}" in arm*|i386|m68k|ns32k|sh3*|sparc|vax) eval $set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ELF__ then # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). # Return netbsd for either. FIX? os=netbsd else os=netbsdelf fi ;; *) os=netbsd ;; esac # The OS release # Debian GNU/NetBSD machines have a different userland, and # thus, need a distinct triplet. However, they do not need # kernel version information, so it can be replaced with a # suitable tag, in the style of linux-gnu. case "${UNAME_VERSION}" in Debian*) release='-gnu' ;; *) release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. echo "${machine}-${os}${release}" exit ;; *:Bitrig:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} exit ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} exit ;; *:ekkoBSD:*:*) echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} exit ;; *:SolidBSD:*:*) echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} exit ;; macppc:MirBSD:*:*) echo powerpc-unknown-mirbsd${UNAME_RELEASE} exit ;; *:MirBSD:*:*) echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} exit ;; alpha:OSF1:*:*) case $UNAME_RELEASE in *4.0) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` ;; *5.*) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` ;; esac # According to Compaq, /usr/sbin/psrinfo has been available on # OSF/1 and Tru64 systems produced since 1995. I hope that # covers most systems running today. This code pipes the CPU # types through head -n 1, so we only detect the type of CPU 0. ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` case "$ALPHA_CPU_TYPE" in "EV4 (21064)") UNAME_MACHINE="alpha" ;; "EV4.5 (21064)") UNAME_MACHINE="alpha" ;; "LCA4 (21066/21068)") UNAME_MACHINE="alpha" ;; "EV5 (21164)") UNAME_MACHINE="alphaev5" ;; "EV5.6 (21164A)") UNAME_MACHINE="alphaev56" ;; "EV5.6 (21164PC)") UNAME_MACHINE="alphapca56" ;; "EV5.7 (21164PC)") UNAME_MACHINE="alphapca57" ;; "EV6 (21264)") UNAME_MACHINE="alphaev6" ;; "EV6.7 (21264A)") UNAME_MACHINE="alphaev67" ;; "EV6.8CB (21264C)") UNAME_MACHINE="alphaev68" ;; "EV6.8AL (21264B)") UNAME_MACHINE="alphaev68" ;; "EV6.8CX (21264D)") UNAME_MACHINE="alphaev68" ;; "EV6.9A (21264/EV69A)") UNAME_MACHINE="alphaev69" ;; "EV7 (21364)") UNAME_MACHINE="alphaev7" ;; "EV7.9 (21364A)") UNAME_MACHINE="alphaev79" ;; esac # A Pn.n version is a patched version. # A Vn.n version is a released version. # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` # Reset EXIT trap before exiting to avoid spurious non-zero exit code. exitcode=$? trap '' 0 exit $exitcode ;; Alpha\ *:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # Should we change UNAME_MACHINE based on the output of uname instead # of the specific Alpha model? echo alpha-pc-interix exit ;; 21064:Windows_NT:50:3) echo alpha-dec-winnt3.5 exit ;; Amiga*:UNIX_System_V:4.0:*) echo m68k-unknown-sysv4 exit ;; *:[Aa]miga[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-amigaos exit ;; *:[Mm]orph[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-morphos exit ;; *:OS/390:*:*) echo i370-ibm-openedition exit ;; *:z/VM:*:*) echo s390-ibm-zvmoe exit ;; *:OS400:*:*) echo powerpc-ibm-os400 exit ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit ;; arm*:riscos:*:*|arm*:RISCOS:*:*) echo arm-unknown-riscos exit ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp exit ;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. if test "`(/bin/universe) 2>/dev/null`" = att ; then echo pyramid-pyramid-sysv3 else echo pyramid-pyramid-bsd fi exit ;; NILE*:*:*:dcosx) echo pyramid-pyramid-svr4 exit ;; DRS?6000:unix:4.0:6*) echo sparc-icl-nx6 exit ;; DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7; exit ;; esac ;; s390x:SunOS:*:*) echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4H:SunOS:5.*:*) echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) echo i386-pc-auroraux${UNAME_RELEASE} exit ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) eval $set_cc_for_build SUN_ARCH="i386" # If there is a compiler, see if it is configured for 64-bit objects. # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. # This test works for both compilers. if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then SUN_ARCH="x86_64" fi fi echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:*:*) case "`/usr/bin/arch -k`" in Series*|S4*) UNAME_RELEASE=`uname -v` ;; esac # Japanese Language versions have a version number like `4.1.3-JL'. echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` exit ;; sun3*:SunOS:*:*) echo m68k-sun-sunos${UNAME_RELEASE} exit ;; sun*:*:4.2BSD:*) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 case "`/bin/arch`" in sun3) echo m68k-sun-sunos${UNAME_RELEASE} ;; sun4) echo sparc-sun-sunos${UNAME_RELEASE} ;; esac exit ;; aushp:SunOS:*:*) echo sparc-auspex-sunos${UNAME_RELEASE} exit ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not # "atarist" or "atariste" at least should have a processor # > m68000). The system name ranges from "MiNT" over "FreeMiNT" # to the lowercase version "mint" (or "freemint"). Finally # the system name "TOS" denotes a system which is actually not # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) echo m68k-milan-mint${UNAME_RELEASE} exit ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) echo m68k-hades-mint${UNAME_RELEASE} exit ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) echo m68k-unknown-mint${UNAME_RELEASE} exit ;; m68k:machten:*:*) echo m68k-apple-machten${UNAME_RELEASE} exit ;; powerpc:machten:*:*) echo powerpc-apple-machten${UNAME_RELEASE} exit ;; RISC*:Mach:*:*) echo mips-dec-mach_bsd4.3 exit ;; RISC*:ULTRIX:*:*) echo mips-dec-ultrix${UNAME_RELEASE} exit ;; VAX*:ULTRIX*:*:*) echo vax-dec-ultrix${UNAME_RELEASE} exit ;; 2020:CLIX:*:* | 2430:CLIX:*:*) echo clipper-intergraph-clix${UNAME_RELEASE} exit ;; mips:*:*:UMIPS | mips:*:*:RISCos) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #ifdef __cplusplus #include /* for printf() prototype */ int main (int argc, char *argv[]) { #else int main (argc, argv) int argc; char *argv[]; { #endif #if defined (host_mips) && defined (MIPSEB) #if defined (SYSTYPE_SYSV) printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_SVR4) printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); #endif #endif exit (-1); } EOF $CC_FOR_BUILD -o $dummy $dummy.c && dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && SYSTEM_NAME=`$dummy $dummyarg` && { echo "$SYSTEM_NAME"; exit; } echo mips-mips-riscos${UNAME_RELEASE} exit ;; Motorola:PowerMAX_OS:*:*) echo powerpc-motorola-powermax exit ;; Motorola:*:4.3:PL8-*) echo powerpc-harris-powermax exit ;; Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) echo powerpc-harris-powermax exit ;; Night_Hawk:Power_UNIX:*:*) echo powerpc-harris-powerunix exit ;; m88k:CX/UX:7*:*) echo m88k-harris-cxux7 exit ;; m88k:*:4*:R4*) echo m88k-motorola-sysv4 exit ;; m88k:*:3*:R3*) echo m88k-motorola-sysv3 exit ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] then if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ [ ${TARGET_BINARY_INTERFACE}x = x ] then echo m88k-dg-dgux${UNAME_RELEASE} else echo m88k-dg-dguxbcs${UNAME_RELEASE} fi else echo i586-dg-dgux${UNAME_RELEASE} fi exit ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 exit ;; M88*:*:R3*:*) # Delta 88k system running SVR3 echo m88k-motorola-sysv3 exit ;; XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) echo m88k-tektronix-sysv3 exit ;; Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) echo m68k-tektronix-bsd exit ;; *:IRIX*:*:*) echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` exit ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' i*86:AIX:*:*) echo i386-ibm-aix exit ;; ia64:AIX:*:*) if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} exit ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include main() { if (!__power_pc()) exit(1); puts("powerpc-ibm-aix3.2.5"); exit(0); } EOF if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` then echo "$SYSTEM_NAME" else echo rs6000-ibm-aix3.2.5 fi elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then echo rs6000-ibm-aix3.2.4 else echo rs6000-ibm-aix3.2 fi exit ;; *:AIX:*:[4567]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 else IBM_ARCH=powerpc fi if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${IBM_ARCH}-ibm-aix${IBM_REV} exit ;; *:AIX:*:*) echo rs6000-ibm-aix exit ;; ibmrt:4.4BSD:*|romp-ibm:BSD:*) echo romp-ibm-bsd4.4 exit ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to exit ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) echo rs6000-bull-bosx exit ;; DPX/2?00:B.O.S.:*:*) echo m68k-bull-sysv3 exit ;; 9000/[34]??:4.3bsd:1.*:*) echo m68k-hp-bsd exit ;; hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) echo m68k-hp-bsd4.4 exit ;; 9000/[34678]??:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` case "${UNAME_MACHINE}" in 9000/31? ) HP_ARCH=m68000 ;; 9000/[34]?? ) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) if [ -x /usr/bin/getconf ]; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` case "${sc_cpu_version}" in 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 532) # CPU_PA_RISC2_0 case "${sc_kernel_bits}" in 32) HP_ARCH="hppa2.0n" ;; 64) HP_ARCH="hppa2.0w" ;; '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 esac ;; esac fi if [ "${HP_ARCH}" = "" ]; then eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #define _HPUX_SOURCE #include #include int main () { #if defined(_SC_KERNEL_BITS) long bits = sysconf(_SC_KERNEL_BITS); #endif long cpu = sysconf (_SC_CPU_VERSION); switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0"); break; case CPU_PA_RISC1_1: puts ("hppa1.1"); break; case CPU_PA_RISC2_0: #if defined(_SC_KERNEL_BITS) switch (bits) { case 64: puts ("hppa2.0w"); break; case 32: puts ("hppa2.0n"); break; default: puts ("hppa2.0"); break; } break; #else /* !defined(_SC_KERNEL_BITS) */ puts ("hppa2.0"); break; #endif default: puts ("hppa1.0"); break; } exit (0); } EOF (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` test -z "$HP_ARCH" && HP_ARCH=hppa fi ;; esac if [ ${HP_ARCH} = "hppa2.0w" ] then eval $set_cc_for_build # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler # generating 64-bit code. GNU and HP use different nomenclature: # # $ CC_FOR_BUILD=cc ./config.guess # => hppa2.0w-hp-hpux11.23 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess # => hppa64-hp-hpux11.23 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | grep -q __LP64__ then HP_ARCH="hppa2.0w" else HP_ARCH="hppa64" fi fi echo ${HP_ARCH}-hp-hpux${HPUX_REV} exit ;; ia64:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` echo ia64-hp-hpux${HPUX_REV} exit ;; 3050*:HI-UX:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include int main () { long cpu = sysconf (_SC_CPU_VERSION); /* The order matters, because CPU_IS_HP_MC68K erroneously returns true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct results, however. */ if (CPU_IS_PA_RISC (cpu)) { switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; default: puts ("hppa-hitachi-hiuxwe2"); break; } } else if (CPU_IS_HP_MC68K (cpu)) puts ("m68k-hitachi-hiuxwe2"); else puts ("unknown-hitachi-hiuxwe2"); exit (0); } EOF $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && { echo "$SYSTEM_NAME"; exit; } echo unknown-hitachi-hiuxwe2 exit ;; 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) echo hppa1.1-hp-bsd exit ;; 9000/8??:4.3bsd:*:*) echo hppa1.0-hp-bsd exit ;; *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) echo hppa1.0-hp-mpeix exit ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) echo hppa1.1-hp-osf exit ;; hp8??:OSF1:*:*) echo hppa1.0-hp-osf exit ;; i*86:OSF1:*:*) if [ -x /usr/sbin/sysversion ] ; then echo ${UNAME_MACHINE}-unknown-osf1mk else echo ${UNAME_MACHINE}-unknown-osf1 fi exit ;; parisc*:Lites*:*:*) echo hppa1.1-hp-lites exit ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd exit ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) echo c34-convex-bsd exit ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) echo c38-convex-bsd exit ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) echo c4-convex-bsd exit ;; CRAY*Y-MP:*:*:*) echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*[A-Z]90:*:*:*) echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -e 's/\.[^.]*$/.X/' exit ;; CRAY*TS:*:*:*) echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*T3E:*:*:*) echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*SV1:*:*:*) echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; *:UNICOS/mp:*:*) echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; 5000:UNIX_System_V:4.*:*) FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit ;; sparc*:BSD/OS:*:*) echo sparc-unknown-bsdi${UNAME_RELEASE} exit ;; *:BSD/OS:*:*) echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} exit ;; *:FreeBSD:*:*) UNAME_PROCESSOR=`/usr/bin/uname -p` case ${UNAME_PROCESSOR} in amd64) echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; *) echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; esac exit ;; i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin exit ;; *:MINGW64*:*) echo ${UNAME_MACHINE}-pc-mingw64 exit ;; *:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; *:MSYS*:*) echo ${UNAME_MACHINE}-pc-msys exit ;; i*:windows32*:*) # uname -m includes "-pc" on this system. echo ${UNAME_MACHINE}-mingw32 exit ;; i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit ;; *:Interix*:*) case ${UNAME_MACHINE} in x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; authenticamd | genuineintel | EM64T) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; IA64) echo ia64-unknown-interix${UNAME_RELEASE} exit ;; esac ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks exit ;; 8664:Windows_NT:*) echo x86_64-pc-mks exit ;; i*:Windows_NT*:* | Pentium*:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we # UNAME_MACHINE based on the output of uname instead of i386? echo i586-pc-interix exit ;; i*:UWIN*:*) echo ${UNAME_MACHINE}-pc-uwin exit ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) echo x86_64-unknown-cygwin exit ;; p*:CYGWIN*:*) echo powerpcle-unknown-cygwin exit ;; prep*:SunOS:5.*:*) echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; *:GNU:*:*) # the GNU system echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` exit ;; *:GNU/*:*:*) # other systems with GNU libc and userland echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} exit ;; i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit ;; aarch64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; aarch64_be:Linux:*:*) UNAME_MACHINE=aarch64_be echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in EV5) UNAME_MACHINE=alphaev5 ;; EV56) UNAME_MACHINE=alphaev56 ;; PCA56) UNAME_MACHINE=alphapca56 ;; PCA57) UNAME_MACHINE=alphapca56 ;; EV6) UNAME_MACHINE=alphaev6 ;; EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; esac objdump --private-headers /bin/sh | grep -q ld.so.1 if test "$?" = 0 ; then LIBC="gnulibc1" ; fi echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; arc:Linux:*:* | arceb:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; arm*:Linux:*:*) eval $set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then echo ${UNAME_MACHINE}-unknown-linux-${LIBC} else if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_PCS_VFP then echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi else echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf fi fi exit ;; avr32*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; cris:Linux:*:*) echo ${UNAME_MACHINE}-axis-linux-${LIBC} exit ;; crisv32:Linux:*:*) echo ${UNAME_MACHINE}-axis-linux-${LIBC} exit ;; frv:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; hexagon:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; i*86:Linux:*:*) echo ${UNAME_MACHINE}-pc-linux-${LIBC} exit ;; ia64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; m32r*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; m68*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; mips:Linux:*:* | mips64:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU #undef ${UNAME_MACHINE} #undef ${UNAME_MACHINE}el #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=${UNAME_MACHINE}el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=${UNAME_MACHINE} #else CPU= #endif #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } ;; openrisc*:Linux:*:*) echo or1k-unknown-linux-${LIBC} exit ;; or32:Linux:*:* | or1k*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; padre:Linux:*:*) echo sparc-unknown-linux-${LIBC} exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) echo hppa64-unknown-linux-${LIBC} exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; *) echo hppa-unknown-linux-${LIBC} ;; esac exit ;; ppc64:Linux:*:*) echo powerpc64-unknown-linux-${LIBC} exit ;; ppc:Linux:*:*) echo powerpc-unknown-linux-${LIBC} exit ;; ppc64le:Linux:*:*) echo powerpc64le-unknown-linux-${LIBC} exit ;; ppcle:Linux:*:*) echo powerpcle-unknown-linux-${LIBC} exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux-${LIBC} exit ;; sh64*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; sh*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; tile*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; vax:Linux:*:*) echo ${UNAME_MACHINE}-dec-linux-${LIBC} exit ;; x86_64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; xtensa*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-${LIBC} exit ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # earlier versions are messed up and put the nodename in both # sysname and nodename. echo i386-sequent-sysv4 exit ;; i*86:UNIX_SV:4.2MP:2.*) # Unixware is an offshoot of SVR4, but it has its own version # number series starting with 2... # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. # Use sysv4.2uw... so that sysv4* matches it. echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} exit ;; i*86:OS/2:*:*) # If we were able to find `uname', then EMX Unix compatibility # is probably installed. echo ${UNAME_MACHINE}-pc-os2-emx exit ;; i*86:XTS-300:*:STOP) echo ${UNAME_MACHINE}-unknown-stop exit ;; i*86:atheos:*:*) echo ${UNAME_MACHINE}-unknown-atheos exit ;; i*86:syllable:*:*) echo ${UNAME_MACHINE}-pc-syllable exit ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) echo i386-unknown-lynxos${UNAME_RELEASE} exit ;; i*86:*DOS:*:*) echo ${UNAME_MACHINE}-pc-msdosdjgpp exit ;; i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} else echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} fi exit ;; i*86:*:5:[678]*) # UnixWare 7.x, OpenUNIX and OpenServer 6. case `/bin/uname -X | grep "^Machine"` in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} exit ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ && UNAME_MACHINE=i586 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ && UNAME_MACHINE=i686 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ && UNAME_MACHINE=i686 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL else echo ${UNAME_MACHINE}-pc-sysv32 fi exit ;; pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about # the processor, so we play safe by assuming i586. # Note: whatever this is, it MUST be the same as what config.sub # prints for the "djgpp" host, or else GDB configury will decide that # this is a cross-build. echo i586-pc-msdosdjgpp exit ;; Intel:Mach:3*:*) echo i386-pc-mach3 exit ;; paragon:*:*:*) echo i860-intel-osf1 exit ;; i860:*:4.*:*) # i860-SVR4 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 fi exit ;; mini*:CTIX:SYS*5:*) # "miniframe" echo m68010-convergent-sysv exit ;; mc68k:UNIX:SYSTEM5:3.51m) echo m68k-convergent-sysv exit ;; M680?0:D-NIX:5.3:*) echo m68k-diab-dnix exit ;; M68*:*:R3V[5678]*:*) test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4; exit; } ;; NCR*:*:4.2:* | MPRAS*:*:4.2:*) OS_REL='.3' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) echo m68k-unknown-lynxos${UNAME_RELEASE} exit ;; mc68030:UNIX_System_V:4.*:*) echo m68k-atari-sysv4 exit ;; TSUNAMI:LynxOS:2.*:*) echo sparc-unknown-lynxos${UNAME_RELEASE} exit ;; rs6000:LynxOS:2.*:*) echo rs6000-unknown-lynxos${UNAME_RELEASE} exit ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) echo powerpc-unknown-lynxos${UNAME_RELEASE} exit ;; SM[BE]S:UNIX_SV:*:*) echo mips-dde-sysv${UNAME_RELEASE} exit ;; RM*:ReliantUNIX-*:*:*) echo mips-sni-sysv4 exit ;; RM*:SINIX-*:*:*) echo mips-sni-sysv4 exit ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` echo ${UNAME_MACHINE}-sni-sysv4 else echo ns32k-sni-sysv fi exit ;; PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort # says echo i586-unisys-sysv4 exit ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm echo hppa1.1-stratus-sysv4 exit ;; *:*:*:FTX*) # From seanf@swdc.stratus.com. echo i860-stratus-sysv4 exit ;; i*86:VOS:*:*) # From Paul.Green@stratus.com. echo ${UNAME_MACHINE}-stratus-vos exit ;; *:VOS:*:*) # From Paul.Green@stratus.com. echo hppa1.1-stratus-vos exit ;; mc68*:A/UX:*:*) echo m68k-apple-aux${UNAME_RELEASE} exit ;; news*:NEWS-OS:6*:*) echo mips-sony-newsos6 exit ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then echo mips-nec-sysv${UNAME_RELEASE} else echo mips-unknown-sysv${UNAME_RELEASE} fi exit ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. echo powerpc-be-beos exit ;; BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. echo powerpc-apple-beos exit ;; BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit ;; BePC:Haiku:*:*) # Haiku running on Intel PC compatible. echo i586-pc-haiku exit ;; x86_64:Haiku:*:*) echo x86_64-unknown-haiku exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit ;; SX-5:SUPER-UX:*:*) echo sx5-nec-superux${UNAME_RELEASE} exit ;; SX-6:SUPER-UX:*:*) echo sx6-nec-superux${UNAME_RELEASE} exit ;; SX-7:SUPER-UX:*:*) echo sx7-nec-superux${UNAME_RELEASE} exit ;; SX-8:SUPER-UX:*:*) echo sx8-nec-superux${UNAME_RELEASE} exit ;; SX-8R:SUPER-UX:*:*) echo sx8r-nec-superux${UNAME_RELEASE} exit ;; Power*:Rhapsody:*:*) echo powerpc-apple-rhapsody${UNAME_RELEASE} exit ;; *:Rhapsody:*:*) echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} exit ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown eval $set_cc_for_build if test "$UNAME_PROCESSOR" = unknown ; then UNAME_PROCESSOR=powerpc fi if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then case $UNAME_PROCESSOR in i386) UNAME_PROCESSOR=x86_64 ;; powerpc) UNAME_PROCESSOR=powerpc64 ;; esac fi fi elif test "$UNAME_PROCESSOR" = i386 ; then # Avoid executing cc on OS X 10.9, as it ships with a stub # that puts up a graphical alert prompting to install # developer tools. Any system running Mac OS X 10.7 or # later (Darwin 11 and later) is required to have a 64-bit # processor. This is not true of the ARM version of Darwin # that Apple uses in portable devices. UNAME_PROCESSOR=x86_64 fi echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} exit ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) UNAME_PROCESSOR=`uname -p` if test "$UNAME_PROCESSOR" = "x86"; then UNAME_PROCESSOR=i386 UNAME_MACHINE=pc fi echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} exit ;; *:QNX:*:4*) echo i386-pc-qnx exit ;; NEO-?:NONSTOP_KERNEL:*:*) echo neo-tandem-nsk${UNAME_RELEASE} exit ;; NSE-*:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk${UNAME_RELEASE} exit ;; NSR-?:NONSTOP_KERNEL:*:*) echo nsr-tandem-nsk${UNAME_RELEASE} exit ;; *:NonStop-UX:*:*) echo mips-compaq-nonstopux exit ;; BS2000:POSIX*:*:*) echo bs2000-siemens-sysv exit ;; DS/*:UNIX_System_V:*:*) echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} exit ;; *:Plan9:*:*) # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. if test "$cputype" = "386"; then UNAME_MACHINE=i386 else UNAME_MACHINE="$cputype" fi echo ${UNAME_MACHINE}-unknown-plan9 exit ;; *:TOPS-10:*:*) echo pdp10-unknown-tops10 exit ;; *:TENEX:*:*) echo pdp10-unknown-tenex exit ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) echo pdp10-dec-tops20 exit ;; XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) echo pdp10-xkl-tops20 exit ;; *:TOPS-20:*:*) echo pdp10-unknown-tops20 exit ;; *:ITS:*:*) echo pdp10-unknown-its exit ;; SEI:*:*:SEIUX) echo mips-sei-seiux${UNAME_RELEASE} exit ;; *:DragonFly:*:*) echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` exit ;; *:*VMS:*:*) UNAME_MACHINE=`(uname -p) 2>/dev/null` case "${UNAME_MACHINE}" in A*) echo alpha-dec-vms ; exit ;; I*) echo ia64-dec-vms ; exit ;; V*) echo vax-dec-vms ; exit ;; esac ;; *:XENIX:*:SysV) echo i386-pc-xenix exit ;; i*86:skyos:*:*) echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' exit ;; i*86:rdos:*:*) echo ${UNAME_MACHINE}-pc-rdos exit ;; i*86:AROS:*:*) echo ${UNAME_MACHINE}-pc-aros exit ;; x86_64:VMkernel:*:*) echo ${UNAME_MACHINE}-unknown-esx exit ;; esac cat >&2 < in order to provide the needed information to handle your system. config.guess timestamp = $timestamp uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` /bin/uname -X = `(/bin/uname -X) 2>/dev/null` hostinfo = `(hostinfo) 2>/dev/null` /bin/universe = `(/bin/universe) 2>/dev/null` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` /bin/arch = `(/bin/arch) 2>/dev/null` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` UNAME_MACHINE = ${UNAME_MACHINE} UNAME_RELEASE = ${UNAME_RELEASE} UNAME_SYSTEM = ${UNAME_SYSTEM} UNAME_VERSION = ${UNAME_VERSION} EOF exit 1 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: gnomint-1.3.0/install-sh0000755000175000017500000003452312672052510012122 00000000000000#!/bin/sh # install - install a program, script, or datafile scriptversion=2013-12-25.23; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the # following copyright and license. # # Copyright (C) 1994 X Consortium # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to # deal in the Software without restriction, including without limitation the # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or # sell copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # Except as contained in this notice, the name of the X Consortium shall not # be used in advertising or otherwise to promote the sale, use or other deal- # ings in this Software without prior written authorization from the X Consor- # tium. # # # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent # 'make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. tab=' ' nl=' ' IFS=" $tab$nl" # Set DOITPROG to "echo" to test this script. doit=${DOITPROG-} doit_exec=${doit:-exec} # Put in absolute file names if you don't have them in your path; # or use environment vars. chgrpprog=${CHGRPPROG-chgrp} chmodprog=${CHMODPROG-chmod} chownprog=${CHOWNPROG-chown} cmpprog=${CMPPROG-cmp} cpprog=${CPPROG-cp} mkdirprog=${MKDIRPROG-mkdir} mvprog=${MVPROG-mv} rmprog=${RMPROG-rm} stripprog=${STRIPPROG-strip} posix_mkdir= # Desired mode of installed file. mode=0755 chgrpcmd= chmodcmd=$chmodprog chowncmd= mvcmd=$mvprog rmcmd="$rmprog -f" stripcmd= src= dst= dir_arg= dst_arg= copy_on_change=false is_target_a_directory=possibly usage="\ Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY or: $0 [OPTION]... -t DIRECTORY SRCFILES... or: $0 [OPTION]... -d DIRECTORIES... In the 1st form, copy SRCFILE to DSTFILE. In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. In the 4th, create DIRECTORIES. Options: --help display this help and exit. --version display version info and exit. -c (ignored) -C install only if different (preserve the last data modification time) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. -s $stripprog installed files. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG " while test $# -ne 0; do case $1 in -c) ;; -C) copy_on_change=true;; -d) dir_arg=true;; -g) chgrpcmd="$chgrpprog $2" shift;; --help) echo "$usage"; exit $?;; -m) mode=$2 case $mode in *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*) echo "$0: invalid mode: $mode" >&2 exit 1;; esac shift;; -o) chowncmd="$chownprog $2" shift;; -s) stripcmd=$stripprog;; -t) is_target_a_directory=always dst_arg=$2 # Protect names problematic for 'test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac shift;; -T) is_target_a_directory=never;; --version) echo "$0 $scriptversion"; exit $?;; --) shift break;; -*) echo "$0: invalid option: $1" >&2 exit 1;; *) break;; esac shift done # We allow the use of options -d and -T together, by making -d # take the precedence; this is for compatibility with GNU install. if test -n "$dir_arg"; then if test -n "$dst_arg"; then echo "$0: target directory not allowed when installing a directory." >&2 exit 1 fi fi if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. # Otherwise, the last argument is the destination. Remove it from $@. for arg do if test -n "$dst_arg"; then # $@ is not empty: it contains at least $arg. set fnord "$@" "$dst_arg" shift # fnord fi shift # arg dst_arg=$arg # Protect names problematic for 'test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac done fi if test $# -eq 0; then if test -z "$dir_arg"; then echo "$0: no input file specified." >&2 exit 1 fi # It's OK to call 'install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi if test -z "$dir_arg"; then if test $# -gt 1 || test "$is_target_a_directory" = always; then if test ! -d "$dst_arg"; then echo "$0: $dst_arg: Is not a directory." >&2 exit 1 fi fi fi if test -z "$dir_arg"; then do_exit='(exit $ret); exit $ret' trap "ret=129; $do_exit" 1 trap "ret=130; $do_exit" 2 trap "ret=141; $do_exit" 13 trap "ret=143; $do_exit" 15 # Set umask so as not to create temps with too-generous modes. # However, 'strip' requires both read and write access to temps. case $mode in # Optimize common cases. *644) cp_umask=133;; *755) cp_umask=22;; *[0-7]) if test -z "$stripcmd"; then u_plus_rw= else u_plus_rw='% 200' fi cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; *) if test -z "$stripcmd"; then u_plus_rw= else u_plus_rw=,u+rw fi cp_umask=$mode$u_plus_rw;; esac fi for src do # Protect names problematic for 'test' and other utilities. case $src in -* | [=\(\)!]) src=./$src;; esac if test -n "$dir_arg"; then dst=$src dstdir=$dst test -d "$dstdir" dstdir_status=$? else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if test ! -f "$src" && test ! -d "$src"; then echo "$0: $src does not exist." >&2 exit 1 fi if test -z "$dst_arg"; then echo "$0: no destination specified." >&2 exit 1 fi dst=$dst_arg # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then if test "$is_target_a_directory" = never; then echo "$0: $dst_arg: Is a directory" >&2 exit 1 fi dstdir=$dst dst=$dstdir/`basename "$src"` dstdir_status=0 else dstdir=`dirname "$dst"` test -d "$dstdir" dstdir_status=$? fi fi obsolete_mkdir_used=false if test $dstdir_status != 0; then case $posix_mkdir in '') # Create intermediate dirs using mode 755 as modified by the umask. # This is like FreeBSD 'install' as of 1997-10-28. umask=`umask` case $stripcmd.$umask in # Optimize common cases. *[2367][2367]) mkdir_umask=$umask;; .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; *[0-7]) mkdir_umask=`expr $umask + 22 \ - $umask % 100 % 40 + $umask % 20 \ - $umask % 10 % 4 + $umask % 2 `;; *) mkdir_umask=$umask,go-w;; esac # With -d, create the new directory with the user-specified mode. # Otherwise, rely on $mkdir_umask. if test -n "$dir_arg"; then mkdir_mode=-m$mode else mkdir_mode= fi posix_mkdir=false case $umask in *[123567][0-7][0-7]) # POSIX mkdir -p sets u+wx bits regardless of umask, which # is incompatible with FreeBSD 'install' when (umask & 300) != 0. ;; *) tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 if (umask $mkdir_umask && exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 then if test -z "$dir_arg" || { # Check for POSIX incompatibilities with -m. # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or # other-writable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. ls_ld_tmpdir=`ls -ld "$tmpdir"` case $ls_ld_tmpdir in d????-?r-*) different_mode=700;; d????-?--*) different_mode=755;; *) false;; esac && $mkdirprog -m$different_mode -p -- "$tmpdir" && { ls_ld_tmpdir_1=`ls -ld "$tmpdir"` test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" } } then posix_mkdir=: fi rmdir "$tmpdir/d" "$tmpdir" else # Remove any dirs left behind by ancient mkdir implementations. rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null fi trap '' 0;; esac;; esac if $posix_mkdir && ( umask $mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" ) then : else # The umask is ridiculous, or mkdir does not conform to POSIX, # or it failed possibly due to a race condition. Create the # directory the slow way, step by step, checking for races as we go. case $dstdir in /*) prefix='/';; [-=\(\)!]*) prefix='./';; *) prefix='';; esac oIFS=$IFS IFS=/ set -f set fnord $dstdir shift set +f IFS=$oIFS prefixes= for d do test X"$d" = X && continue prefix=$prefix$d if test -d "$prefix"; then prefixes= else if $posix_mkdir; then (umask=$mkdir_umask && $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break # Don't fail if two instances are running concurrently. test -d "$prefix" || exit 1 else case $prefix in *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; *) qprefix=$prefix;; esac prefixes="$prefixes '$qprefix'" fi fi prefix=$prefix/ done if test -n "$prefixes"; then # Don't fail if two instances are running concurrently. (umask $mkdir_umask && eval "\$doit_exec \$mkdirprog $prefixes") || test -d "$dstdir" || exit 1 obsolete_mkdir_used=true fi fi fi if test -n "$dir_arg"; then { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 else # Make a couple of temp file names in the proper directory. dsttmp=$dstdir/_inst.$$_ rmtmp=$dstdir/_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 # Copy the file name to the temp name. (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && # and set any options; do chmod last to preserve setuid bits. # # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $cpprog $src $dsttmp" command. # { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && # If -C, don't bother to copy if it wouldn't change the file. if $copy_on_change && old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && set -f && set X $old && old=:$2:$4:$5:$6 && set X $new && new=:$2:$4:$5:$6 && set +f && test "$old" = "$new" && $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 then rm -f "$dsttmp" else # Rename the file to the real destination. $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || # The rename failed, perhaps because mv can't rename something else # to itself, or perhaps because mv is so ancient that it does not # support -f. { # Now remove or move aside any old file at destination location. # We try this two ways since rm can't unlink itself on some # systems and the destination file might be busy for other # reasons. In this case, the final cleanup might fail but the new # file should still install successfully. { test ! -f "$dst" || $doit $rmcmd -f "$dst" 2>/dev/null || { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } } || { echo "$0: cannot unlink or rename $dst" >&2 (exit 1); exit 1 } } && # Now rename the file to the real destination. $doit $mvcmd "$dsttmp" "$dst" } fi || exit 1 trap '' 0 fi done # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: gnomint-1.3.0/gnomint.spec.in0000664000175000017500000000054012672052326013051 00000000000000Vendor: David Marín Carreño Name: gnomint Version: @PACKAGE_VERSION@ Release: 1 %description Certification Authority management made easy. gnoMint is a x509 Certification Authority management tool for GTK/Gnome environments. Summary: Graphical x509 Certification Authority management tool Copyright: GPL URL: @PACKAGE_WEBSITE@ gnomint-1.3.0/gconf/0000775000175000017500000000000012672104243011266 500000000000000gnomint-1.3.0/gconf/gnomint.schemas.in0000664000175000017500000000333612672052326014644 00000000000000 /schemas/apps/gnomint/size /apps/gnomint/size gnomint string (500,400) Window size The (width,length) size gnoMint should take when started. This cannot be smaller than (320,200). /schemas/apps/gnomint/revoked_visible /apps/gnomint/revoked_visible gnomint bool 0 Revoked certificates visibility Whether the revoked certificates should be visible. /schemas/apps/gnomint/crq_visible /apps/gnomint/crq_visible gnomint bool 1 Certificate requests visibility Whether the certificate requests should be visible. /schemas/apps/gnomint/gnome_keyring_export /apps/gnomint/gnome_keyring_export gnomint bool 1 Automatic exporting of certificates for gnome-keyring Whether the created or imported certificates are automatically exported to gnome-keyring certificate-store. gnomint-1.3.0/gconf/Makefile.am0000664000175000017500000000103112672052326013241 00000000000000schemasdir = @GCONF_SCHEMA_FILE_DIR@ schemas_in_files = gnomint.schemas.in schemas_DATA = $(schemas_in_files:.schemas.in=.schemas) @INTLTOOL_SCHEMAS_RULE@ EXTRA_DIST = $(schemas_in_files) CLEANFILES = $(schemas_DATA) if GCONF_SCHEMAS_INSTALL # don't do this if we are building in eg. rpm install-data-local: $(schemas_DATA) if test -z "$(DESTDIR)" ; then \ for p in $(schemas_DATA) ; do \ GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) $(GCONFTOOL) --makefile-install-rule $$p; \ done \ fi else install-data-local: endif gnomint-1.3.0/gconf/Makefile.in0000664000175000017500000004024212672104235013256 00000000000000# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = gconf ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/isc-posix.m4 $(top_srcdir)/m4/libtool.m4 \ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(schemasdir)" DATA = $(schemas_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOMINTCLI_CFLAGS = @GNOMINTCLI_CFLAGS@ GNOMINTCLI_LIBS = @GNOMINTCLI_LIBS@ GNOMINT_CFLAGS = @GNOMINT_CFLAGS@ GNOMINT_LIBS = @GNOMINT_LIBS@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBGCRYPT_CFLAGS = @LIBGCRYPT_CFLAGS@ LIBGCRYPT_CONFIG = @LIBGCRYPT_CONFIG@ LIBGCRYPT_LIBS = @LIBGCRYPT_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ READLINE_LIBS = @READLINE_LIBS@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ schemasdir = @GCONF_SCHEMA_FILE_DIR@ schemas_in_files = gnomint.schemas.in schemas_DATA = $(schemas_in_files:.schemas.in=.schemas) EXTRA_DIST = $(schemas_in_files) CLEANFILES = $(schemas_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign gconf/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign gconf/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs install-schemasDATA: $(schemas_DATA) @$(NORMAL_INSTALL) @list='$(schemas_DATA)'; test -n "$(schemasdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(schemasdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(schemasdir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(schemasdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(schemasdir)" || exit $$?; \ done uninstall-schemasDATA: @$(NORMAL_UNINSTALL) @list='$(schemas_DATA)'; test -n "$(schemasdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(schemasdir)'; $(am__uninstall_files_from_dir) tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(schemasdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-data-local install-schemasDATA install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-schemasDATA .MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic clean-libtool \ cscopelist-am ctags-am distclean distclean-generic \ distclean-libtool distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am \ install-data-local install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-schemasDATA install-strip \ installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \ uninstall-am uninstall-schemasDATA .PRECIOUS: Makefile @INTLTOOL_SCHEMAS_RULE@ # don't do this if we are building in eg. rpm @GCONF_SCHEMAS_INSTALL_TRUE@install-data-local: $(schemas_DATA) @GCONF_SCHEMAS_INSTALL_TRUE@ if test -z "$(DESTDIR)" ; then \ @GCONF_SCHEMAS_INSTALL_TRUE@ for p in $(schemas_DATA) ; do \ @GCONF_SCHEMAS_INSTALL_TRUE@ GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) $(GCONFTOOL) --makefile-install-rule $$p; \ @GCONF_SCHEMAS_INSTALL_TRUE@ done \ @GCONF_SCHEMAS_INSTALL_TRUE@ fi @GCONF_SCHEMAS_INSTALL_FALSE@install-data-local: # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: gnomint-1.3.0/MAINTAINERS0000664000175000017500000000005112672052326011607 00000000000000David Marín Carreño gnomint-1.3.0/INSTALL0000664000175000017500000003661012672052326011155 00000000000000Installation Instructions ************************* Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without warranty of any kind. Basic Installation ================== Briefly, the shell command `./configure && make && make install' should configure, build, and install this package. The following more-detailed instructions are generic; see the `README' file for instructions specific to this package. Some packages provide this `INSTALL' file but do not implement all of the features documented below. The lack of an optional feature in a given package is not necessarily a bug. More recommendations for GNU packages can be found in *note Makefile Conventions: (standards)Makefile Conventions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a `Makefile' in each directory of the package. It may also create one or more `.h' files containing system-dependent definitions. Finally, it creates a shell script `config.status' that you can run in the future to recreate the current configuration, and a file `config.log' containing compiler output (useful mainly for debugging `configure'). It can also use an optional file (typically called `config.cache' and enabled with `--cache-file=config.cache' or simply `-C') that saves the results of its tests to speed up reconfiguring. Caching is disabled by default to prevent problems with accidental use of stale cache files. If you need to do unusual things to compile the package, please try to figure out how `configure' could check whether to do them, and mail diffs or instructions to the address given in the `README' so they can be considered for the next release. If you are using the cache, and at some point `config.cache' contains results you don't want to keep, you may remove or edit it. The file `configure.ac' (or `configure.in') is used to create `configure' by a program called `autoconf'. You need `configure.ac' if you want to change it or regenerate `configure' using a newer version of `autoconf'. The simplest way to compile this package is: 1. `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system. Running `configure' might take a while. While running, it prints some messages telling which features it is checking for. 2. Type `make' to compile the package. 3. Optionally, type `make check' to run any self-tests that come with the package, generally using the just-built uninstalled binaries. 4. Type `make install' to install the programs and any data files and documentation. When installing into a prefix owned by root, it is recommended that the package be configured and built as a regular user, and only the `make install' phase executed with root privileges. 5. Optionally, type `make installcheck' to repeat any self-tests, but this time using the binaries in their final installed location. This target does not install anything. Running this target as a regular user, particularly if the prior `make install' required root privileges, verifies that the installation completed correctly. 6. You can remove the program binaries and object files from the source code directory by typing `make clean'. To also remove the files that `configure' created (so you can compile the package for a different kind of computer), type `make distclean'. There is also a `make maintainer-clean' target, but that is intended mainly for the package's developers. If you use it, you may have to get all sorts of other programs in order to regenerate files that came with the distribution. 7. Often, you can also type `make uninstall' to remove the installed files again. In practice, not all packages have tested that uninstallation works correctly, even though it is required by the GNU Coding Standards. 8. Some packages, particularly those that use Automake, provide `make distcheck', which can by used by developers to test that all other targets like `make install' and `make uninstall' work correctly. This target is generally not run by end users. Compilers and Options ===================== Some systems require unusual options for compilation or linking that the `configure' script does not know about. Run `./configure --help' for details on some of the pertinent environment variables. You can give `configure' initial values for configuration parameters by setting variables in the command line or in the environment. Here is an example: ./configure CC=c99 CFLAGS=-g LIBS=-lposix *Note Defining Variables::, for more details. Compiling For Multiple Architectures ==================================== You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their own directory. To do this, you can use GNU `make'. `cd' to the directory where you want the object files and executables to go and run the `configure' script. `configure' automatically checks for the source code in the directory that `configure' is in and in `..'. This is known as a "VPATH" build. With a non-GNU `make', it is safer to compile the package for one architecture at a time in the source code directory. After you have installed the package for one architecture, use `make distclean' before reconfiguring for another architecture. On MacOS X 10.5 and later systems, you can create libraries and executables that work on multiple system types--known as "fat" or "universal" binaries--by specifying multiple `-arch' options to the compiler but only a single `-arch' option to the preprocessor. Like this: ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ CPP="gcc -E" CXXCPP="g++ -E" This is not guaranteed to produce working output in all cases, you may have to build one architecture at a time and combine the results using the `lipo' tool if you have problems. Installation Names ================== By default, `make install' installs the package's commands under `/usr/local/bin', include files under `/usr/local/include', etc. You can specify an installation prefix other than `/usr/local' by giving `configure' the option `--prefix=PREFIX', where PREFIX must be an absolute file name. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you pass the option `--exec-prefix=PREFIX' to `configure', the package uses PREFIX as the prefix for installing programs and libraries. Documentation and other data files still use the regular prefix. In addition, if you use an unusual directory layout you can give options like `--bindir=DIR' to specify different values for particular kinds of files. Run `configure --help' for a list of the directories you can set and what kinds of files go in them. In general, the default for these options is expressed in terms of `${prefix}', so that specifying just `--prefix' will affect all of the other directory specifications that were not explicitly provided. The most portable way to affect installation locations is to pass the correct locations to `configure'; however, many packages provide one or both of the following shortcuts of passing variable assignments to the `make install' command line to change installation locations without having to reconfigure or recompile. The first method involves providing an override variable for each affected directory. For example, `make install prefix=/alternate/directory' will choose an alternate location for all directory configuration variables that were expressed in terms of `${prefix}'. Any directories that were specified during `configure', but not in terms of `${prefix}', must each be overridden at install time for the entire installation to be relocated. The approach of makefile variable overrides for each directory variable is required by the GNU Coding Standards, and ideally causes no recompilation. However, some platforms have known limitations with the semantics of shared libraries that end up requiring recompilation when using this method, particularly noticeable in packages that use GNU Libtool. The second method involves providing the `DESTDIR' variable. For example, `make install DESTDIR=/alternate/directory' will prepend `/alternate/directory' before all installation names. The approach of `DESTDIR' overrides is not required by the GNU Coding Standards, and does not work on platforms that have drive letters. On the other hand, it does better at avoiding recompilation issues, and works well even when some directory options were not specified in terms of `${prefix}' at `configure' time. Optional Features ================= If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving `configure' the option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. Some packages pay attention to `--enable-FEATURE' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE is something like `gnu-as' or `x' (for the X Window System). The `README' should mention any `--enable-' and `--with-' options that the package recognizes. For packages that use the X Window System, `configure' can usually find the X include and library files automatically, but if it doesn't, you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. Some packages offer the ability to configure how verbose the execution of `make' will be. For these packages, running `./configure --enable-silent-rules' sets the default to minimal output, which can be overridden with `make V=1'; while running `./configure --disable-silent-rules' sets the default to verbose, which can be overridden with `make V=0'. Particular systems ================== On HP-UX, the default C compiler is not ANSI C compatible. If GNU CC is not installed, it is recommended to use the following options in order to use an ANSI C compiler: ./configure CC="cc -Ae -D_XOPEN_SOURCE=500" and if that doesn't work, install pre-built binaries of GCC for HP-UX. HP-UX `make' updates targets which have the same time stamps as their prerequisites, which makes it generally unusable when shipped generated files such as `configure' are involved. Use GNU `make' instead. On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot parse its `' header file. The option `-nodtk' can be used as a workaround. If GNU CC is not installed, it is therefore recommended to try ./configure CC="cc" and if that doesn't work, try ./configure CC="cc -nodtk" On Solaris, don't put `/usr/ucb' early in your `PATH'. This directory contains several dysfunctional programs; working variants of these programs are available in `/usr/bin'. So, if you need `/usr/ucb' in your `PATH', put it _after_ `/usr/bin'. On Haiku, software installed for all users goes in `/boot/common', not `/usr/local'. It is recommended to use the following options: ./configure --prefix=/boot/common Specifying the System Type ========================== There may be some features `configure' cannot figure out automatically, but needs to determine by the type of machine the package will run on. Usually, assuming the package is built to be run on the _same_ architectures, `configure' can figure that out, but if it prints a message saying it cannot guess the machine type, give it the `--build=TYPE' option. TYPE can either be a short name for the system type, such as `sun4', or a canonical name which has the form: CPU-COMPANY-SYSTEM where SYSTEM can have one of these forms: OS KERNEL-OS See the file `config.sub' for the possible values of each field. If `config.sub' isn't included in this package, then this package doesn't need to know the machine type. If you are _building_ compiler tools for cross-compiling, you should use the option `--target=TYPE' to select the type of system they will produce code for. If you want to _use_ a cross compiler, that generates code for a platform different from the build platform, you should specify the "host" platform (i.e., that on which the generated programs will eventually be run) with `--host=TYPE'. Sharing Defaults ================ If you want to set default values for `configure' scripts to share, you can create a site shell script called `config.site' that gives default values for variables like `CC', `cache_file', and `prefix'. `configure' looks for `PREFIX/share/config.site' if it exists, then `PREFIX/etc/config.site' if it exists. Or, you can set the `CONFIG_SITE' environment variable to the location of the site script. A warning: not all `configure' scripts look for a site script. Defining Variables ================== Variables not defined in a site shell script can be set in the environment passed to `configure'. However, some packages may run configure again during the build, and the customized values of these variables may be lost. In order to avoid this problem, you should set them in the `configure' command line, using `VAR=value'. For example: ./configure CC=/usr/local2/bin/gcc causes the specified `gcc' to be used as the C compiler (unless it is overridden in the site shell script). Unfortunately, this technique does not work for `CONFIG_SHELL' due to an Autoconf limitation. Until the limitation is lifted, you can use this workaround: CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash `configure' Invocation ====================== `configure' recognizes the following options to control how it operates. `--help' `-h' Print a summary of all of the options to `configure', and exit. `--help=short' `--help=recursive' Print a summary of the options unique to this package's `configure', and exit. The `short' variant lists options used only in the top level, while the `recursive' variant lists options also present in any nested packages. `--version' `-V' Print the version of Autoconf used to generate the `configure' script, and exit. `--cache-file=FILE' Enable the cache: use and save the results of the tests in FILE, traditionally `config.cache'. FILE defaults to `/dev/null' to disable caching. `--config-cache' `-C' Alias for `--cache-file=config.cache'. `--quiet' `--silent' `-q' Do not print messages saying which checks are being made. To suppress all normal output, redirect it to `/dev/null' (any error messages will still be shown). `--srcdir=DIR' Look for the package's source code in directory DIR. Usually `configure' can determine that directory automatically. `--prefix=DIR' Use DIR as the installation prefix. *note Installation Names:: for more details, including other options available for fine-tuning the installation locations. `--no-create' `-n' Run the configure checks, but stop before creating any output files. `configure' also accepts some other, not widely useful, options. Run `configure --help' for more details. gnomint-1.3.0/ChangeLog0000664000175000017500000042463112672104244011677 00000000000000# Generated by Makefile. Do not edit. commit 337874a08ffd3f0376402af158b1dfdb27c93ad3 Author: David Marín Carreño Date: Tue Mar 15 23:02:00 2016 +0100 Preparing for tagging version 1.3.0 ChangeLog | 100 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- configure.ac | 4 +-- 2 files changed, 100 insertions(+), 4 deletions(-) commit aeba061479316a4d135b8ed1a60e4f4cc5e43cf7 Author: David Marín Carreño Date: Tue Mar 15 22:45:33 2016 +0100 Now all certificates are signed with SHA512 instead of SHA1 gui/certificate_properties_dialog.ui | 33 ++++++++++++++++++++++++++++++++- src/certificate_properties.c | 3 +++ src/tls.c | 24 +++++++++++++++++++----- src/tls.h | 1 + 4 files changed, 55 insertions(+), 6 deletions(-) commit 1108eb894355927bc6d093c3b810fc64eb6f69cb Author: David Marín Carreño Date: Tue Mar 15 19:57:39 2016 +0100 Adding file to .gitignore .gitignore | 1 + 1 file changed, 1 insertion(+) commit 66efbc039409651643570d56f008211e63a7d500 Author: David Marín Carreño Date: Tue Mar 15 19:53:32 2016 +0100 Removing warnings due to variables set but not used configure.ac | 2 +- src/ca-cli-callbacks.c | 2 +- src/ca.c | 36 ++++++++++++++++-------------------- src/ca_file.c | 4 ++-- src/certificate_properties.c | 3 +-- src/crl.c | 10 ++++------ src/new_cert.c | 10 ++++------ src/new_req_window.c | 10 ++++------ src/tls.c | 10 ++++------ 9 files changed, 37 insertions(+), 50 deletions(-) commit a3dc8720912b0097c2880c4cab9ba35b11e2fd50 Author: David Marín Carreño Date: Tue Mar 15 19:25:07 2016 +0100 Adding support for SHA256 src/tls.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 3b937be3ff78e957718c69a3d2183d3fab158eed Author: David Marín Date: Tue Mar 15 19:21:00 2016 +0100 Update README README | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) commit ce6c59915ef6fe20c98a0c7c8c1f221249198f2c Author: David Marín Date: Thu Aug 6 21:40:23 2015 +0200 Fixing some problems with 'make dist'. Now it works ok Makefile.am | 17 +++++++++-------- configure.ac | 4 ++-- 2 files changed, 11 insertions(+), 10 deletions(-) commit 06938a9641de354deed63c1e9ce93f1695e2bd0b Author: David Marín Date: Thu Aug 6 20:20:20 2015 +0200 Fixing problems while compiling in Ubuntu 15.04 .gitignore | 8 +-- configure.ac | 2 +- m4/intltool.m4 | 213 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 3 files changed, 216 insertions(+), 7 deletions(-) commit 2ea691ecaf897a616a5e8cddfda075dc1981eb40 Author: David Marín Date: Thu Aug 6 20:06:17 2015 +0200 Fixing and update source code base so it compiles again... INSTALL | 250 +++++++++++++++++++++++++++++++++---------- Makefile.am | 21 +++- autogen.sh | 52 ++++++--- configure.ac | 13 +-- m4/Makefile.am | 2 +- m4/gettext.m4 | 96 ++++++++++------- m4/iconv.m4 | 164 +++++++++++++++++++++------- m4/intltool.m4 | 217 +------------------------------------ m4/progtest.m4 | 31 +++--- src/Makefile.am | 1 + src/ca-cli-callbacks.c | 61 ++++++----- src/ca_file.c | 2 - src/certificate_properties.c | 6 +- src/import.c | 18 ++-- src/pkey_manage.c | 2 +- src/tls.c | 6 +- 16 files changed, 506 insertions(+), 436 deletions(-) commit 29f551e01808928abf2f95f0b4d1dfd108225de8 Author: Kevin Zheng Date: Wed Feb 5 17:41:13 2014 -0600 Compile without -Werror. configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3d3e66ac53c9b82ded0e5974094888f0f44a047e Author: Kevin Zheng Date: Sun Jan 26 16:42:07 2014 -0600 Clean up deprecated functions. src/ca_creation.c | 47 ++++++++++++++++++++++------------------------- src/ca_file.c | 6 +++--- src/csr_creation.c | 47 ++++++++++++++++++++++------------------------- src/import.c | 2 +- src/main.c | 1 - 5 files changed, 48 insertions(+), 55 deletions(-) commit 4fae5bb2a5df0c3f67bfcb53c98e274c01579868 Author: Kevin Zheng Date: Sun Nov 24 12:23:38 2013 -0600 Clean up autotools and sort gitignore. .gitignore | 10 +-- Makefile.am | 2 +- configure.ac | 223 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ configure.in | 223 ----------------------------------------------------------- 4 files changed, 229 insertions(+), 229 deletions(-) commit 69d1de0e85df77bece4de0a1eeb2c8b08f649af7 Author: David Marín Date: Wed Aug 11 13:02:35 2010 +0200 Fixing bug #2931708. Now it is not possible to enter invalid DSA keylengths gui/new_ca_window.ui | 5 +---- gui/new_req_window.ui | 15 ++++++++------- src/ca-cli-callbacks.c | 9 +++++++-- src/new_ca_window.c | 24 ++++++++++++++++++++++++ src/new_req_window.c | 23 +++++++++++++++++++++++ 5 files changed, 63 insertions(+), 13 deletions(-) commit 891a4ac513c5445f919452a13b4bb4316be8ad98 Author: David Marín Date: Wed Aug 11 12:16:33 2010 +0200 Completing Spanish translation po/es.po | 285 +++++++++++++++++++++++++++++---------------------------- po/gnoMint.pot | 279 ++++++++++++++++++++++++++++--------------------------- 2 files changed, 287 insertions(+), 277 deletions(-) commit abf68cd278bcea59d1a2936212a8030cde637fa0 Author: David Marín Date: Wed Aug 11 12:14:53 2010 +0200 Adding SHA256 fingerprint gui/certificate_properties_dialog.ui | 39 ++++++++++++++++++++++++++++-------- src/ca-cli-callbacks.c | 1 + src/certificate_properties.c | 3 +++ src/tls.c | 14 +++++++++++++ src/tls.h | 1 + 5 files changed, 50 insertions(+), 8 deletions(-) commit f072fb063d253b6f6f029dff05f1044409fd6ff1 Author: David Marín Date: Wed Aug 11 11:19:44 2010 +0200 Adding oc.po file po/oc.po | 3349 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 3349 insertions(+) commit b763cbb860433308d4cfc6d4b5301c6b6fae976b Author: David Marín Date: Wed Aug 11 11:17:57 2010 +0200 Updating Changelog file ChangeLog | 6627 +++++++++++++++++-------------------------------------------- 1 file changed, 1797 insertions(+), 4830 deletions(-) commit 2dd2afe85c99637871113f4fa8d579fc2ccf18c7 Author: David Marín Date: Wed Aug 11 11:14:29 2010 +0200 Release 1.2.1 (aka 'All you need is a giant pacifier') configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 6e1fb1cbb9f9416176a12a914e2ddd05a3f3e70d Author: David Marín Date: Wed Aug 11 11:11:29 2010 +0200 Updating translations for all languages from Launchpad configure.in | 2 +- po/ca.po | 14 ++-- po/cs.po | 8 +- po/de.po | 4 +- po/fi.po | 2 +- po/fr.po | 6 +- po/it.po | 34 +++++--- po/pt_BR.po | 2 +- po/ru.po | 6 +- po/sk.po | 7 +- po/sv.po | 260 +++++++++++++++++++++++++++++++++++++---------------------- 11 files changed, 211 insertions(+), 134 deletions(-) commit 9aa80baf5a9293440479eff7d6cf0911268399af Author: David Marín Date: Wed Aug 11 10:50:13 2010 +0200 Completing Spanish translation po/es.po | 5684 +++++++++++++++++++++++++++----------------------------- po/gnoMint.pot | 1763 +++++------------- 2 files changed, 3260 insertions(+), 4187 deletions(-) commit 57b4c6c40ed700598465efa93502446fbfcc0b92 Author: David Marín Date: Wed Aug 11 10:49:03 2010 +0200 Improving warning message while revoking certificates. Adding a different message while revoking a CA certificate src/ca.c | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) commit 79729c74f82a1f69452ab5e350d1f4f6dc16800e Author: David Marín Date: Wed Aug 11 10:06:31 2010 +0200 Fixing crash when revoking a CA certificate, if revoked certificates were not visible src/ca.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) commit b0fa891567a40d2c6d1a9cb7450de5ee6a79e91f Author: David Marín Date: Wed Aug 11 09:32:33 2010 +0200 Fixing use of an already freed string in ca-cli-callbacks.c. Fixes RedHat Bugzilla #584069 src/ca-cli-callbacks.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3dd98ca24287ddda9c4802cc8397c9e82b449ac2 Author: David Marín Date: Tue Aug 10 18:58:54 2010 +0200 Version 1.2.0 configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit edbbbbfd3d50b93a220e035e027d98992c2a07ad Author: David Marín Date: Tue Aug 10 17:11:07 2010 +0200 Fixing bug #3006946 src/ca-cli-callbacks.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 6f5aef2d748f55c3d1c89a9eae3601f66c5ecc34 Author: David Marín Date: Tue Jun 1 22:13:22 2010 +0200 Completing .gitignore file .gitignore | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) commit ea6d09dc9556b98cba6dc68225b3c7621530d0c5 Author: David Marín Date: Tue Jun 1 21:53:51 2010 +0200 Uploading changes by Jaroslav Imrich, for Windows migration .gitignore | 8 ++++ AUTHORS | 2 +- src/ca_file.c | 93 ++++++++++++++++++++++++-------------------- src/ca_policy.c | 2 +- src/certificate_properties.c | 2 +- src/new_ca_window.c | 2 +- 6 files changed, 62 insertions(+), 47 deletions(-) commit f9e9789ead5d49caa144f0556c7c340cf50f1aea Author: David Marín Date: Tue Jun 1 21:41:19 2010 +0200 Commiting new patch for windows migration, by Jaroslav Imrich update-svncl.sh | 3 --- 1 file changed, 3 deletions(-) commit 66fed0ee8c132546f03072112693feac5088422c Author: David Marín Date: Tue Jun 1 20:10:22 2010 +0200 Fixing bug #3006946. Now CA policies can be established again src/ca_policy.c | 51 +++++++++++++++++++++++++++------------------------ 1 file changed, 27 insertions(+), 24 deletions(-) commit 1041015c248f05622311e3dde2b394c4c3e1ed33 Author: David Marín Date: Tue Jun 1 19:28:06 2010 +0200 Adding execute permissions autogen.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) commit 7ebea2e4d9923d7ab0b442b1c4134af659b76662 Author: davefx Date: Thu Apr 1 22:35:21 2010 +0000 Updating translations from Launchpad. Added new Slovak translation (thanks to Jaroslav Imrich) configure.in | 2 +- po/ca.po | 58 +- po/de.po | 548 ++++++---- po/fr.po | 31 +- po/it.po | 606 ++++++----- po/sk.po | 3389 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 4151 insertions(+), 483 deletions(-) commit 4f4c95e3024481267af5440f2d815986afc877b1 Author: davefx Date: Mon Mar 29 09:06:18 2010 +0000 Adding Microsoft Windows support (patch contributed by Jaroslav Imrich) AUTHORS | 1 + configure.in | 1 + src/ca-cli-callbacks.c | 65 ++++++++++++++++++++++++++++++++++++++----- src/ca.c | 52 +++++++++++++++++++--------------- src/ca_policy.c | 6 ++-- src/certificate_properties.c | 45 ++++++++++++++++++++++++++---- src/creation_process_window.c | 2 +- src/crl.c | 6 ++-- src/csr_properties.c | 2 +- src/dialog.c | 25 ++++++++++++++++- src/dialog.h | 4 +++ src/main.c | 12 ++++---- src/new_ca_window.c | 24 ++++++++++------ src/new_cert.c | 24 ++++++++++------ src/new_req_window.c | 16 +++++------ src/pkey_manage.c | 8 +++++- src/preferences-window.c | 4 +-- 17 files changed, 219 insertions(+), 78 deletions(-) commit 9c332963d9225eff9a5117e20b06d4690bde9227 Author: davefx Date: Tue Feb 16 22:27:13 2010 +0000 Fixing bug in export from menu gui/main_window.ui | 1 + 1 file changed, 1 insertion(+) commit 5e362e2f9efdbb86468734ab2a2c29b97fcc951c Author: davefx Date: Mon Nov 9 21:11:22 2009 +0000 Committing support for CRL distribution points ChangeLog | 7 ++ gui/certificate_properties_dialog.ui | 115 ++++++++++++++++------- gui/new_ca_window.ui | 175 +++++++++++------------------------ src/ca-cli-callbacks.c | 127 ++++++++++++------------- src/ca_creation.c | 4 +- src/ca_file.c | 121 +++++++++++++++++------- src/ca_file.h | 6 +- src/ca_policy.c | 111 +++++++++++++++------- src/crl.c | 2 +- src/new_ca_window.c | 19 ++-- src/new_cert.c | 44 ++++----- src/tls.c | 30 +++++- src/tls.h | 10 +- update-svncl.sh | 2 +- 14 files changed, 447 insertions(+), 326 deletions(-) commit bfc3255bfd6ce76bdd10dd54cc7dc8629b123178 Author: davefx Date: Sun Nov 8 11:43:43 2009 +0000 Updating changelog ChangeLog | 9 +++++++++ 1 file changed, 9 insertions(+) commit 0e29b1f7810c0282e14833df74c720e0ab997e1d Author: davefx Date: Sun Nov 8 11:42:49 2009 +0000 Releasing version 1.1.0 ChangeLog | 4771 ++++++++++++++++++++++++++++++++++++++++++++++++---------- configure.in | 3 +- 2 files changed, 3951 insertions(+), 823 deletions(-) commit c8d447c6b9becc0104b74d4625d1c3b90d0759a0 Author: davefx Date: Sun Nov 8 11:36:50 2009 +0000 Fixing problems in Spanish translation. Please, translators: don't translate gettext comments po/es.po | 135 +++++++++++++++++++++++++++++---------------------------------- 1 file changed, 62 insertions(+), 73 deletions(-) commit b6ccb3db0817f632dd79a886e116f6f9587ec273 Author: davefx Date: Sun Nov 8 11:22:26 2009 +0000 Updating translations from Launchpad. Thanks to all the translators po/ca.po | 7 +- po/cs.po | 25 +- po/es.po | 26 +- po/fr.po | 1327 +++++++++++++++++++++++++++++++++++--------------------------- po/it.po | 41 +- 5 files changed, 814 insertions(+), 612 deletions(-) commit d1f022af20e465d4333c00e24273c15a01e394b2 Author: davefx Date: Sun Nov 8 11:12:56 2009 +0000 Fixing gnoMint bug #2890061: gnomint-cli showpolicy command was failing with invalid ca-id message. src/ca-cli-callbacks.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit deef20d29975141b47a144ae435302cf1b26a16f Author: davefx Date: Sun Nov 8 10:57:15 2009 +0000 Adding libgcrypt in configure, resolving Debian bug #554669 configure.in | 10 ++++++++++ src/Makefile.am | 2 ++ 2 files changed, 12 insertions(+) commit 7491d9884b46299e2afca7fdab5724c59e22c83d Author: davefx Date: Sun Nov 8 08:10:30 2009 +0000 Building hierarchical tree using node routes instead of names ChangeLog | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ src/ca.c | 63 +++++++++++++++++++++++++++++++++++++++++++-------------------- 2 files changed, 93 insertions(+), 20 deletions(-) commit eedd45c73f359bd7a5b2e35596629f047f63ab1d Author: davefx Date: Sun Nov 8 07:16:44 2009 +0000 Fixing problem when there's a duplicate in common name. src/ca_file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit c5b96361044ec82b7f3c2f7ec790afe2cd057e25 Author: davefx Date: Sat Nov 7 07:51:44 2009 +0000 Fixed problems about spinbuttons generated in gtk-ui-manager conversion gui/certificate_properties_dialog.ui | 18 ++++++++++++++++++ gui/dh_parameters_dialog.ui | 10 +++++++++- gui/new_ca_window.ui | 33 ++++++++++++++++++++++++++------- gui/new_cert_window.ui | 10 +++++++++- gui/new_req_window.ui | 10 +++++++++- 5 files changed, 71 insertions(+), 10 deletions(-) commit b3c3fa506bccd885c446d012df72377352145990 Author: davefx Date: Sat Nov 7 07:51:03 2009 +0000 Avoiding SIGSEGV whenever there's a problem obtaining last assigned serial number src/ca_file.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) commit 16c1d04431eb64c9b3ff1b16e7ba418f79cfa730 Author: davefx Date: Sat Nov 7 06:34:13 2009 +0000 Adding string.h include for allow compiling in CentOS 5 src/dialog.c | 1 + 1 file changed, 1 insertion(+) commit 4a59653b60cb0d5d6252454b7a98689e330fc144 Author: davefx Date: Sun Oct 11 21:17:32 2009 +0000 Adding Catalan translation. Updating translation from Launchpad.net configure.in | 2 +- po/ca.po | 3574 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ po/cs.po | 149 +-- po/de.po | 344 +++--- po/es.po | 209 ++-- po/fi.po | 150 ++- po/fr.po | 1533 ++++++++++++------------- po/it.po | 187 +-- po/pt_BR.po | 150 ++- po/ru.po | 433 +++---- po/sv.po | 231 ++-- 11 files changed, 5352 insertions(+), 1610 deletions(-) commit 593b4ca0cdc47e6988ac2283524863a9577eec90 Author: davefx Date: Sun Oct 11 21:16:21 2009 +0000 Correcting loading of popup src/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d8c18580303626551d3d57e5a492954ead4a0e22 Author: davefx Date: Sun Oct 11 11:04:59 2009 +0000 Migrating from libglade to GtkBuilder configure.in | 4 +- gui/Makefile.am | 26 +- gui/certificate_popup_menu.ui | 77 + gui/certificate_properties_dialog.ui | 1320 +++++++ gui/change_password_dialog.ui | 236 ++ gui/creation_process_window.ui | 104 + gui/csr_popup_menu.ui | 84 + gui/csr_properties_dialog.ui | 245 ++ gui/dh_parameters_dialog.ui | 124 + gui/export_certificate_dialog.ui | 217 ++ gui/get_db_password_dialog.ui | 152 + gui/get_password_dialog.ui | 146 + gui/get_pkey_dialog.ui | 158 + gui/gnomint.glade | 6247 -------------------------------- gui/import_file_or_directory_dialog.ui | 155 + gui/import_password_dialog.ui | 163 + gui/main_window.ui | 511 +++ gui/new_ca_window.ui | 828 +++++ gui/new_cert_window.ui | 903 +++++ gui/new_crl_dialog.ui | 113 + gui/new_req_window.ui | 735 ++++ gui/preferences_dialog.ui | 91 + po/POTFILES.in | 20 +- src/ca.c | 493 +-- src/ca_policy.c | 196 +- src/certificate_properties.c | 70 +- src/country_table.c | 2 +- src/creation_process_window.c | 118 +- src/crl.c | 37 +- src/csr_properties.c | 44 +- src/dialog.c | 44 +- src/import.c | 34 +- src/main.c | 51 +- src/main.h | 2 +- src/new_ca_window.c | 68 +- src/new_cert.c | 334 +- src/new_req_window.c | 79 +- src/pkey_manage.c | 104 +- src/preferences-window.c | 26 +- 39 files changed, 7239 insertions(+), 7122 deletions(-) commit 06b3c4b887ef3e4da1fdebf141aa0cb510b89303 Author: davefx Date: Fri Jun 5 20:27:15 2009 +0000 Fixing bug in configure.in that affected Slackware systems configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 4bb32e14a26a844e594cace35b13e3a7cb8ae223 Author: davefx Date: Wed Jun 3 21:23:19 2009 +0000 Updating intltool.m4 m4/intltool.m4 | 64 ++++++++++++++++++++++++++++++++++++---------------------- 1 file changed, 40 insertions(+), 24 deletions(-) commit 9692ccd102531b44ad8a9044f16f7e2c57a98018 Author: davefx Date: Wed Jun 3 21:19:38 2009 +0000 Uploading updated Changelog ChangeLog | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) commit bf7aa2fd43aab517d860236c5e765f6f203befe0 Author: davefx Date: Wed Jun 3 21:17:18 2009 +0000 Uploading change to version 1.0.0 configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 12d55fae850e62a040a67f180e95a516920b2884 Author: davefx Date: Wed Jun 3 21:15:04 2009 +0000 Committing last Russian translation, by aquanaut po/ru.po | 452 ++++++++++++++++++++++++++++++--------------------------------- 1 file changed, 213 insertions(+), 239 deletions(-) commit 9a9ccf85fe678f5f66261325c9e33e2c0dfca426 Author: davefx Date: Wed Jun 3 21:11:37 2009 +0000 Updating template and Spanish translation po/es.po | 144 ++++++++++++++++++++++++++++++++++----------------------- po/gnoMint.pot | 106 ++++++++++++++++++++++++------------------ 2 files changed, 147 insertions(+), 103 deletions(-) commit ec8260c497fd1f36f6aefd25c069c53c4ec5f3db Author: davefx Date: Wed Jun 3 21:06:17 2009 +0000 Checking if new cert expiration date is after the CA expiration date. In that case, show an info message and set the new cert expiration date to the CA expiration date. src/new_cert.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) commit c5a7b452c160ef3a6d5f30fdd5bda102dac7d22f Author: davefx Date: Wed Jun 3 21:04:55 2009 +0000 Fixing compile error if GNUTLS_VERSION < 2.8 src/tls.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit ee17efc672d350eaf52c63ed07eff4ea7c0718d6 Author: davefx Date: Wed Jun 3 21:04:15 2009 +0000 Adding new function dialog_info for showing information messages src/dialog.c | 23 +++++++++++++++++++++++ src/dialog.h | 1 + 2 files changed, 24 insertions(+) commit 7abbb8192fbe7dd98b6a0dc9df7254739c33ba81 Author: davefx Date: Wed Jun 3 20:30:21 2009 +0000 Enabling compilation with GnuTLS 2.8.0 (Fix provided by anonymous contributor in Sourceforge) src/ca-cli-callbacks.c | 2 +- src/tls.c | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) commit c866228a8d79ce1b8844eddaebed155685942fb2 Author: davefx Date: Tue May 5 18:51:55 2009 +0000 Adding forgotten crlgen function to gnomint-cli src/ca-cli.c | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) commit c6b07378637b93438812705c30eed2ec96db27ef Author: davefx Date: Tue May 5 18:42:53 2009 +0000 Correcting some Spanish .po file bugs po/es.po | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) commit 0ba6df3d6541ef9a14a4f1f0f5758bf609d62b96 Author: davefx Date: Tue May 5 18:10:10 2009 +0000 Making a string translatable ChangeLog | 29 +++++++++++++++++++++++++++++ po/es.po | 10 +++++++++- po/gnoMint.pot | 8 +++++++- src/csr_properties.c | 2 +- 4 files changed, 46 insertions(+), 3 deletions(-) commit e1c18519af09d7d83ca84de6b6548f32135b8655 Author: davefx Date: Mon May 4 18:45:41 2009 +0000 Updating TODO list TODO | 156 ++++++------------------------------------------------------------- 1 file changed, 14 insertions(+), 142 deletions(-) commit 769136c6c693581549f8f89504717f28c1bb19d7 Author: davefx Date: Sat Apr 18 06:50:43 2009 +0000 Updating pot file and merging with all translations before uploading to Launchpad po/cs.po | 1340 ++++++++++++++++++++++++++----------------------- po/de.po | 1342 ++++++++++++++++++++++++++----------------------- po/es.po | 2 +- po/fi.po | 1345 ++++++++++++++++++++++++++----------------------- po/fr.po | 1392 ++++++++++++++++++++++++++++----------------------- po/gnoMint.pot | 2 +- po/it.po | 1350 ++++++++++++++++++++++++++----------------------- po/pt_BR.po | 1345 ++++++++++++++++++++++++++----------------------- po/ru.po | 1520 +++++++++++++++++++++++++++++++------------------------- po/sv.po | 1388 ++++++++++++++++++++++++++++----------------------- 10 files changed, 5995 insertions(+), 5031 deletions(-) commit 102f24799e3f85c9227013d54bad938a30e29f68 Author: davefx Date: Sat Apr 18 06:36:50 2009 +0000 Updating Slovak and Spanish translations po/es.po | 4 ++-- po/sv.po | 19 ++++++++++++++++--- 2 files changed, 18 insertions(+), 5 deletions(-) commit 464fecf7189472f5e2bc5c99cc47526dc9a82bd5 Author: davefx Date: Sat Apr 18 06:35:14 2009 +0000 Adding new Russian and Finnish translations configure.in | 2 +- po/fi.po | 3209 ++++++++++++++++++++++++++++++++++++++++++++++++++++ po/ru.po | 3539 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 6749 insertions(+), 1 deletion(-) commit b4fb91de645f7cbb73423b0bcb9ae96cbd012068 Author: davefx Date: Mon Mar 23 19:09:58 2009 +0000 Correcting error while adding a csr gui/gnomint.glade | 1 + 1 file changed, 1 insertion(+) commit 817e99945cad1af844f2853cec2e9218fed8deb6 Author: davefx Date: Fri Mar 20 15:48:40 2009 +0000 Upgrading Spanish translation gui/gnomint.glade | 89 +++- po/POTFILES.in | 2 +- po/es.po | 1368 +++++++++++++++++++++++++++++------------------------ po/gnoMint.pot | 1318 ++++++++++++++++++++++++++++----------------------- 4 files changed, 1527 insertions(+), 1250 deletions(-) commit ca5646e7c95c409499920d6357d8e66c6d78d3f4 Author: davefx Date: Fri Mar 20 10:07:17 2009 +0000 Preparing 0.9.9 version. Making Glade file fully GTK+-2.10 compliant configure.in | 3 +- gui/gnomint.glade | 1187 +++++++++++++++++++++++++++++++++-------------------- 2 files changed, 750 insertions(+), 440 deletions(-) commit 6554fbc5778cf5ebd7ce71689a11d61a096497c9 Author: davefx Date: Tue Mar 17 18:50:30 2009 +0000 Correcting behaviour when problems while opening, saving or creating file. Now the last open file is always reopened src/ca.c | 73 -------------- src/ca_file.c | 298 ++++++++++++++++++++++++++++++---------------------------- src/main.c | 76 ++++++++++++++- 3 files changed, 231 insertions(+), 216 deletions(-) commit d40685bd44ba39b5e631b31d2039f707a74699b1 Author: davefx Date: Mon Mar 16 18:25:56 2009 +0000 Disabling Properties option when there is no item selected doc/gnomint-db.dia | Bin 4000 -> 3999 bytes src/ca.c | 11 ++++++++++- src/pkey_manage.h | 1 - 3 files changed, 10 insertions(+), 2 deletions(-) commit 233273d89e03bbf902eb7bd1dc4cb18559d8ff7d Author: davefx Date: Tue Mar 10 19:14:26 2009 +0000 Moving some callbacks from main.c to ca.c ChangeLog | 233 ++++++++ gui/gnomint.glade | 1653 +++++++++++++++++++++++++++-------------------------- src/ca.c | 224 ++++++++ src/gnomint-cli.c | 1 - src/main.c | 233 +------- 5 files changed, 1286 insertions(+), 1058 deletions(-) commit b6d5ca92db1be139143d08d3a8464a47adcb2839 Author: davefx Date: Sat Mar 7 12:23:13 2009 +0000 Adding functional toolbar. Fixing bug: extract private key action was enabled and never disabled afterwards (while a selected element exists) gui/Makefile.am | 6 +- gui/addca.png | Bin 0 -> 1153 bytes gui/addcsr.png | Bin 0 -> 1098 bytes gui/extractpkey.png | Bin 0 -> 1114 bytes gui/gnomint.glade | 1781 +++++++++++++++++++++++++++------------------------ gui/sign.png | Bin 0 -> 1283 bytes po/POTFILES.in | 2 +- src/ca.c | 39 +- 8 files changed, 991 insertions(+), 837 deletions(-) commit 4e5a48320d0e0aaa9b320fa2099ceaa09c4c4362 Author: davefx Date: Sun Mar 1 09:07:29 2009 +0000 Renaming new_cert_window by new_cert src/Makefile.am | 6 +- src/ca-cli-callbacks.c | 4 +- src/ca.c | 2 +- src/main.c | 2 +- src/new_cert.c | 860 +++++++++++++++++++++++++++++++++++++++++++++++++ src/new_cert.h | 48 +++ src/new_cert_window.c | 860 ------------------------------------------------- src/new_cert_window.h | 48 --- 8 files changed, 915 insertions(+), 915 deletions(-) commit 47848b6d087ce9ea9a855092bb739db0e708ee13 Author: davefx Date: Sun Mar 1 09:01:02 2009 +0000 Fixing compile error src/export.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit a740a936768e4d6566f72892ae9789153646a0bc Author: davefx Date: Sun Mar 1 08:01:16 2009 +0000 Adding protection: export_pkcs12 shouldn't be called for exporting CSR information. src/export.c | 2 ++ 1 file changed, 2 insertions(+) commit 2a1122fa9e7da6bc52478177f29309dffe85b192 Author: davefx Date: Sun Mar 1 07:38:39 2009 +0000 Fixing error while exporting private key of CSRs to PKCS#8 format: we were exporting a certificate private key instead of the CSR private key. src/export.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) commit e204f6871a0879a82e80d8b7b981a9bcf8878e2e Author: davefx Date: Sat Feb 28 11:51:47 2009 +0000 Correcting bug: while importing a CA certificate, if it has children in the database, its grand-children get also the correct parent-route. In that case too, corrected a possible segv in the parent-route assignation to children. src/ca_file.c | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) commit a0166fd20b790ec93da214c623a23d2cad4abddb Author: davefx Date: Sat Feb 28 07:42:34 2009 +0000 If the private key is not known by the application, you cannot export it into a PKCS#12 src/ca.c | 2 ++ 1 file changed, 2 insertions(+) commit 5be26fe2a561d28a4e83bd4c2859060648403cc9 Author: davefx Date: Mon Feb 23 21:34:32 2009 +0000 Making uint160_write a platform_independent function. Correcting uint160_strdup_printf. src/uint160.c | 118 ++++++++++++++++++++++++++++++++++++---------------------- src/uint160.h | 2 +- 2 files changed, 74 insertions(+), 46 deletions(-) commit 23b75ab8a12d483f4b08e2404c758cdbb185fce3 Author: davefx Date: Mon Feb 23 18:30:45 2009 +0000 Resolving bug about cyphered private key exports src/export.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit e4fb4f57384641662496e7a8209f86b7b2b2541d Author: davefx Date: Mon Feb 23 18:28:04 2009 +0000 Resolving bug about cyphered private key exports src/ca.c | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) commit bcdd77074911387645d99780d1e3b923465d3406 Author: davefx Date: Sat Feb 21 16:26:48 2009 +0000 New method for ciphering passwords and private keys. More secure, it does not reutilize the same initial vector nor initial counter. Keeping compatibility with old method. New passwords and keys will be ciphered using the new method. It is recommended change database password, so all the private keys are reciphered using the new method. (Dummy upload. The actual change was in the previous commit) src/pkey_manage.c | 1 + 1 file changed, 1 insertion(+) commit c4a3f87bd9453c0b6163e40003426eaae7617d86 Author: davefx Date: Sat Feb 21 16:23:13 2009 +0000 Now, when a db is password-unprotected, the password entry is reset and it is not removed src/ca_file.c | 2 +- src/pkey_manage.c | 185 ++++++++++++++++++++++++++++++++++++++++++++++-------- 2 files changed, 159 insertions(+), 28 deletions(-) commit c52055394d58d140724888c31fbb68f6cfd9bbba Author: davefx Date: Sat Feb 21 14:29:05 2009 +0000 Removing SQL syntax error src/ca_file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit b61643272282d893303ffbb0458e8cc3e1af6a2e Author: davefx Date: Sat Feb 14 11:01:01 2009 +0000 Removing libgnomeui dependence configure.in | 1 - 1 file changed, 1 deletion(-) commit 8075f5cf5ff8ff81fc4334f219ec9bd853d8e9e4 Author: davefx Date: Tue Feb 10 19:22:31 2009 +0000 Replacing ca_policy_[sg]et with ca_file_policy_[sg]et, and removing extra dependences src/ca-cli-callbacks.c | 63 +++++++++++++++++------------------ src/ca_policy.c | 90 ++++++++++++++++++++++---------------------------- src/ca_policy.h | 6 ---- src/crl.c | 3 +- src/new_ca_window.c | 1 - src/new_cert_window.c | 43 ++++++++++++------------ src/new_req_window.c | 1 - 7 files changed, 92 insertions(+), 115 deletions(-) commit 5c1908e02033cb550f78f3ecad53766d0703d330 Author: davefx Date: Wed Feb 4 19:33:25 2009 +0000 When the DB is password-unprotected, delete the property with the old password from the DB src/ca_file.c | 7 +++++++ 1 file changed, 7 insertions(+) commit e6a5326139652d1704b654ae8ed7a61da78f3548 Author: davefx Date: Tue Feb 3 18:55:18 2009 +0000 Fixing bug while upgrading password-protected database src/ca_file.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) commit bacb2b41690f6f77824ccbffa9d59700e32bb0c1 Author: davefx Date: Sat Jan 31 15:56:51 2009 +0000 Removing table ca_properties. Adding new table db_properties, and view ca_properties for keeping backward/forward compatibility src/ca_file.c | 180 +++++++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 133 insertions(+), 47 deletions(-) commit 397ef8b335286cc871bf00c32ac18792bf888183 Author: davefx Date: Sat Jan 17 12:30:26 2009 +0000 Advancing in cleaning of dependences src/Makefile.am | 2 + src/country_table.c | 565 ++++++++++++++++++++++++++++++++++++++++++++++++++ src/country_table.h | 26 +++ src/main.c | 4 + src/new_ca_window.c | 536 +---------------------------------------------- src/new_ca_window.h | 3 - src/new_req_window.c | 13 +- src/preferences-gui.c | 22 +- src/preferences-gui.h | 6 + 9 files changed, 624 insertions(+), 553 deletions(-) commit 7c0a8bd995b889e9fc587940f1302e93bb0a3eb4 Author: davefx Date: Fri Jan 16 20:31:22 2009 +0000 Cleaning up the code a little more src/ca-cli-callbacks.c | 15 +++++----- src/ca_creation.c | 45 +++++++---------------------- src/ca_creation.h | 60 ++------------------------------------ src/ca_file.c | 39 ++++++++++++------------- src/ca_file.h | 14 ++++----- src/creation_process_window.c | 4 +-- src/creation_process_window.h | 6 ++-- src/csr_creation.c | 15 +++++----- src/csr_creation.h | 4 +-- src/import.c | 23 ++------------- src/new_ca_window.c | 5 ++-- src/new_cert_window.c | 13 ++++----- src/new_cert_window.h | 2 +- src/new_req_window.c | 5 ++-- src/pkey_manage.c | 4 +-- src/pkey_manage.h | 2 +- src/tls.c | 36 +++++++++++++++++++---- src/tls.h | 67 +++++++++++++++++++++++++++++++++++++++---- 18 files changed, 169 insertions(+), 190 deletions(-) commit 84ed0e29dd8eb273fb4a1799e6506daba752397d Author: davefx Date: Wed Jan 14 19:44:27 2009 +0000 Removing unneeded dependences src/new_cert_window.c | 1 - 1 file changed, 1 deletion(-) commit 79eb88ee2d3802a9f4e916d8d9bbcfaaddfb7e14 Author: davefx Date: Wed Jan 14 19:34:35 2009 +0000 Removing dependences from ca.c src/ca.c | 197 ++++++++---------------------------------- src/creation_process_window.c | 2 - src/export.c | 142 ++++++++++++++++++++++++++++++ src/export.h | 3 + src/new_ca_window.c | 1 - src/new_req_window.c | 1 - 6 files changed, 180 insertions(+), 166 deletions(-) commit 916c1f7ec3b542c289927fb2f1f821598b3881b5 Author: davefx Date: Tue Jan 13 20:14:05 2009 +0000 Updating Copyright date. Removing dependence of ca.[ch] because of only ca_refresh_list. configure.in | 2 +- src/ca-cli-callbacks.c | 2 +- src/ca-cli-callbacks.h | 2 +- src/ca-cli.c | 2 +- src/ca-cli.h | 2 +- src/ca.c | 21 +++++++++++---------- src/ca.h | 4 ++-- src/ca_creation.c | 2 +- src/ca_creation.h | 2 +- src/ca_file.c | 2 +- src/ca_file.h | 2 +- src/ca_policy.c | 2 +- src/ca_policy.h | 2 +- src/certificate_properties.c | 2 +- src/certificate_properties.h | 2 +- src/creation_process_window.c | 8 ++++---- src/creation_process_window.h | 2 +- src/crl.c | 2 +- src/crl.h | 2 +- src/csr_creation.c | 2 +- src/csr_creation.h | 2 +- src/csr_properties.c | 2 +- src/csr_properties.h | 2 +- src/dialog.c | 15 ++++++++++++++- src/dialog.h | 6 +++++- src/gnomint-cli.c | 2 +- src/import.c | 7 +++---- src/import.h | 2 +- src/main.c | 5 ++++- src/main.h | 2 +- src/new_ca_window.c | 2 +- src/new_ca_window.h | 2 +- src/new_cert_window.c | 13 ++++++++----- src/new_cert_window.h | 4 ++-- src/new_req_window.c | 2 +- src/new_req_window.h | 2 +- src/pkey_manage.c | 2 +- src/pkey_manage.h | 2 +- src/preferences-gui.c | 2 +- src/preferences-gui.h | 2 +- src/preferences-window.c | 2 +- src/preferences-window.h | 2 +- src/preferences.c | 2 +- src/preferences.h | 2 +- src/tls.c | 2 +- src/tls.h | 2 +- src/uint160.c | 2 +- src/uint160.h | 2 +- 48 files changed, 92 insertions(+), 69 deletions(-) commit aa87cdefc5ae04c8232d835dbd1d5e502885b2e6 Author: davefx Date: Mon Jan 12 21:18:48 2009 +0000 Tidying up the code a litte bit src/creation_process_window.c | 74 +++++++++++++++++++++---------------------- src/creation_process_window.h | 25 +++++++-------- 2 files changed, 49 insertions(+), 50 deletions(-) commit 5eccbb32db4c31fad6c58aa2307ea7ae12539215 Author: davefx Date: Mon Jan 12 21:15:08 2009 +0000 Tidying up the code a litte bit gui/gnomint.glade | 6 +++--- po/POTFILES.in | 4 +++- src/Makefile.am | 4 ++-- src/new_ca_window.c | 4 ++-- src/new_cert_window.c | 1 - src/new_req_window.c | 4 ++-- 6 files changed, 12 insertions(+), 11 deletions(-) commit a5b89ae98d616489838be8ba77e996580f9426a3 Author: davefx Date: Mon Jan 12 20:41:11 2009 +0000 Renaming source file... src/creation_process_window.h | 39 +++++++++++++++++++++++++++++++++++++++ src/new_cert_creation_process.h | 39 --------------------------------------- 2 files changed, 39 insertions(+), 39 deletions(-) commit 2be80dbf1a92dff873e59dd6fd96662ae6900417 Author: davefx Date: Mon Jan 12 20:39:18 2009 +0000 Renaming source file... src/creation_process_window.c | 287 ++++++++++++++++++++++++++++++++++++++++ src/new_cert_creation_process.c | 287 ---------------------------------------- 2 files changed, 287 insertions(+), 287 deletions(-) commit 0afc49fd87c250c72a42fe1039bb82605f67565f Author: davefx Date: Sun Jan 4 20:56:54 2009 +0000 Uploading new translations from Launchpad configure.in | 2 +- po/cs.po | 2111 ++++++++++++++++++++++++++++++++------ po/de.po | 2098 ++++++++++++++++++++++++++++++++------ po/fr.po | 1950 ++++++++++++++++++++++++++++++----- po/it.po | 2114 ++++++++++++++++++++++++++++++++------ po/pt_BR.po | 3217 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ po/sv.po | 2188 ++++++++++++++++++++++++++++++++------- 7 files changed, 12089 insertions(+), 1591 deletions(-) commit 49c2d5da78359385d48b1bcc594c66932051bc76 Author: davefx Date: Fri Jan 2 17:21:02 2009 +0000 Refactoring some functions src/Makefile.am | 13 +- src/ca-callbacks.c | 1486 ----------------------------------------------- src/ca-callbacks.h | 49 -- src/ca-cli-callbacks.c | 1488 ++++++++++++++++++++++++++++++++++++++++++++++++ src/ca-cli-callbacks.h | 49 ++ src/ca-cli.c | 262 ++------- src/ca-cli.h | 31 - src/ca.c | 272 ++------- src/ca.h | 8 - src/ca_file.c | 6 +- src/ca_file.h | 4 +- src/crl.c | 4 +- src/dialog.c | 337 +++++++++++ src/dialog.h | 55 ++ src/export.c | 131 +++++ src/export.h | 31 + src/import.c | 43 +- src/new_cert_window.c | 15 +- src/pkey_manage.c | 16 +- 19 files changed, 2212 insertions(+), 2088 deletions(-) commit db93d07babe808df5f39684839e306b84fed1e45 Author: davefx Date: Thu Dec 25 22:16:57 2008 +0000 Reverting error AUTHORS | 4 +++- m4/intltool.m4 | 72 ++++++++++++++++------------------------------------------ 2 files changed, 22 insertions(+), 54 deletions(-) commit 889ffd69e371bbd45242449bb420e8d0414a6b44 Author: davefx Date: Thu Dec 25 22:13:02 2008 +0000 Removing files problematic while compiling in Ubuntu 8.04 AUTHORS | 4 +- m4/intltool.m4 | 72 +- m4/libtool.m4 | 7325 ----------------------------------------------------- m4/ltoptions.m4 | 368 --- m4/ltsugar.m4 | 123 - m4/ltversion.m4 | 23 - m4/lt~obsolete.m4 | 92 - 7 files changed, 54 insertions(+), 7953 deletions(-) commit 547047afd4d4a024bb8baa889cb97e588f3969d9 Author: davefx Date: Mon Dec 22 10:29:02 2008 +0000 Improving OpenSSL import. Now, it is less restrictive. src/import.c | 182 +++++++++++++++++++++++++++++++++++------------------------ 1 file changed, 108 insertions(+), 74 deletions(-) commit 35a9f061d81bd56c6d5c47bc7c558bc2fc036e4f Author: davefx Date: Thu Dec 18 06:39:08 2008 +0000 Updating to version 0.9.1 ChangeLog | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) commit b38471aeb99db976859ae5c648779f8da27785ad Author: davefx Date: Thu Dec 18 06:38:31 2008 +0000 Updating to version 0.9.1 configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 46c63bfd7c96fbab5cc73e4eaa98bcab3aa82cb7 Author: davefx Date: Thu Dec 18 06:37:36 2008 +0000 Fixing a missing include that made gnoMint to not compile over OpenSUSE. src/ca-callbacks.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit f5e273aa2a65a0c492fa75ae42d0694d136b1c51 Author: davefx Date: Tue Dec 16 06:46:30 2008 +0000 Updating changelog for 0.9.0 ChangeLog | 8 ++++++++ 1 file changed, 8 insertions(+) commit eaac52e7851f2c13926a2d829f047d47bb0c12c9 Author: davefx Date: Tue Dec 16 06:45:04 2008 +0000 Getting ready for version 0.9.0. Spanish translation updated. Adding Ahmed Bazid and Staněk Luboš as authors. Changing method for showing AUTHORS (it was wrong). AUTHORS | 2 + ChangeLog | 108 +++++ configure.in | 5 +- po/es.po | 1314 ++++++++++++++++++++++++++++++++++++++++---------------- po/gnoMint.pot | 1166 +++++++++++++++++++++++++++++++++++-------------- src/ca-cli.c | 3 +- src/main.c | 10 +- 7 files changed, 1916 insertions(+), 692 deletions(-) commit fce608f2d2be6f33c5a723585426c92511531553 Author: davefx Date: Sun Dec 14 20:36:13 2008 +0000 gnoMint-cli commands completed src/Makefile.am | 1 + src/ca-callbacks.c | 143 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 143 insertions(+), 1 deletion(-) commit ecbbd0ba5631d64b49211204e430a441cef85308 Author: davefx Date: Sun Dec 14 10:04:49 2008 +0000 Implemented gnomint-cli addcsr function. Only addca left\! src/Makefile.am | 1 + src/ca-callbacks.c | 198 ++++++++++++++++++++++++++++++++++++++++++++++++----- src/ca-cli.c | 50 ++++++++++++-- src/ca-cli.h | 1 + 4 files changed, 226 insertions(+), 24 deletions(-) commit 54027084d900da1f6cfe19168fff0123ad6a2c97 Author: davefx Date: Sat Dec 13 07:55:37 2008 +0000 Completing gnomint command line interface. Missing only addca and addcsr src/Makefile.am | 1 + src/ca-callbacks.c | 336 ++++++++++++++++++++++++++++++++++++++++++++++++++--- src/ca-cli.c | 9 +- src/ca-cli.h | 2 +- src/ca_file.c | 54 +++++++++ src/ca_file.h | 6 + src/ca_policy.c | 2 +- src/import.c | 24 +++- src/tls.c | 17 +++ src/tls.h | 2 + 10 files changed, 433 insertions(+), 20 deletions(-) commit 5055924c275800c6772602a1ca077eb100edb6ed Author: davefx Date: Fri Dec 12 07:59:00 2008 +0000 Correcting string while importing whole directory. src/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d71b0bcf65a439af69c78885aec668463332632a Author: davefx Date: Fri Dec 12 00:01:18 2008 +0000 Adding delete, crlgen, dhgen, and changepassword gui/gnomint.glade | 2 +- po/es.po | 880 +++++++++++++++++++++++++++++++++------- po/gnoMint.pot | 817 +++++++++++++++++++++++++++++++------ src/Makefile.am | 3 + src/ca-callbacks.c | 422 ++++++++----------- src/ca-cli.c | 24 +- src/ca-cli.h | 1 + src/ca.c | 272 +++++++------ src/ca.h | 19 +- src/crl.c | 100 +++-- src/crl.h | 4 + src/new_ca_window.h | 5 + src/new_cert_creation_process.h | 3 +- src/new_cert_window.c | 88 ++-- src/new_cert_window.h | 7 + src/new_req_window.h | 3 +- 16 files changed, 1891 insertions(+), 759 deletions(-) commit a6b9f67f656bd81d896e1f03aa286726b57593b9 Author: davefx Date: Thu Dec 11 13:49:37 2008 +0000 Implementing more features in Command-Line Interface po/es.po | 10 +- src/Makefile.am | 1 + src/ca-callbacks.c | 676 ++++++++++++++++++++++++++++++++++++++++++++++++++++- src/ca-cli.c | 130 ++++++++++- src/ca-cli.h | 4 + src/ca.c | 100 ++++---- src/ca_file.c | 36 ++- src/ca_file.h | 35 +++ src/ca_policy.c | 19 +- src/main.c | 8 +- src/pkey_manage.c | 83 ++++++- 11 files changed, 1011 insertions(+), 91 deletions(-) commit 5e38f33b3580e4f41c7baed7d9cf017c89c68998 Author: davefx Date: Wed Dec 10 18:17:43 2008 +0000 Upgrading GNUTLS_ADVANCED_FEATURES_MINIMUM_VERSION to 2.7.4 configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 4693a08557191a9c2695b81332f840f036e78a69 Author: davefx Date: Fri Dec 5 07:46:39 2008 +0000 Uploading support for basic file-operations in gnomint-cli src/ca-callbacks.c | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++---- src/ca-cli.c | 2 +- 2 files changed, 59 insertions(+), 5 deletions(-) commit ca25fea6bef16fc4b06436344fc1ebc96c50036e Author: davefx Date: Thu Dec 4 19:22:54 2008 +0000 Uploading Spanish translation. po/es.po | 367 +++++++++++++++++++++++++++++++++++++-------------------- po/gnoMint.pot | 206 +++++++++++++++++++++----------- 2 files changed, 382 insertions(+), 191 deletions(-) commit a14baa17dde95b60b99dc2b66468d963ccbbf392 Author: davefx Date: Thu Dec 4 19:22:23 2008 +0000 Completing textual informative commands configure.in | 2 ++ src/ca-callbacks.c | 36 ++++++++++++++++++++++++---- src/ca-cli.c | 70 +++++++++++++++++++++++++----------------------------- src/gnomint-cli.c | 2 ++ 4 files changed, 68 insertions(+), 42 deletions(-) commit 4c2f78f9484e9e7eb355f1819b92bb951aa008cb Author: davefx Date: Wed Dec 3 23:44:31 2008 +0000 Completing command-line parser. Help implemented. po/POTFILES.in | 3 + po/es.po | 340 +++++++++++++++++++++++++++++++++++++++++--- po/gnoMint.pot | 312 ++++++++++++++++++++++++++++++++++++++-- src/Makefile.am | 5 +- src/ca-callbacks.c | 218 ++++++++++++++++++++++++++++ src/ca-callbacks.h | 49 +++++++ src/ca-cli.c | 409 ++++++++++++++++------------------------------------- src/ca-cli.h | 11 ++ 8 files changed, 1027 insertions(+), 320 deletions(-) commit 7558ec2755cf68f529197aa5dc39af353809f54f Author: davefx Date: Wed Dec 3 19:49:07 2008 +0000 Improving the (buggy) parser a little bit src/ca-cli.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) commit 0dc98b5d78422636cdf7f925cd0d8741193f8fda Author: davefx Date: Wed Dec 3 19:44:08 2008 +0000 Uploading initial (buggy) parser src/ca-cli.c | 151 +++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 137 insertions(+), 14 deletions(-) commit 8a19876e64fae01910391c18230704ef830b1063 Author: davefx Date: Wed Dec 3 07:27:54 2008 +0000 Completing callbacks src/ca-cli.c | 184 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 184 insertions(+) commit 87d1b89bafb9b66abeb817d6a5160500caef70e0 Author: davefx Date: Tue Dec 2 22:09:51 2008 +0000 Adding callbacks doc/gnomint-cli.txt | 2 + m4/libtool.m4 | 7325 +++++++++++++++++++++++++++++++++++++++++++++++++++ m4/ltoptions.m4 | 368 +++ m4/ltsugar.m4 | 123 + m4/ltversion.m4 | 23 + m4/lt~obsolete.m4 | 92 + src/ca-cli.c | 35 +- 7 files changed, 7958 insertions(+), 10 deletions(-) commit c52e2a9fa2c0d49b7d76cb08ef19101f02f3b653 Author: davefx Date: Tue Dec 2 19:37:07 2008 +0000 Added readline support ChangeLog | 16 +++++++++ TODO | 12 ++++--- certs/example-ca-web-gnomint.gnomint | Bin 52224 -> 62464 bytes configure.in | 26 ++++++++++++++ doc/gnomint-cli.txt | 68 +++++++++++++++++++++++++++++++++++ src/Makefile.am | 1 + src/ca-cli.c | 55 ++++++++++++++++++++++++++++ src/ca-cli.h | 2 ++ src/gnomint-cli.c | 2 ++ 9 files changed, 177 insertions(+), 5 deletions(-) commit 24712f5c26ebd0a36b609ac3d9cdb74a171748ce Author: davefx Date: Tue Dec 2 08:05:22 2008 +0000 Starting command-line CA manager src/Makefile.am | 41 +++++++++++++++++++++++------ src/ca-cli.c | 63 ++++++++++++++++++++++++++++++++++++++++++++ src/ca-cli.h | 58 ++++++++++++++++++++++++++++++++++++++++ src/ca.h | 7 +++++ src/gnomint-cli.c | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++ src/pkey_manage.c | 31 +++++++++++++++++++++- src/pkey_manage.h | 6 ++--- src/preferences-gui.c | 1 - src/preferences.c | 2 +- 9 files changed, 267 insertions(+), 15 deletions(-) commit 6871ee614750fef8c80b74fdf46d6cf3bc3345ed Author: davefx Date: Wed Nov 19 18:29:22 2008 +0000 Adding a web tutorial example certs/example-ca-web-gnomint.gnomint | Bin 0 -> 52224 bytes 1 file changed, 0 insertions(+), 0 deletions(-) commit f78def00e34171ad1d2c99117ce6caa2860f146e Author: davefx Date: Tue Nov 18 18:23:31 2008 +0000 Upgrading to version 0.6.0 ChangeLog | 180 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ configure.in | 4 +- m4/intltool.m4 | 3 + 3 files changed, 185 insertions(+), 2 deletions(-) commit 28b66e0561fc802a8b3e675ddb6e65646cd6a9fb Author: davefx Date: Tue Nov 18 18:22:01 2008 +0000 Changing define for advanced gnutls (post 2.7.3) features src/ca_file.c | 2 +- src/tls.c | 2 +- src/tls.h | 3 +++ 3 files changed, 5 insertions(+), 2 deletions(-) commit e6ed34c7b3e7dd1a385dc071febb0f47e63c70e9 Author: davefx Date: Tue Nov 18 18:20:19 2008 +0000 Added message for failure after trying to import unsupported directory src/import.c | 1 + 1 file changed, 1 insertion(+) commit 617454de74b631392bf8c28a0f5567a6e2561f22 Author: davefx Date: Tue Nov 18 17:57:05 2008 +0000 Fixed buffer overrun while reading in uint160_read_escaped src/uint160.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) commit 48dd1d28ee2f653d766092868d669d23e39265aa Author: davefx Date: Tue Nov 18 17:34:39 2008 +0000 Upgrading example database certs/example-ca.7.gnomint | Bin 0 -> 58368 bytes certs/example-ca.gnomint | Bin 58368 -> 59392 bytes 2 files changed, 0 insertions(+), 0 deletions(-) commit 103e01653afa8b14985c7acf53d924951719a11c Author: davefx Date: Tue Nov 18 07:42:10 2008 +0000 Updating translations. Added new German translation. configure.in | 8 +- po/cs.po | 832 ++++++++++++++++----------- po/de.po | 1760 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ po/es.po | 430 ++++++++------ po/fr.po | 863 +++++++++++++++------------ po/gnoMint.pot | 380 +++++++----- po/it.po | 891 ++++++++++++++++------------ po/sv.po | 850 +++++++++++++++------------ 8 files changed, 4247 insertions(+), 1767 deletions(-) commit ee99ef31a2393213ccbbb7118063dece6c5bdb4b Author: davefx Date: Mon Nov 17 19:42:20 2008 +0000 Fixed problem while showing serial from certificates TODO | 4 +--- src/uint160.c | 9 +++++++-- 2 files changed, 8 insertions(+), 5 deletions(-) commit de86b705f83f079ee0ab5d7ed88214dc46e127e0 Author: davefx Date: Mon Nov 17 19:10:07 2008 +0000 Fixing error while loading from recent-file menu src/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit ac28b277e1f70a5dbb936b1bbf0038ecf928138d Author: davefx Date: Mon Nov 17 19:08:57 2008 +0000 Fixing potential future problem: a architecture-depending value was been saved in the database. Now this value is saved correctly serialized. src/ca_file.c | 56 ++++++++++++++++++++++++++++++++++-- src/uint160.c | 91 +++++++++++++++++++++++++++++++++++++++++++---------------- src/uint160.h | 1 + 3 files changed, 122 insertions(+), 26 deletions(-) commit ad5d35a2b93537050e848a9dcb14bb15d91a7ee1 Author: davefx Date: Wed Nov 12 19:27:36 2008 +0000 Adding next serial import from OpenSSL TODO | 7 +++-- src/ca_file.c | 6 ++--- src/import.c | 20 +++++++++++++- src/uint160.c | 86 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/uint160.h | 1 + 5 files changed, 113 insertions(+), 7 deletions(-) commit aec3de5f377a3a1606956b52238432688f1ef52e Author: davefx Date: Mon Nov 10 19:40:44 2008 +0000 Adding new function ca_file_set_next_serial (needed while importing OpenSSL CA) src/ca_file.c | 27 +++++++++++++++++++++++++++ src/ca_file.h | 1 + src/uint160.c | 16 ++++++++++++++++ src/uint160.h | 1 + 4 files changed, 45 insertions(+) commit c183b1e3a4a37998812de75508e8f8b272a809ed Author: davefx Date: Mon Nov 10 19:22:23 2008 +0000 Now, a minimal CA configuration is inserted while importing a CA certificate. The just-inserted cert-id or csr-id is returned while importing a cert or csr src/ca_file.c | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- src/ca_file.h | 6 ++++-- src/csr_creation.c | 2 +- src/import.c | 41 +++++++++++++++++++------------------- src/import.h | 6 +++--- src/main.c | 2 +- 6 files changed, 86 insertions(+), 29 deletions(-) commit 62056c9fc7e771f13b6951ba5f4030db897e4c67 Author: davefx Date: Mon Nov 10 18:40:23 2008 +0000 While importing a private key, if a password is needed, ask for it using a appropiate description TODO | 1 + src/import.c | 104 +++++++++++++++++++++++++++++++++++++++++++++-------------- src/import.h | 7 ++-- src/main.c | 2 +- 4 files changed, 86 insertions(+), 28 deletions(-) commit c806c685bb390237a6fb7d4a65c2568cf849a075 Author: davefx Date: Sun Nov 9 10:25:25 2008 +0000 Uploading a new TODO file with release and develop planning TODO | 163 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 137 insertions(+), 26 deletions(-) commit 9cda87232f204d37531bd8347657bb5f70c8958f Author: davefx Date: Sat Nov 8 23:36:56 2008 +0000 Adding new functionality for importing private keys for CSRs (depends on currently missing functionality of gnutls: patch sent to upstream) configure.in | 20 +++++++++++++++----- src/ca_file.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ src/tls.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ src/tls.h | 1 + 4 files changed, 116 insertions(+), 5 deletions(-) commit de3387d3010f7fe0164a682ba8fac4e0b9902bbb Author: davefx Date: Sat Nov 8 14:32:49 2008 +0000 Removing all definitions of gettext macros. Using the definition in src/ca_creation.c | 5 +---- src/ca_file.c | 4 +--- src/ca_policy.c | 3 +-- src/certificate_properties.c | 3 +-- src/crl.c | 3 +-- src/csr_creation.c | 5 +---- src/csr_properties.c | 6 +----- src/new_ca_window.c | 3 +-- src/new_cert_creation_process.c | 4 ++-- src/new_cert_window.c | 4 +--- src/new_req_window.c | 4 +--- src/pkey_manage.c | 5 +---- src/preferences-gui.c | 4 +--- src/preferences-window.c | 3 +-- src/preferences.c | 3 +-- src/tls.c | 5 +---- 16 files changed, 17 insertions(+), 47 deletions(-) commit 947de734ead8db35cc3297057477f103bf758600 Author: davefx Date: Sat Nov 8 09:36:19 2008 +0000 OpenSSL CA importing almost complete. Now fully functional, only lacks a few checks, last serial and CSR private key importing src/import.c | 309 ++++++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 221 insertions(+), 88 deletions(-) commit 39c91f7719d51509a0e63104bdb918fd73684f1f Author: davefx Date: Sat Nov 8 09:35:13 2008 +0000 Avoiding multiple import of the same certificate src/ca_file.c | 43 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 3 deletions(-) commit a895b027d7a07ee034271871eeafabe282e6af6f Author: davefx Date: Sat Nov 8 09:05:30 2008 +0000 Adding -O0 -g when --enable-debug is supplied configure.in | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) commit 1652a34533980b9c8efbc880440dac0c18c6b390 Author: davefx Date: Fri Nov 7 18:46:45 2008 +0000 Advancing in OpenSSL CA importing: CA cert and private key (latter not working yet) src/import.c | 164 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 163 insertions(+), 1 deletion(-) commit 422ac763a31cc1efd6e7365dd74808754096ea37 Author: davefx Date: Fri Nov 7 18:45:35 2008 +0000 Updating translations po/es.po | 428 +++++++++++++++++++++++++++++++++------------------------ po/gnoMint.pot | 402 ++++++++++++++++++++++++++++++----------------------- 2 files changed, 482 insertions(+), 348 deletions(-) commit ed11d998ed969d6635f0fe8790965305008c3666 Author: davefx Date: Tue Nov 4 19:24:39 2008 +0000 Starting slow progress to version 0.6.0. Distinction made between importing single files and CA directories gui/gnomint.glade | 127 +++++++++++++++++++++++++++++++++++++++++++++++++++ src/ca.c | 64 -------------------------- src/ca.h | 1 - src/import.c | 86 +++++++++++++++++++++++++++++++++++ src/import.h | 3 ++ src/main.c | 132 +++++++++++++++++++++++++++++++++++++++--------------- 6 files changed, 313 insertions(+), 100 deletions(-) commit 8a880796068246a6a029639c743fb2ff65d174cb Author: davefx Date: Mon Nov 3 19:15:19 2008 +0000 Finished importing of PKCS#12 structures src/import.c | 315 ++++++++++++++++++++++++++++++++++++++--------------------- 1 file changed, 206 insertions(+), 109 deletions(-) commit 01530a7bdab4e7f4405cb21843436ab6e8f41b3a Author: davefx Date: Thu Oct 30 19:11:02 2008 +0000 Advancing in PKCS#12 import src/import.c | 107 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 100 insertions(+), 7 deletions(-) commit d2f695d0bdba8d5eb05849b31c3f8059bc0f3c27 Author: davefx Date: Thu Oct 30 19:10:36 2008 +0000 Fixing problem while export PKCS#12 files from an password-less database src/pkey_manage.c | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) commit f09487c80cf1672c0fe3bda008807c077bf7bda9 Author: davefx Date: Tue Oct 28 19:07:58 2008 +0000 Finished PKCS#8 importing ChangeLog | 28 + gui/gnomint.glade | 1800 ++++++++++++++++++++++++++++------------------------- src/ca.c | 13 +- src/ca_file.c | 2 +- src/import.c | 342 +++++++--- src/import.h | 21 +- 6 files changed, 1287 insertions(+), 919 deletions(-) commit 3828d0550601798527c25cbe85fee159be0d8bf0 Author: davefx Date: Fri Oct 24 06:25:56 2008 +0000 Adding gnutls test for getting errors certs/test-gnutls.c | 90 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) commit 9af8aaf5aba042db587ddc202e093e19f66f5bad Author: davefx Date: Tue Oct 21 17:48:33 2008 +0000 Adding an example of an openssl-built certification authority certs/openssl-example/cacert.key | 54 ++++++++ certs/openssl-example/cacert.pem | 40 ++++++ ...kdhTmlaYUNpT246Q2lVZEFkOlByT3ZJbkNpQTpFUw==.pem | 40 ++++++ ...kdhTmlaYUNpT246Q2lVZEFkOlByT3ZJbkNpQTpFUw==.pem | 40 ++++++ ...3JHYU5pWmFDaU9uOkNpVWRBZDpQck92SW5DaUE6RVM=.pem | 39 ++++++ certs/openssl-example/crl/crl.pem | 19 +++ certs/openssl-example/index.txt | 3 + certs/openssl-example/index.txt.attr | 1 + ...kdhTmlaYUNpT246Q2lVZEFkOlByT3ZJbkNpQTpFUw==.pem | 54 ++++++++ ...kdhTmlaYUNpT246Q2lVZEFkOlByT3ZJbkNpQTpFUw==.pem | 54 ++++++++ ...3JHYU5pWmFDaU9uOkNpVWRBZDpQck92SW5DaUE6RVM=.pem | 54 ++++++++ ...3JHYU5pWmFDaU9uOkNpVWRBZDpQck92SW5DaUE6RVM=.pem | 54 ++++++++ certs/openssl-example/newcerts/01.pem | 40 ++++++ certs/openssl-example/newcerts/02.pem | 39 ++++++ certs/openssl-example/newcerts/03.pem | 40 ++++++ certs/openssl-example/openssl.cnf | 151 +++++++++++++++++++++ ...kdhTmlaYUNpT246Q2lVZEFkOlByT3ZJbkNpQTpFUw==.pem | 29 ++++ ...kdhTmlaYUNpT246Q2lVZEFkOlByT3ZJbkNpQTpFUw==.pem | 29 ++++ ...3JHYU5pWmFDaU9uOkNpVWRBZDpQck92SW5DaUE6RVM=.pem | 29 ++++ ...3JHYU5pWmFDaU9uOkNpVWRBZDpQck92SW5DaUE6RVM=.pem | 29 ++++ certs/openssl-example/serial | 1 + 21 files changed, 839 insertions(+) commit c2d6205232489e070304832486683a10ab3bd7c1 Author: davefx Date: Mon Oct 20 17:11:46 2008 +0000 Added Italian translation configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit c3727237331616c4efe07d61322e3110509214f4 Author: davefx Date: Mon Oct 20 17:11:06 2008 +0000 Updating changes from Launchpad po/fr.po | 57 ++- po/it.po | 1634 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ po/sv.po | 30 +- 3 files changed, 1678 insertions(+), 43 deletions(-) commit 5ac91ffa324b429969451bae1d3c0b470cd19470 Author: davefx Date: Wed Oct 8 08:43:25 2008 +0000 Updating files for building Debian packages debian/changelog | 6 ++ debian/conffiles.ex | 7 -- debian/control | 6 +- debian/copyright | 30 ++++++++- debian/cron.d.ex | 4 -- debian/emacsen-install.ex | 45 ------------- debian/emacsen-remove.ex | 15 ----- debian/emacsen-startup.ex | 19 ------ debian/gnomint.doc-base.EX | 22 ------- debian/init.d.ex | 74 --------------------- debian/manpage.1 | 51 +++++++++++++++ debian/manpage.1.ex | 59 ----------------- debian/manpage.sgml.ex | 156 --------------------------------------------- debian/manpage.xml.ex | 148 ------------------------------------------ debian/menu.ex | 2 - debian/postinst.ex | 42 ------------ debian/postrm.ex | 38 ----------- debian/preinst.ex | 38 ----------- debian/prerm.ex | 38 ----------- debian/rules | 0 debian/watch.ex | 22 ------- 21 files changed, 87 insertions(+), 735 deletions(-) commit 7f815c46ee32424390bed02b3f7dbe5875df50eb Author: davefx Date: Thu Oct 2 18:06:10 2008 +0000 Implemented PKCS7 importing. Cannot test, as I haven't found yet any PKCS7 file in the internet src/import.c | 399 ++++++++++++++++++++++++++++------------------------------- 1 file changed, 186 insertions(+), 213 deletions(-) commit bcef3d1575e6dcf879fdaf2d9e78657f90b9ba04 Author: davefx Date: Thu Oct 2 17:12:59 2008 +0000 Fixing bug that made CRL importing not work. src/import.c | 2 +- src/pkey_manage.c | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) commit 7ab7c169e70bca0db4caa109a9c6734285cc86ee Author: davefx Date: Wed Oct 1 18:17:56 2008 +0000 Updating to version 0.5.4 ChangeLog | 250 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ configure.in | 2 +- m4/intltool.m4 | 69 ++++------------ 3 files changed, 267 insertions(+), 54 deletions(-) commit 15d7cc7d00557623d19b2b53b549112c2eb52c16 Author: davefx Date: Wed Oct 1 18:04:34 2008 +0000 Beeing more verbose when having a failure when creating a CA certificate po/es.po | 214 +++++++++++++++++++++------------------- po/gnoMint.pot | 206 ++++++++++++++++++++------------------ src/ca_creation.c | 8 +- src/new_cert_creation_process.c | 3 +- src/tls.c | 12 ++- 5 files changed, 237 insertions(+), 206 deletions(-) commit a79b53b424263cb466d701292045020969089942 Author: davefx Date: Wed Oct 1 18:02:28 2008 +0000 Fixing problem with expiration time, related to UTC-localtime difference src/new_ca_window.c | 2 +- src/new_cert_window.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 58601239eb0c2d9d14185474e902de1e0d0b0cad Author: davefx Date: Wed Oct 1 17:31:44 2008 +0000 Fixing segmentation fault in some architectures, and modern compilers src/ca_file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 4f067e4b7caefaa346b51e10f373fd2cfb0202c2 Author: davefx Date: Wed Oct 1 17:29:26 2008 +0000 Reducing function names. Fixing warning src/certificate_properties.c | 114 +++++++++++++++++++++---------------------- 1 file changed, 57 insertions(+), 57 deletions(-) commit bdbab6a1199267e3f7efcab6bb9b3ff00ac3f72c Author: davefx Date: Tue Sep 30 17:56:50 2008 +0000 Advancing in CRL importing src/ca_file.c | 80 +++++++++++++++++++++++++++++++++++++++++++++--- src/ca_file.h | 7 +++-- src/import.c | 97 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 3 files changed, 175 insertions(+), 9 deletions(-) commit 42b0e5bb54fbb2d1dd2c14f87ada9271d80744ed Author: davefx Date: Tue Sep 30 06:37:57 2008 +0000 Finished import of uncrypted private keys src/ca_file.c | 74 +++++++++++++++++++++++++++++++++++------------------------ 1 file changed, 44 insertions(+), 30 deletions(-) commit c301c2272d920688dc0d2ee73a0fdb7d51192939 Author: davefx Date: Mon Sep 29 17:43:41 2008 +0000 Advancing in private key import src/ca_file.c | 48 ++++++++++++++++++++++++++++++++ src/ca_file.h | 2 ++ src/import.c | 53 ++++++++++++++++++++++++++++++++++- src/tls.c | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/tls.h | 2 ++ 5 files changed, 193 insertions(+), 1 deletion(-) commit 2ef86211fc96e19cb5c11cb3169156b63ba90eb5 Author: davefx Date: Mon Sep 29 16:47:29 2008 +0000 Adding graphic files. Completing svnignore gui/gnomint14x14.png | Bin 0 -> 755 bytes gui/gnomint192x192.png | Bin 0 -> 9493 bytes gui/gnomint64x64.png | Bin 0 -> 5208 bytes 3 files changed, 0 insertions(+), 0 deletions(-) commit 1695491d4c74f139b63625a145c2cd3f87a88bc4 Author: davefx Date: Fri Sep 26 14:51:52 2008 +0000 Certificate import finished src/ca.c | 1 + src/ca_file.c | 45 ++++++++++++++++++++++++++++++++++----------- src/import.c | 9 +++++++-- 3 files changed, 42 insertions(+), 13 deletions(-) commit 56135514c79733127ffe7ccb73b09b790369ac54 Author: davefx Date: Fri Sep 26 06:11:59 2008 +0000 Advancing in certificate import src/ca.c | 2 +- src/ca_file.c | 258 ++++++++++++++++++++++++++++------------------------------ src/import.c | 8 +- src/tls.c | 76 +++++++++++++---- src/tls.h | 3 + src/uint160.c | 6 +- src/uint160.h | 6 +- 7 files changed, 196 insertions(+), 163 deletions(-) commit 82f4d32b49debef308be205a1a50adea5b72711a Author: davefx Date: Thu Sep 25 06:30:01 2008 +0000 If the signing CA has not subject key identifier extension, don't generate issuer key identifier extension. If it has, use it to generate issuer key identifier extension, instead of forging a new issuer key id with the gnutls method (that could be distinct from the one in the extension) src/tls.c | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) commit 4f9c9ac354a9eed0bebdfaca2a3c823682673803 Author: davefx Date: Wed Sep 24 18:19:14 2008 +0000 Database now ready for importing hierarchies of certificates src/ca_file.c | 282 ++++++++++++++++++++++++++++++++++++---------------------- src/ca_file.h | 2 - 2 files changed, 178 insertions(+), 106 deletions(-) commit fbdbcc981fe561ee4d4f293a0cf002ccef8c51ad Author: davefx Date: Wed Sep 24 06:56:27 2008 +0000 Adding po template po/gnoMint.pot | 1617 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1617 insertions(+) commit f5f8c486a5f5a6aaabed52cf865b20f16d3c2282 Author: davefx Date: Wed Sep 24 06:54:46 2008 +0000 Upgrading translations from Launchpad. Added language sv. configure.in | 2 +- po/cs.po | 840 +++++++++++++++++------------- po/es.po | 778 +++++++++++++++------------- po/fr.po | 1258 ++++++++++++++++++++++++++++++++------------- po/sv.po | 1621 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 3414 insertions(+), 1085 deletions(-) commit e999c01cd75ac269e9e73daa77cab629bc91906a Author: davefx Date: Tue Sep 23 18:25:34 2008 +0000 Keeping subject_key_id in certificate database. Some errors with NULL values: still not finished. src/ca.c | 33 ++++++++++++++++----- src/ca_file.c | 92 +++++++++++++++++++++++++++++++++++++++++++++++------------ src/import.c | 47 +++++++----------------------- src/import.h | 12 ++++---- src/tls.c | 31 ++++++++++++++++++++ src/tls.h | 3 ++ 6 files changed, 149 insertions(+), 69 deletions(-) commit 08e74d7e643dfc4896ec9f30d27aff4784789d15 Author: davefx Date: Fri Sep 19 17:58:27 2008 +0000 Fixing error: only the first certificate in database could sign CSRs in password-protected databases. src/new_cert_window.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 923d8bc57e49e6d33014c28d73164764a7b165a7 Author: davefx Date: Fri Sep 19 06:27:00 2008 +0000 Another batch of configure changes, thanks to Staněk Luboš Makefile.am | 5 +-- configure.in | 122 ++++++++++++++++++++---------------------------------- gconf/Makefile.am | 2 - src/Makefile.am | 3 -- 4 files changed, 46 insertions(+), 86 deletions(-) commit d27e92bd61af0ea97d1691f6664e5c796ecb1fda Author: davefx Date: Fri Sep 19 06:23:10 2008 +0000 Starting support for importing certificates po/POTFILES.in | 6 + src/Makefile.am | 6 +- src/ca.c | 114 +++---------------- src/ca_file.c | 151 ++++++++++++++++++++++++- src/ca_file.h | 7 +- src/import.c | 333 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/import.h | 33 ++++++ 7 files changed, 549 insertions(+), 101 deletions(-) commit 3f88ad541b8adfd6c3cfa0e124067719084a6628 Author: davefx Date: Fri Sep 19 06:06:17 2008 +0000 Fixing segmentation fault when the CSR or the CA cert have NULL fields src/new_cert_window.c | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) commit 6a620be4c0a1587f0519ebf30e8b5d15d69b650b Author: davefx Date: Thu Sep 18 18:27:44 2008 +0000 Making compliant to RFC5280: now authority key identifier and subject key identifiers are set properly src/tls.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) commit a40ff401c54347d17f8aa71da98b47bb45ad573f Author: davefx Date: Wed Sep 17 06:46:34 2008 +0000 Now the CA used when inheriting fields for a CSR is remembered, and used as default when signing it. src/ca.c | 2 -- src/ca_file.c | 5 +++-- src/new_cert_window.c | 49 +++++++++++++++++++++++++++++++++++++++++++------ 3 files changed, 46 insertions(+), 10 deletions(-) commit 6d7860078071b2879ff0e9c53e68f9239ec800bc Author: davefx Date: Tue Sep 16 18:18:10 2008 +0000 First steps for saving the CA used for generating CSRs, so it will be the default while signing the CSRs src/ca.c | 36 ++++++++++++++++++++++-------------- src/ca_creation.c | 2 ++ src/ca_creation.h | 3 ++- src/ca_file.c | 39 +++++++++++++++++++++++++++++++-------- src/new_cert_window.c | 9 ++++++++- src/new_cert_window.h | 3 +-- src/new_req_window.c | 33 ++++++++++++++++++++------------- 7 files changed, 86 insertions(+), 39 deletions(-) commit d4aafb5828d1386517234615716c4eb9b7a1af40 Author: davefx Date: Tue Sep 16 18:17:01 2008 +0000 Finishing implementation of dependences between certificate uses and certificate purposes gui/gnomint.glade | 14 ++++++++++++++ 1 file changed, 14 insertions(+) commit 612839e0f90c1b9e933b0c24eb96a2fe7128bee0 Author: davefx Date: Tue Sep 16 18:08:18 2008 +0000 Fixing configure.in and src/Makefile.am: * fixes AM_INIT_AUTOMAKE * adds some test discovered by autoscan * removes wrong gnutls and libsqlite test * defines required versions of particular libraries * adds proper gnutls and sqlite test including appropriate CFLAGS and LIBS, exports this info for use in Makefile * removes installations dirs, they are defined the standard way * modifies the summary output * removes second compiler flags from Makefile.am Thanks to Staněk Luboš for the patch configure.in | 129 ++++++++++++++++++++++++++++++-------------------------- src/Makefile.am | 10 ++++- 2 files changed, 78 insertions(+), 61 deletions(-) commit 10c303b2f74e81d13c294f954eea2b80e9a4ed7e Author: davefx Date: Tue Sep 16 16:53:28 2008 +0000 Finishing implementation of dependences between certificate uses and certificate purposes src/new_cert_window.c | 215 ++++++++++++++++++++++++++++++++++++++++++++++++++ src/new_cert_window.h | 3 + 2 files changed, 218 insertions(+) commit a6483184d94307d0a6a0b16c1efcc6113c74f113 Author: davefx Date: Tue Sep 16 06:45:44 2008 +0000 Progress in uses-purposes dependencies. CA properties window finished. New cert window pending. src/ca_policy.c | 130 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 123 insertions(+), 7 deletions(-) commit 9082f32524f84da17f4c62fa3782409bb810a11e Author: davefx Date: Mon Sep 15 18:20:05 2008 +0000 Starting to implement dependences between certificate purposes and uses src/ca_policy.c | 96 +++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 87 insertions(+), 9 deletions(-) commit 8d1133db8c28d73b53718b4f2a9994d5476373ff Author: davefx Date: Mon Sep 15 17:50:43 2008 +0000 Fixing bug #2100270. Now it is possible to generate CRLs for all the CAs in the hierarchy gui/gnomint.glade | 1739 ++++++++++++++++++++++++++++------------------------- src/Makefile.am | 2 + src/ca.c | 145 +---- src/ca.h | 4 +- src/ca_file.c | 4 +- src/ca_file.h | 2 +- src/crl.c | 383 ++++++++++++ src/crl.h | 28 + 8 files changed, 1338 insertions(+), 969 deletions(-) commit 6eadf5c7e399f496b65ba6c6cd1c05fac9a83e5d Author: davefx Date: Fri Sep 12 10:23:35 2008 +0000 Uploading forgotten main.h src/Makefile.am | 1 + 1 file changed, 1 insertion(+) commit f75d5a62c6ed5bae867545213019e01337bbf404 Author: davefx Date: Fri Sep 12 10:22:23 2008 +0000 Uploading forgotten main.h src/main.h | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) commit 3f25c7bf0abcf90a7c306501ac70cd3c9615e245 Author: davefx Date: Thu Sep 11 17:31:05 2008 +0000 Updating src/, so now it compiles with the new default compilation options src/ca.c | 50 +++++++++++++++++++--- src/ca.h | 42 +++++++++++++++--- src/ca_creation.h | 2 + src/ca_file.c | 68 +++++++++++++++++------------ src/ca_policy.c | 3 ++ src/ca_policy.h | 4 ++ src/certificate_properties.c | 95 +++++++++++++++++++++++++++++------------ src/certificate_properties.h | 1 + src/csr_creation.h | 1 + src/csr_properties.c | 2 +- src/csr_properties.h | 2 + src/main.c | 14 ++++-- src/new_ca_window.c | 4 +- src/new_ca_window.h | 23 +++++++++- src/new_cert_creation_process.c | 6 ++- src/new_cert_creation_process.h | 10 +++++ src/new_cert_window.c | 6 ++- src/new_cert_window.h | 17 +++++++- src/new_req_window.c | 12 +++++- src/new_req_window.h | 19 +++++++++ src/pkey_manage.c | 28 +++++++----- src/pkey_manage.h | 7 +++ src/preferences-gui.h | 7 +++ src/preferences-window.c | 2 +- src/preferences-window.h | 2 + 25 files changed, 334 insertions(+), 93 deletions(-) commit 6f77664d57b1cb223a687a428471e519c7c1cf5a Author: davefx Date: Thu Sep 11 16:24:30 2008 +0000 Standarizing name of the project: it's gnoMint, not Gnomint README | 2 +- TODO | 20 ++++++++++---------- autogen.sh | 4 ++-- 3 files changed, 13 insertions(+), 13 deletions(-) commit cfa61731712d9c7836b024a1d3e05cf659b68eac Author: davefx Date: Thu Sep 11 16:20:07 2008 +0000 Patch for improving standard compliance src/ca.h | 8 ++++---- src/ca_creation.h | 10 +++++----- src/ca_file.c | 4 ++++ src/ca_file.h | 10 +++++----- src/ca_policy.c | 1 + src/certificate_properties.c | 1 + src/csr_creation.h | 8 ++++---- src/csr_properties.c | 1 + src/new_ca_window.h | 2 +- src/new_cert_creation_process.c | 1 + src/new_cert_window.c | 1 + src/new_req_window.c | 1 + src/new_req_window.h | 2 +- src/pkey_manage.h | 2 +- src/preferences-gui.c | 1 + src/preferences-gui.h | 16 ++++++++-------- src/preferences-window.c | 1 + src/preferences-window.h | 2 +- src/preferences.c | 1 + src/preferences.h | 4 ++-- src/tls.h | 2 +- src/uint160.h | 2 +- 22 files changed, 47 insertions(+), 34 deletions(-) commit 07e7bea6e254832492d4ec3197a3b1e25b19b508 Author: davefx Date: Thu Sep 11 06:33:02 2008 +0000 Fixing problem with permissions of a just created file. Now created in 0600 mode. Fixing problem with certificates insertion into the database inserted in last commit src/ca_file.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) commit 449712edf4594b6bea35fbd3cb7e9c1b54565194 Author: davefx Date: Thu Sep 11 06:30:56 2008 +0000 Removing deprecated functions. Patch by Staněk Luboš src/ca_policy.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) commit 3250a6e2138793a1878eeb11af6effb7150723ef Author: davefx Date: Tue Sep 9 07:14:57 2008 +0000 Fixing CRL problem: now, expired certificates appear only in the first CRL released after the expiration date, according to RFC 5280 (page 13) certs/example-ca.6.gnomint | Bin 0 -> 43008 bytes certs/example-ca.gnomint | Bin 58368 -> 58368 bytes src/ca.c | 18 +++++----- src/ca_file.c | 83 +++++++++++++++++++++++++++++++++++++++------ src/ca_file.h | 2 +- 5 files changed, 83 insertions(+), 20 deletions(-) commit 119fdbb6f61bb1bcdc27aa6a13eb1f9d8e6ca3f4 Author: davefx Date: Tue Sep 9 06:58:49 2008 +0000 Adding missing file in subversion repository m4/Makefile.am | 9 +++++++++ 1 file changed, 9 insertions(+) commit ca5def738929fbfc4e3f6f3fe2932b906d88828b Author: davefx Date: Mon Sep 8 15:31:15 2008 +0000 Updating version to 0.5.3 ChangeLog | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ configure.in | 4 ++-- 2 files changed, 71 insertions(+), 2 deletions(-) commit beba303b6a7f4a364561783200236e3ee7b29fb1 Author: davefx Date: Mon Sep 8 14:41:27 2008 +0000 Now exporting full certificate path when exporting public PEM certs/example-ca.gnomint | Bin 43008 -> 58368 bytes src/ca.c | 95 +++++++++++++++++++++++++++++++---------------- src/ca_file.c | 6 ++- 3 files changed, 66 insertions(+), 35 deletions(-) commit 09d413ea69202dce06676820ca5df37a2c13cd23 Author: davefx Date: Sat Sep 6 16:34:00 2008 +0000 Fixing problem with m4 macros. Patch by Staněk Luboš. Makefile.am | 11 +- configure.in | 1 + m4/codeset.m4 | 21 ++++ m4/gettext.m4 | 381 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ m4/glibc21.m4 | 30 +++++ m4/iconv.m4 | 180 ++++++++++++++++++++++++++ m4/intltool.m4 | 234 ++++++++++++++++++++++++++++++++++ m4/isc-posix.m4 | 24 ++++ m4/lcmessage.m4 | 30 +++++ m4/progtest.m4 | 92 ++++++++++++++ 10 files changed, 1001 insertions(+), 3 deletions(-) commit b7e5acbba152b4352a5764914e6e5e6d3efbe71a Author: davefx Date: Sat Sep 6 16:31:32 2008 +0000 Enabling the generation of DH parameters from gnoMint gui/gnomint.glade | 117 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 116 insertions(+), 1 deletion(-) commit 5f73a9f2429aa06c863c1572dbb9f54910a00370 Author: davefx Date: Sat Sep 6 10:20:19 2008 +0000 Updating Spanish translation po/POTFILES.in | 1 + po/es.po | 320 ++++++++++++++++++++++++++++++++------------------------- 2 files changed, 182 insertions(+), 139 deletions(-) commit c8752d0f67837a677c77d64910723e21577e87a9 Author: davefx Date: Sat Sep 6 10:04:11 2008 +0000 Enabling the generation of DH parameters from gnoMint src/ca.c | 87 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/tls.c | 30 ++++++++++++++++++++++ src/tls.h | 2 ++ 3 files changed, 119 insertions(+) commit fc0d983e05d14ffcf392bb4a0c6469fa6386bcf8 Author: davefx Date: Sat Sep 6 06:50:55 2008 +0000 Fixing segmentation fault introduced in revision 165 src/ca_file.c | 36 +++++++++++++++++------------------- 1 file changed, 17 insertions(+), 19 deletions(-) commit 3f8c86c6fc6baf3f8ce2310936c3fe7d83f1f715 Author: davefx Date: Tue Sep 2 18:27:14 2008 +0000 Updating Spanish translation po/es.po | 477 +++++++++++++++++++++++++++++++++++---------------------------- 1 file changed, 266 insertions(+), 211 deletions(-) commit b0344169cdabc37747229fafc8e99779ac75559d Author: davefx Date: Tue Sep 2 18:21:26 2008 +0000 Correcting little problem with previous patch. Thanks again to Staněk Luboš mime/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3e6f92e7478c6aa8bd581610df83e6a4ab351ce1 Author: davefx Date: Tue Sep 2 18:19:26 2008 +0000 Applying patch for fixing i18n, and Czech translation. Thanks to Staněk Luboš INSTALL | 236 ++++++++ Makefile.am | 4 +- configure.in | 18 +- gconf/Makefile.am | 17 +- gconf/gnomint.schema | 58 -- gconf/gnomint.schemas.in | 58 ++ gui/Makefile.am | 14 +- gui/gnomint.desktop | 11 - gui/gnomint.desktop.in | 12 + mime/Makefile.am | 12 +- mime/gnomint.xml | 8 - mime/gnomint.xml.in | 8 + po/POTFILES.in | 6 +- po/cs.po | 1511 ++++++++++++++++++++++++++++++++++++++++++++++ src/ca_file.c | 4 - 15 files changed, 1865 insertions(+), 112 deletions(-) commit cc4ecca5fa571f7b35bfc0fcc2930adb1f849f5e Author: davefx Date: Tue Sep 2 18:08:10 2008 +0000 Fixing problem while generating DSA-keyed CSRs gui/gnomint.glade | 1645 +++++++++++++++++++++++++++-------------------------- 1 file changed, 823 insertions(+), 822 deletions(-) commit 04d8f9dc281d33642e79474fcefddd54959e84ec Author: davefx Date: Tue Sep 2 17:33:47 2008 +0000 Fixing tracker request #2075599. Now the order of lists and trees is OK when more than 10 certs src/ca_file.c | 132 +++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 121 insertions(+), 11 deletions(-) commit b07f5851596e8d0f356bc78b7edae9308d281950 Author: davefx Date: Mon Sep 1 16:43:20 2008 +0000 Updating version to 0.5.2 ChangeLog | 27 +++++++++++++++++++++++++++ configure.in | 4 ++-- 2 files changed, 29 insertions(+), 2 deletions(-) commit c82186a08152c55257220a11fe546f01b6eb9cd9 Author: davefx Date: Thu Aug 28 17:47:32 2008 +0000 New preference for exporting just created certificates to gnome-keyring-manager. Closes bug #1842705 gconf/Makefile.am | 1 + gui/gnomint.glade | 1652 +++++++++++++++++++++++----------------------- src/Makefile.am | 2 + src/main.c | 3 +- src/new_cert_window.c | 28 + src/preferences-window.c | 73 ++ src/preferences-window.h | 25 + 7 files changed, 958 insertions(+), 826 deletions(-) commit 37d7504842f4be9329eedd886c973e505e989600 Author: davefx Date: Wed Aug 27 18:07:17 2008 +0000 Adding gconf support for saving some preferences, as view preferences, window size. Adding preferences window Makefile.am | 2 +- configure.in | 14 + gconf/Makefile.am | 23 + gconf/gnomint.schema | 58 ++ gui/gnomint.glade | 2724 +++++++++++++++++-------------------------------- src/Makefile.am | 13 +- src/ca.c | 47 +- src/ca.h | 4 + src/main.c | 38 + src/preferences-gui.c | 122 +++ src/preferences-gui.h | 40 + src/preferences.c | 53 + src/preferences.h | 31 + 13 files changed, 1355 insertions(+), 1814 deletions(-) commit 7a7fef2bf5b033dcd638e09b9b788bcd8846c943 Author: davefx Date: Sat Aug 23 13:23:49 2008 +0000 Updating Spanish translation po/es.po | 269 ++++++++++++++++++++++++++++++++------------------------------- 1 file changed, 137 insertions(+), 132 deletions(-) commit 7745d27dd783a5f69efabcf3289ce3e18ce40ba3 Author: davefx Date: Sat Aug 23 13:09:21 2008 +0000 Updating changelog and adding update-svncl.sh for version 0.5.1 ChangeLog | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ update-svncl.sh | 3 +++ 2 files changed, 68 insertions(+) commit 218bf5862a9db77794dbd092f6b795101f48d5f7 Author: davefx Date: Sat Aug 23 13:01:27 2008 +0000 Upgrading to version 0.5.1 configure.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 7fbe6416ef2ad8bcd26f0b97709b09fe77b10620 Author: davefx Date: Sat Aug 23 13:00:37 2008 +0000 Updating example CA for being valid against version 0.5.x certs/example-ca.gnomint | Bin 50176 -> 43008 bytes 1 file changed, 0 insertions(+), 0 deletions(-) commit 7f5995c14aadb39561d076f3321e10a46e32b197 Author: davefx Date: Sat Aug 23 11:09:36 2008 +0000 Fixing problem when creating a new CSR that must import field values from CA src/new_req_window.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5f7e75abf099d6f7c6fa55cb2dbe486807dbdb31 Author: davefx Date: Sat Aug 23 10:59:49 2008 +0000 Fixing bug that made impossible to change the policy of a CA src/ca_policy.c | 38 +++++++++++++++++--------------------- 1 file changed, 17 insertions(+), 21 deletions(-) commit e343ead451fabda42db4ec9dd4789f9c533fb1cb Author: davefx Date: Sat Aug 23 10:59:09 2008 +0000 Removing some warnings due to gui changes src/ca.c | 7 ------- 1 file changed, 7 deletions(-) commit 7a816031e019222aebf2e306c92041bf7adbd16f Author: davefx Date: Sat Aug 23 10:13:07 2008 +0000 Adding support for recent files configure.in | 2 +- gui/gnomint.glade | 1845 +++++++++++++++++++++++++++-------------------------- src/main.c | 154 ++++- 3 files changed, 1073 insertions(+), 928 deletions(-) commit c2f983db661b664300ad8645d63d80e3dcf96656 Author: davefx Date: Thu Aug 21 16:26:01 2008 +0000 Correcting date in version 0.5.0 configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 1bcc7c4fa231febf02d7f9865a2de53a329079a1 Author: davefx Date: Thu Aug 21 16:13:36 2008 +0000 Updating to version 0.5.0 ChangeLog | 219 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- configure.in | 4 +- 2 files changed, 217 insertions(+), 6 deletions(-) commit 0538b4ed567b9cffe2d9515370e05b5e2a60b612 Author: davefx Date: Thu Aug 21 15:46:47 2008 +0000 Fixing problem while signing CSRs which private key resides in an external file. The file was lost. Now the file info is kept while moving info from CSR to Certificate src/ca_file.c | 10 ++++++---- src/ca_file.h | 3 ++- src/new_cert_window.c | 6 +++--- src/pkey_manage.c | 8 +++++--- 4 files changed, 16 insertions(+), 11 deletions(-) commit 1e3f63177309fb14b8666c0886d4e0a8b92fc0a5 Author: davefx Date: Wed Aug 20 18:12:32 2008 +0000 Allowing the creation of new databases. Fixing problems while creating CSRs or s-s CAs, if the DB is pwd-protected, and the user cancels the password-entry window. Fixing some minor problems in Spanish translation. gui/gnomint.glade | 10 +-- po/es.po | 206 +++++++++++++++++++++++++++++---------------------- src/main.c | 75 ++++++++++++++++++- src/new_ca_window.c | 13 +++- src/new_req_window.c | 12 ++- 5 files changed, 215 insertions(+), 101 deletions(-) commit 8b8f3f7628eccb977a0aa67e078df8695c9d2d3a Author: davefx Date: Wed Aug 20 16:40:52 2008 +0000 Fixed problem with serial number assignation when creating a new database (not importing an old one) src/ca_creation.c | 1 + src/ca_file.c | 20 +++++++++++++------- src/ca_file.h | 2 +- src/tls.c | 5 +++++ 4 files changed, 20 insertions(+), 8 deletions(-) commit 886760b2bbeed07cb949c746ed1b56eaaf79c010 Author: davefx Date: Tue Aug 19 18:39:08 2008 +0000 Fixed problems related with DB password protection gui/gnomint.glade | 1855 +++++++++++++++++++-------------------- src/ca_creation.h | 9 +- src/ca_file.c | 2 - src/new_ca_window.c | 27 +- src/new_cert_creation_process.c | 24 - src/pkey_manage.c | 10 +- src/uint160.c | 7 + 7 files changed, 952 insertions(+), 982 deletions(-) commit c28d5173580632c2d053ae828b8957359b8d9136 Author: davefx Date: Mon Aug 18 18:08:16 2008 +0000 Making possible to generate multiple rooted files, so now a file is not tied to a self-signed certificate. Now, gnoMint open ~/.gnomint/default.gnomint by default. Some problems need to be fixed yet. configure.in | 1 + gui/gnomint.glade | 204 ++++++-------- po/es.po | 574 +++++++++++++++++++++++----------------- src/ca.c | 4 +- src/ca.h | 2 +- src/ca_creation.c | 6 +- src/ca_file.c | 292 ++++++++++---------- src/ca_file.h | 16 +- src/main.c | 19 +- src/new_cert_creation_process.c | 67 ++--- 10 files changed, 609 insertions(+), 576 deletions(-) commit 5cfd57b2011aa7280f4da66d417c318083ecf845 Author: davefx Date: Mon Aug 18 17:14:10 2008 +0000 Adding mimetype and desktop file Makefile.am | 2 +- gui/Makefile.am | 9 +++++++-- gui/gnomint.desktop | 11 +++++++++++ mime/Makefile.am | 7 +++++++ mime/gnomint.xml | 8 ++++++++ 5 files changed, 34 insertions(+), 3 deletions(-) commit 45b78dc26128ca87c5edb493bca6fac1e760be43 Author: davefx Date: Thu Aug 7 21:53:37 2008 +0000 Fixing problems with the new 20-byte serial numbers. Now it seems OK, but more test must be taken src/Makefile.am | 2 +- src/ca_file.c | 126 ++++++++++++++++++++++++++++++-------------------- src/ca_file.h | 4 +- src/new_cert_window.c | 3 +- src/tls.c | 10 +++- src/uint160.c | 21 +++++---- 6 files changed, 102 insertions(+), 64 deletions(-) commit c4961b993e1737b3812b5497f4e84c0ca0db3a38 Author: davefx Date: Thu Aug 7 18:17:41 2008 +0000 Fixing uint160_read function src/uint160.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 82941de785fc685cdf30ed65c3cd6a03d1bb877b Author: davefx Date: Thu Aug 7 18:13:20 2008 +0000 Highly unstable commit: working in natively support 20byte-serials certs/example-ca.gnomint | Bin 46080 -> 50176 bytes src/Makefile.am | 5 +- src/ca.c | 58 ++++--------- src/ca.h | 5 -- src/ca_creation.h | 3 +- src/ca_file.c | 190 ++++++++++++++++++++++++++++++++----------- src/ca_file.h | 4 +- src/certificate_properties.c | 28 +++---- src/certificate_properties.h | 2 +- src/new_cert_window.c | 6 +- src/new_req_window.c | 6 +- src/tls.c | 34 ++++---- src/tls.h | 3 +- src/uint160.c | 93 +++++++++++++++++++-- src/uint160.h | 5 ++ 15 files changed, 298 insertions(+), 144 deletions(-) commit 2970fe3b3c438d951af67b08ca589acf02429ad8 Author: davefx Date: Wed Aug 6 16:44:06 2008 +0000 Fixing date in header of files src/Makefile.am | 12 +++++++++--- src/ca.c | 2 +- src/ca.h | 2 +- src/ca_creation.c | 2 +- src/ca_creation.h | 2 +- src/ca_file.c | 2 +- src/ca_file.h | 2 +- src/ca_policy.c | 2 +- src/ca_policy.h | 2 +- src/certificate_properties.c | 2 +- src/certificate_properties.h | 2 +- src/csr_creation.c | 2 +- src/csr_creation.h | 2 +- src/csr_properties.c | 2 +- src/csr_properties.h | 2 +- src/main.c | 2 +- src/new_ca_window.c | 2 +- src/new_ca_window.h | 2 +- src/new_cert_creation_process.c | 2 +- src/new_cert_creation_process.h | 2 +- src/new_cert_window.c | 2 +- src/new_cert_window.h | 2 +- src/new_req_window.c | 2 +- src/new_req_window.h | 2 +- src/pkey_manage.c | 2 +- src/pkey_manage.h | 2 +- src/tls.c | 2 +- src/tls.h | 2 +- src/uint160.c | 2 +- src/uint160.h | 2 +- 30 files changed, 38 insertions(+), 32 deletions(-) commit c322bb8d59bc355f5c8acb5cd0d92af4eeb55a63 Author: davefx Date: Wed Aug 6 15:50:23 2008 +0000 Adding new class for managing 160-bit (20 octets) src/uint160.c | 164 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/uint160.h | 45 ++++++++++++++++ 2 files changed, 209 insertions(+) commit 60c9565de45ec5fc29ff246fb4d5448f8559e169 Author: davefx Date: Tue Aug 5 17:54:01 2008 +0000 Fixing problems with assigned serial numbers if there are multiple CAs src/ca_file.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit a621ea6270d5d35b2d6ac35ee7508af7fe4580a0 Author: davefx Date: Tue Aug 5 16:23:14 2008 +0000 Now you can create a full hierarchy of Certification Authorities and their certificates certs/example-ca.gnomint | Bin 41984 -> 46080 bytes gui/gnomint.glade | 3 + src/ca.c | 3 - src/new_cert_window.c | 336 +++++++++++++++++++++++++++++++++++++---------- src/new_req_window.c | 11 ++ 5 files changed, 284 insertions(+), 69 deletions(-) commit 8c08b9cabdce8238a523cec13e89b1b67ca2a7e2 Author: davefx Date: Mon Aug 4 21:13:58 2008 +0000 Autofilling of CSR fields. And now showing a full hierarchy of certificates. certs/example-ca.gnomint | Bin 29696 -> 41984 bytes src/ca.c | 102 ++++++++++++++++++++++++++++++++++++----------- src/ca_file.c | 9 +++-- src/new_req_window.c | 63 ++++++++++++++++++----------- 4 files changed, 124 insertions(+), 50 deletions(-) commit 958c704435e972bd7994948b5d18a8b06601234f Author: davefx Date: Mon Aug 4 18:17:40 2008 +0000 Progressing in changes for inheriting values from CA subject certs/example-ca.gnomint | Bin 29696 -> 29696 bytes configure.in | 2 +- gui/gnomint.glade | 1834 +++++++++++++++++++++++----------------------- src/ca.c | 5 + src/ca_file.c | 6 +- src/ca_file.h | 2 +- src/ca_policy.c | 3 +- src/new_cert_window.c | 5 +- src/new_req_window.c | 178 +++-- 9 files changed, 1065 insertions(+), 970 deletions(-) commit 64d36e4a3c46fa2b617ff7013b6a112593dd6307 Author: davefx Date: Mon Aug 4 04:33:59 2008 +0000 Committing changes, so now the CA tree is shown correctly while creating a CSR gui/gnomint.glade | 1838 +++++++++++++++++++++++++------------------------- src/ca.c | 6 +- src/ca.h | 6 + src/ca_file.c | 2 +- src/new_req_window.c | 71 +- 5 files changed, 993 insertions(+), 930 deletions(-) commit 2c5c4cf754a0de6a9a6600e7fdb2e75e27020e12 Author: davefx Date: Sat Aug 2 12:01:49 2008 +0000 Completing data model of the CA view certs/example-ca.gnomint | Bin 27648 -> 29696 bytes src/ca.c | 2 +- src/ca_file.c | 27 ++++++------ src/ca_file.h | 2 +- src/new_req_window.c | 106 +++++++++++++++++++++++++++++++++-------------- src/tls.c | 2 +- 6 files changed, 91 insertions(+), 48 deletions(-) commit c580c89b7b54dd3c579c16d8e8ac1b358671c286 Author: davefx Date: Fri Aug 1 15:23:28 2008 +0000 Adding new sqlite function for concatening values, so we can get a tree-ordered list of certificates directly from a SQL sentence src/ca_file.c | 102 +++++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 79 insertions(+), 23 deletions(-) commit a23e42c41a6a1e2a0c28e3f54152ffdc58c5f1ce Author: davefx Date: Fri Aug 1 15:22:29 2008 +0000 Commenting unfinished code, so it now compiles again src/new_req_window.c | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) commit 564a51c4c3cb56fe08e877a0e84a34c5b6af547d Author: davefx Date: Fri Aug 1 04:34:00 2008 +0000 Commiting yesterday changes. Working on showing a hierarchical view of the CAs in DB gui/gnomint.glade | 82 ++--- src/Makefile.am | 4 + src/ca.c | 4 +- src/ca_file.c | 102 +++++- src/ca_file.h | 1 + src/main.c | 6 +- src/new_ca_window.c | 819 +++++++++++++++++++++++++++++++++++++++++++ src/new_ca_window.h | 27 ++ src/new_cert_window.c | 938 -------------------------------------------------- src/new_cert_window.h | 4 - src/new_req_window.c | 264 ++++++++++++++ src/new_req_window.h | 26 ++ 12 files changed, 1281 insertions(+), 996 deletions(-) commit 4bc36cfa34343544cc22654a51afb0a1186edbe4 Author: davefx Date: Wed Jul 30 21:00:49 2008 +0000 Updating today's changes: improving translations and fixing the database version leap certs/example-ca.5.gnomint | Bin 0 -> 22528 bytes certs/example-ca.gnomint | Bin 19456 -> 27648 bytes src/ca_file.c | 85 ++++++++++++++++------ src/certificate_properties.c | 168 +++++++++++++++++++++++++------------------ 4 files changed, 164 insertions(+), 89 deletions(-) commit eac64093f4ba72f2f010cf150b08ca7490ed6e9e Author: davefx Date: Wed Jul 30 17:55:55 2008 +0000 Updating Spanish translation po/es.po | 645 +++++++++++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 487 insertions(+), 158 deletions(-) commit 030ac2da9c9a818f5deaf396e86f3261f8063ce3 Author: davefx Date: Wed Jul 30 17:14:02 2008 +0000 Adding example ca file certs/example-ca.gnomint | Bin 0 -> 19456 bytes src/certificate_properties.c | 34 +++++++++++++++++++++++++--------- 2 files changed, 25 insertions(+), 9 deletions(-) commit 700c48a36bbab0c7dfece4079c365684a202f1b1 Author: davefx Date: Tue Jul 29 18:19:18 2008 +0000 Updating: now is possible to create more than a CA in one DB. Only the first one is usable yet, though. gui/gnomint.glade | 1821 +++++++++++++++++++++++++------------------------ src/ca.h | 4 + src/ca_creation.h | 4 +- src/ca_file.c | 64 +- src/ca_file.h | 1 + src/ca_policy.c | 7 + src/csr_properties.c | 6 +- src/new_cert_window.c | 66 +- src/tls.c | 6 +- 9 files changed, 1055 insertions(+), 924 deletions(-) commit 8223e19bf06c59e515d5469e040bc501219f0c2e Author: davefx Date: Mon Jul 28 18:03:12 2008 +0000 Committing today's changes: adding support for inherit subject fields from certification authorities. Adding interface for selecting from multiple CAs gui/gnomint.glade | 1851 +++++++++++++++++++++++++++---------------------- po/es.po | 2 +- src/ca_policy.c | 117 +++- src/new_cert_window.c | 26 +- 4 files changed, 1132 insertions(+), 864 deletions(-) commit 510dfb79c94516471ef66ad6454548cf550372d9 Author: davefx Date: Mon Jul 28 16:18:57 2008 +0000 First version of interface for new features gui/gnomint.glade | 2136 +++++++++++++++++++++++++++++++---------------------- 1 file changed, 1254 insertions(+), 882 deletions(-) commit 6232fd0321b9e989b25c7ce55d535c6077a37b51 Author: davefx Date: Mon Jul 28 14:12:01 2008 +0000 Adding French language (thanks to Ahmed Baizid ) configure.in | 2 +- po/fr.po | 1187 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 1188 insertions(+), 1 deletion(-) commit d7f15c83f69ce8989530bd1dca4a4b38a90b1321 Author: davefx Date: Sun Jan 6 01:47:08 2008 +0000 Fixing compiler optimization configure.in | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) commit fe963876775ae5107b6c8e6097c7c3992e7e8b5b Author: davefx Date: Sun Jan 6 01:41:37 2008 +0000 Checking for libgnutls >= v2.0 configure.in | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) commit e65f9ed16ab8df1d971eca19f50f6dc36a9dca36 Author: davefx Date: Sun Jan 6 00:54:01 2008 +0000 Fixing typo in organizational word, patch by aluminium@users.sourceforge.net gui/gnomint.glade | 4 ++-- po/es.po | 4 ---- 2 files changed, 2 insertions(+), 6 deletions(-) commit e7daa1a6aebc7d69548e7a3bb612d1bf16600890 Author: davefx Date: Sun Jan 6 00:53:14 2008 +0000 Including detailed certificate view, patch by aluminium@users.sourceforge.net gui/gnomint.glade | 35 +- src/certificate_properties.c | 900 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 903 insertions(+), 32 deletions(-) commit 07ab00947c636f60dde67bb92a412cec3e28f0cf Author: davefx Date: Sun Jan 6 00:42:39 2008 +0000 Deleting gnomint.pot from subversion repository, as it's automatically generated po/gnomint.pot | 1126 -------------------------------------------------------- 1 file changed, 1126 deletions(-) commit 75fc40be98b23242ac87877dacaebe3af7a0bc48 Author: davefx Date: Sun Jan 6 00:39:53 2008 +0000 Adding pkey_manage.c to POTFILES.in po/POTFILES.in | 1 + 1 file changed, 1 insertion(+) commit 335ce4a4bdcf2767c1f87924743a6eba0461718c Author: davefx Date: Sat Jan 5 14:17:29 2008 +0000 Allowing -O2 optimization configure.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 7a55da99106749e44b87f16bf12d304d4a79d392 Author: davefx Date: Sun Dec 16 17:45:22 2007 +0000 Applying patch from sf.net, fixing some uninitialized variables warnings ChangeLog | 86 +++++++++++++++++++++++++++++++++++++++++++++++++------ src/ca.c | 4 +-- src/pkey_manage.c | 2 +- 3 files changed, 80 insertions(+), 12 deletions(-) commit 317cccf7bb921dea96af0c270488a59b26e89b35 Author: davefx Date: Mon Nov 19 18:22:32 2007 +0000 Actualizado plan de pruebas doc/test_plan.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 9e64ab786b061557d0005ffc13f492337dc56c71 Author: davefx Date: Mon Nov 19 17:53:11 2007 +0000 Updating changelog for version 0.4 ChangeLog | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) commit e4c040764bf90534f9b055107e5ffa4796cd661c Author: davefx Date: Mon Nov 19 17:50:29 2007 +0000 Preparing for gnoMint version 0.4.0 configure.in | 4 +- doc/test_plan.txt | 14 +- po/es.po | 528 +++++++++++++++++++++++++++++------------------------- po/gnomint.pot | 452 ++++++++++++++++++++++++---------------------- 4 files changed, 525 insertions(+), 473 deletions(-) commit 51fde23fbc128c692f891fa996698e8e1e23a8d7 Author: davefx Date: Mon Nov 19 17:10:02 2007 +0000 Allowing to extract private keys from database. Retrieving external private keys when needed doc/test_plan.txt | 52 +- gui/gnomint.glade | 1807 ++++++++++++++++++++++++++----------------------- src/ca.c | 101 ++- src/ca_file.c | 64 +- src/ca_file.h | 5 +- src/new_cert_window.c | 37 +- src/pkey_manage.c | 280 +++++++- src/pkey_manage.h | 13 +- src/tls.c | 153 +++-- src/tls.h | 6 + 10 files changed, 1545 insertions(+), 973 deletions(-) commit 6c4fe2eb448b03188208a85cc81820f588a6fa80 Author: davefx Date: Fri Nov 16 16:35:50 2007 +0000 Tidying up a bit. src/Makefile.am | 4 +- src/ca.c | 126 +++++++------ src/ca_creation.c | 5 +- src/ca_file.c | 268 +++++++++++++++++++++----- src/ca_file.h | 25 ++- src/ca_policy.c | 27 +-- src/csr_creation.c | 5 +- src/new_cert_creation_process.c | 16 -- src/new_cert_window.c | 54 +++--- src/pkey_cipher.c | 405 ---------------------------------------- src/pkey_cipher.h | 36 ---- src/pkey_manage.c | 405 ++++++++++++++++++++++++++++++++++++++++ src/pkey_manage.h | 57 ++++++ 13 files changed, 819 insertions(+), 614 deletions(-) commit 8cad98f4b3b449584ea8605ec93b2060cc121127 Author: davefx Date: Wed Nov 14 17:20:02 2007 +0000 Actualizando traducción. Solucionados algunos fallos po/es.po | 552 +++++++++++++++++++++++++++++++++++++-------------------- po/gnomint.pot | 517 +++++++++++++++++++++++++++++++++++------------------ src/ca.c | 13 +- src/ca_file.c | 49 ++--- 4 files changed, 741 insertions(+), 390 deletions(-) commit 6ffb5a7a9d72b48e7f1d3ebdc99c81654a990057 Author: davefx Date: Wed Nov 14 13:55:45 2007 +0000 Allowing whole database password protection that affects to private keys TEST | 29 -- doc/ca-db-password-protection.txt | 22 ++ doc/ca-properties.txt | 12 + doc/gnomint-db.dia | Bin 0 -> 4000 bytes doc/test_plan.txt | 29 ++ gui/gnomint.glade | 677 +++++++++++++++++++++++++++++++++++--- src/Makefile.am | 7 +- src/ca.c | 481 ++++++++++++++++++++++----- src/ca.h | 2 +- src/ca_creation.c | 37 ++- src/ca_creation.h | 8 + src/ca_file.c | 343 ++++++++++++++++++- src/ca_file.h | 9 +- src/certificate_properties.c | 5 +- src/certificate_properties.h | 2 +- src/csr_creation.c | 19 +- src/main.c | 5 + src/new_cert_window.c | 88 ++++- src/pkey_cipher.c | 405 +++++++++++++++++++++++ src/pkey_cipher.h | 36 ++ src/tls.c | 6 +- 21 files changed, 2045 insertions(+), 177 deletions(-) commit 5d9349318502b741de6a32108724bb5aa35b36dd Author: davefx Date: Tue Nov 13 09:27:45 2007 +0000 Adding new tests for new features TEST | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) commit ddc090c10d08d683afa0c573f1da1ad642e416bd Author: davefx Date: Tue Nov 13 09:16:39 2007 +0000 Committing test plan TEST | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) commit 29f7fbd66da62664ad77d29f3deacf30571813a4 Author: davefx Date: Mon Nov 12 15:47:35 2007 +0000 Disabling non-available pop-up options src/ca.c | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) commit e94174eef86e8a8c62a33b6d31bc980fd25b8877 Author: davefx Date: Mon Nov 12 15:33:09 2007 +0000 Adding pop-up menu support for managing CSRs and Certs gui/gnomint.glade | 172 +++++++++++++++++++++++++++++++++++++++++++++++++++++- src/ca.c | 80 ++++++++++++++++++++++--- src/ca.h | 2 +- src/main.c | 6 ++ 4 files changed, 251 insertions(+), 9 deletions(-) commit cc5e28c3e5e50c720e0b6770396e5e14bec6a6e4 Author: davefx Date: Sat Nov 3 08:19:17 2007 +0000 Preparing for version 0.3.2 ChangeLog | 21 ++++++ NEWS | 5 ++ configure.in | 4 +- po/gnomint.pot | 230 +++++++++++++++++++++++++++++++-------------------------- 4 files changed, 152 insertions(+), 108 deletions(-) commit cc8a683633207bc8dbd83853d665a1b7d94dfed3 Author: davefx Date: Sat Nov 3 08:02:17 2007 +0000 Fixing DB upgrading from version 3 to 4 src/ca_file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit f22557ea00e5a7134a71d7022e3b5828ce58ee87 Author: davefx Date: Thu Nov 1 22:07:03 2007 +0000 Updating Spanish translation po/es.po | 232 ++++++++++++++++++++++++++++++++++----------------------------- 1 file changed, 125 insertions(+), 107 deletions(-) commit 0dd2b8ca0865053e417781398d27125d46b89b41 Author: davefx Date: Thu Nov 1 22:00:43 2007 +0000 Updating to version 0.3.1, prior to official release ChangeLog | 440 +++++++++++++++++++---------------------------------------- NEWS | 74 ++++++++++ configure.in | 4 +- 3 files changed, 216 insertions(+), 302 deletions(-) commit 5210efa1de6d3f4f2357ab5f72473825fd6cd774 Author: davefx Date: Thu Nov 1 21:07:06 2007 +0000 * Fixing problem with certificates serial number: all the certs were being created with serial 0. * Allowing the definition of time between two CRL updates. gui/gnomint.glade | 299 +++++++++++++++++++++++++--------------- src/ca.c | 5 +- src/ca_file.c | 12 ++ src/ca_file.h | 1 + src/ca_policy.c | 26 +++- src/new_cert_creation_process.c | 1 + src/new_cert_window.c | 2 + 7 files changed, 235 insertions(+), 111 deletions(-) commit 6e1cdce679267c432de5f502d2fd60bc8ad9f8fd Author: davefx Date: Thu Nov 1 17:32:39 2007 +0000 Fixing CRL generation problems. Currently, the CRL expiration time is 1 day ChangeLog | 161 +++++++++++++++++++++++++++++++++++++++----------------------- src/tls.c | 50 ++++++++++++------- 2 files changed, 135 insertions(+), 76 deletions(-) commit aa6e20d0cbf5180b29ef4c579523dd94d079123c Author: davefx Date: Mon Jul 30 18:38:00 2007 +0000 Changing license messages in all files. Starting support for generating CRLs (not working yet) gui/gnomint.glade | 51 +++- po/es.po | 410 +++++++++++++++++++------------- po/gnomint.pot | 390 +++++++++++++++++------------- src/ca.c | 512 ++++++++++++++++++++++++++++++---------- src/ca.h | 6 +- src/ca_creation.c | 6 +- src/ca_creation.h | 6 +- src/ca_file.c | 227 +++++++++++++++--- src/ca_file.h | 13 +- src/ca_policy.c | 6 +- src/ca_policy.h | 6 +- src/certificate_properties.c | 6 +- src/certificate_properties.h | 6 +- src/csr_creation.c | 6 +- src/csr_creation.h | 6 +- src/csr_properties.c | 6 +- src/csr_properties.h | 6 +- src/main.c | 8 +- src/new_cert_creation_process.c | 6 +- src/new_cert_creation_process.h | 6 +- src/new_cert_window.c | 6 +- src/new_cert_window.h | 6 +- src/tls.c | 101 +++++++- src/tls.h | 13 +- 24 files changed, 1281 insertions(+), 534 deletions(-) commit 12e9ca3e0bf71d2740c53e713cde7026658f75f4 Author: davefx Date: Mon Jul 30 14:28:55 2007 +0000 Preparing version 0.1.6. Now gnoMint can export PKCS#12 structures COPYING | 912 +++++++++++++++++++++++++++++++++++---------------- configure.in | 4 +- gui/gnomint.glade | 6 + po/es.po | 97 ++++-- po/gnomint.pot | 84 +++-- src/ca.c | 142 +++++++- src/csr_properties.c | 4 +- src/tls.c | 205 ++++++++++++ src/tls.h | 3 + 9 files changed, 1104 insertions(+), 353 deletions(-) commit ee031d1cd1af05755217e5617670b85ad1967090 Author: davefx Date: Tue May 22 23:19:31 2007 +0000 Fixing compilation bugs in x86-64 src/ca_policy.c | 3 ++- src/certificate_properties.c | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) commit c546f4a5873dccccd7a4ffb19d5f6a64a003ff3a Author: davefx Date: Mon May 21 20:15:47 2007 +0000 Fixing one problem introduced in last correction for x86-64 arch src/tls.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit f3301217615e77569b2a6da466749ff2a84c2d11 Author: davefx Date: Fri May 18 18:12:43 2007 +0000 Using size_t where it is needed (in Fedora amd64 arch, it seems to be a problem) src/tls.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) commit 2ab6471378c61a5faafeb02cfb987076946d2e16 Author: davefx Date: Thu May 17 18:55:26 2007 +0000 Perhaps fixing another compilation problem in amd64 arch src/ca.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 2c9614c288fe37e11e2a647455faf4dfb08e4c99 Author: davefx Date: Wed May 16 17:42:23 2007 +0000 Possibly fixing compilation errors in amd64 arch src/ca.c | 2 +- src/tls.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) commit 4c76b6c2e22e00e4a5b375c3f5b522bd618ca466 Author: davefx Date: Tue May 15 15:17:02 2007 +0000 Updating to version 0.1.5 prior to official release ChangeLog | 139 ++++++++++++++++++++++++++++++++++++++--------------------- configure.in | 4 +- 2 files changed, 91 insertions(+), 52 deletions(-) commit 1423ae321bbc0c9a9328169a95f7d1e576d492a0 Author: davefx Date: Tue May 15 14:37:33 2007 +0000 Updating Spanish translation po/POTFILES.in | 1 + po/es.po | 94 ++-- po/gnomint.pot | 1370 ++++++++++---------------------------------------------- 3 files changed, 294 insertions(+), 1171 deletions(-) commit 961439cf396a77e1237de7044db137b59e07e558 Author: davefx Date: Tue May 15 11:03:03 2007 +0000 Commiting database version 3, with certs and csr's containing their DNs and parent's DNs in the database src/ca_file.c | 236 ++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 197 insertions(+), 39 deletions(-) commit 688f1f7b21581be6a34b6dc59a95382b52e3b0fb Author: davefx Date: Tue May 15 11:01:50 2007 +0000 Showing database errors when creating or importing CSRs src/ca.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) commit 4696cf32237011c8cfcd8ccc21d79721dff6d889 Author: davefx Date: Tue May 15 10:51:49 2007 +0000 Saving DN in tlscsr structure src/tls.c | 14 ++++++++++++++ src/tls.h | 1 + 2 files changed, 15 insertions(+) commit 58bf80810242c6d621c90dd7180bfd544a651027 Author: davefx Date: Tue May 15 10:10:27 2007 +0000 Showing progress when creating CSR's key pair src/new_cert_creation_process.c | 1 + 1 file changed, 1 insertion(+) commit 2f1df470115c855daa0ae3b0f46aeb31f4b593b2 Author: davefx Date: Tue May 15 10:08:09 2007 +0000 Adding support for retrieving DN from PEMs src/tls.c | 27 +++++++++++++++++++++++++++ src/tls.h | 2 ++ 2 files changed, 29 insertions(+) commit 610794d4b603ab805bab7c19ae6b0db439505eda Author: davefx Date: Mon May 14 21:34:17 2007 +0000 Allowing the save of CSR without private key. Adding support for importing CSRs in PEM and DER formats src/ca.c | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- src/ca_file.c | 14 +++++++--- 2 files changed, 97 insertions(+), 6 deletions(-) commit 64ea272c77e809a51caf6a0f02863c8aebe639a3 Author: davefx Date: Mon May 14 21:33:16 2007 +0000 Fixing visualizing error src/csr_properties.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit e9fd213f0470fe0110802bd3a6ec16cb131a2022 Author: davefx Date: Mon May 14 21:32:21 2007 +0000 Fixing aligning errors gui/gnomint.glade | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit d630166ef5c6edebbeb21e3ceb7ff8e850334400 Author: davefx Date: Mon May 14 19:13:53 2007 +0000 Improving code safety src/ca_file.c | 2 ++ 1 file changed, 2 insertions(+) commit 873388e5e1349863e3abb439381361931b2d1359 Author: davefx Date: Mon May 14 19:12:57 2007 +0000 Reverting old behaviour: CA are created with a minimal set of correct properties for creating useful certificates src/new_cert_creation_process.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) commit 2c38cd031138049245de470591b9607405a0d37b Author: davefx Date: Mon May 14 16:36:15 2007 +0000 Starting CSR importing support gui/gnomint.glade | 21 +++++++++++++++++++++ src/ca.c | 25 +++++++++++++++++++++++++ src/ca.h | 1 + src/main.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 89 insertions(+) commit f23d6e0465f8f003e6760b3b454db7d2604aea28 Author: davefx Date: Mon May 14 15:21:13 2007 +0000 Fixing problem when exporting private key of CSRs src/ca.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 37d7773335fb7cacf26950a1271eda1804959f31 Author: davefx Date: Mon May 14 13:09:24 2007 +0000 Updating changelog ChangeLog | 108 ++++++++++++++++++++++++++++++++++---------------------------- 1 file changed, 60 insertions(+), 48 deletions(-) commit d2f739faae6e600ddcd52d4d8a6dcb59a34e8881 Author: davefx Date: Mon May 14 12:58:13 2007 +0000 Fixing compilation error for release 0.1.4 src/Makefile.am | 1 + 1 file changed, 1 insertion(+) commit a90b20825c01e03ee905014ec74ce5cd5636ce9c Author: davefx Date: Mon May 14 12:53:03 2007 +0000 Updating changelog for 0.1.4 version ChangeLog | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 100 insertions(+), 3 deletions(-) commit b4aa8a321aa55cda9ff60243ee2630c58bb1e4af Author: davefx Date: Mon May 14 12:27:51 2007 +0000 Adding support for stablishing a set of policies for certificate generation configure.in | 6 +- gui/gnomint.glade | 1647 +++++++++++++++++++++++--------------- po/es.po | 1643 +++++++++++++++++--------------------- src/Makefile.am | 2 + src/ca.c | 20 +- src/ca.h | 3 +- src/ca_creation.c | 2 +- src/ca_creation.h | 2 +- src/ca_file.c | 6 +- src/ca_file.h | 2 +- src/ca_policy.c | 239 ++++++ src/ca_policy.h | 25 + src/certificate_properties.c | 30 +- src/certificate_properties.h | 2 +- src/csr_creation.c | 2 +- src/csr_creation.h | 2 +- src/csr_properties.c | 2 +- src/csr_properties.h | 2 +- src/main.c | 8 +- src/new_cert_creation_process.c | 2 +- src/new_cert_creation_process.h | 2 +- src/new_cert_window.c | 1652 +++++++++++++++++++++------------------ src/new_cert_window.h | 2 +- src/tls.c | 32 +- src/tls.h | 3 +- 25 files changed, 2955 insertions(+), 2383 deletions(-) commit 6a54be835d55c0bcd285ad2bbc8544aae345af61 Author: davefx Date: Sun Nov 19 22:55:57 2006 +0000 Fixing some typo problems in country names src/new_cert_window.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) commit 9b5a4f32f8cba744c40ac5e4a43206259e45bf45 Author: davefx Date: Sun Nov 19 22:40:20 2006 +0000 Updating country list, so now it uses iso_3166 translation. Bug reported by Florian K. Steinel configure.in | 4 +- gui/gnomint.glade | 51 +++--- po/es.po | 116 ++++++------ po/gnomint.pot | 114 +++++++----- src/new_cert_window.c | 487 +++++++++++++++++++++++++------------------------- 5 files changed, 403 insertions(+), 369 deletions(-) commit 97cc0c5b7b912fead5ba5f87621e94e0dd3fc530 Author: davefx Date: Sun Nov 19 22:18:34 2006 +0000 Supporting SQLite 3 now, as SQLite 2 is deprecated. Adding tool-script for converting existing databases src/Makefile.am | 4 ++- src/ca.c | 8 +++--- src/ca_creation.c | 2 +- src/ca_file.c | 69 +++++++++++++++++++++++++------------------------- src/ca_file.h | 2 +- src/csr_creation.c | 2 +- src/gnomint-upgrade-db | 50 ++++++++++++++++++++++++++++++++++++ 7 files changed, 94 insertions(+), 43 deletions(-) commit 03296de44c66ba26edf91b03511558e7460e57f8 Author: davefx Date: Sat Nov 11 10:45:15 2006 +0000 Updating DB version to 2, with support for CA policies. Adding support for upgrading from earlier DB versions. src/ca_file.c | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- src/ca_file.h | 2 ++ 2 files changed, 70 insertions(+), 1 deletion(-) commit 6744f83f127f4cdddfadb0d2bb9793945502a135 Author: davefx Date: Fri Nov 10 13:26:54 2006 +0000 Releasing 0.1.3 version configure.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit f5d622777ee93064d8404c8acc161781f53d9d71 Author: davefx Date: Fri Nov 10 13:19:28 2006 +0000 * Allowing uncrypted private key export. * Requiring minimum length for private-key export passphrase * Checking confirmation for private-key export passphrase * Fixing focus grab when asking for passphrase * Updated Spanish translation gui/gnomint.glade | 750 +++++++++++++++++++++++++++++++----------------------- po/es.po | 224 +++++++++------- po/gnomint.pot | 189 ++++++++------ src/ca.c | 163 ++++++++++-- 4 files changed, 817 insertions(+), 509 deletions(-) commit f092d0774ab041634621f4d380c3c4169693d278 Author: davefx Date: Fri Nov 10 10:40:10 2006 +0000 Replacing /bin/sh by /bin/bash, fixing Ubuntu/Debian error as they link /bin/sh to /bin/dash instead of /bin/bash autogen.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 6330f352c7db2f194eaee05ddde33743b08463d0 Author: davefx Date: Sun Oct 15 08:30:57 2006 +0000 Moving everything to trunk directory AUTHORS | 1 + BUGS | 0 COPYING | 340 ++++ ChangeLog | 179 ++ INSTALL | 0 MAINTAINERS | 1 + Makefile.am | 24 + NEWS | 0 README | 1 + TODO | 40 + autogen.sh | 24 + certs/davefx.pem | 33 + configure.in | 179 ++ debian/changelog | 12 + debian/compat | 1 + debian/conffiles.ex | 7 + debian/control | 14 + debian/copyright | 10 + debian/cron.d.ex | 4 + debian/dirs | 2 + debian/docs | 4 + debian/emacsen-install.ex | 45 + debian/emacsen-remove.ex | 15 + debian/emacsen-startup.ex | 19 + debian/gnomint-default.ex | 10 + debian/gnomint.doc-base.EX | 22 + debian/init.d.ex | 74 + debian/manpage.1.ex | 59 + debian/manpage.sgml.ex | 156 ++ debian/manpage.xml.ex | 148 ++ debian/menu.ex | 2 + debian/postinst.ex | 42 + debian/postrm.ex | 38 + debian/preinst.ex | 38 + debian/prerm.ex | 38 + debian/rules | 107 ++ debian/watch.ex | 22 + gnomint.spec.in | 14 + gui/Makefile.am | 10 + gui/ca-stamp-16.png | Bin 0 -> 885 bytes gui/ca-stamp.png | Bin 0 -> 4411 bytes gui/gnomint.glade | 4049 +++++++++++++++++++++++++++++++++++++++ gui/gnomint.png | Bin 0 -> 4411 bytes gui/key-16.png | Bin 0 -> 537 bytes po/ChangeLog | 66 + po/POTFILES.in | 14 + po/es.po | 1752 +++++++++++++++++ po/gnomint.pot | 1684 ++++++++++++++++ src/Makefile.am | 40 + src/ca.c | 981 ++++++++++ src/ca.h | 27 + src/ca_creation.c | 190 ++ src/ca_creation.h | 74 + src/ca_file.c | 329 ++++ src/ca_file.h | 53 + src/certificate_properties.c | 142 ++ src/certificate_properties.h | 23 + src/csr_creation.c | 191 ++ src/csr_creation.h | 35 + src/csr_properties.c | 91 + src/csr_properties.h | 23 + src/main.c | 280 +++ src/new_cert_creation_process.c | 300 +++ src/new_cert_creation_process.h | 26 + src/new_cert_window.c | 1078 +++++++++++ src/new_cert_window.h | 28 + src/tls.c | 892 +++++++++ src/tls.h | 96 + 68 files changed, 14199 insertions(+) commit f9cdaf2b2ae8b56a445be8a602baea8a853fb3f0 Author: davefx Date: Sun Oct 15 08:22:29 2006 +0000 Adding directory for main gnomint trunk gnomint-1.3.0/aclocal.m40000664000175000017500000021651512672104233011763 00000000000000# generated automatically by aclocal 1.15 -*- Autoconf -*- # Copyright (C) 1996-2014 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, [m4_warning([this file was generated for autoconf 2.69. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) dnl AM_GCONF_SOURCE_2 dnl Defines GCONF_SCHEMA_CONFIG_SOURCE which is where you should install schemas dnl (i.e. pass to gconftool-2 dnl Defines GCONF_SCHEMA_FILE_DIR which is a filesystem directory where dnl you should install foo.schemas files dnl AC_DEFUN([AM_GCONF_SOURCE_2], [ if test "x$GCONF_SCHEMA_INSTALL_SOURCE" = "x"; then GCONF_SCHEMA_CONFIG_SOURCE=`gconftool-2 --get-default-source` else GCONF_SCHEMA_CONFIG_SOURCE=$GCONF_SCHEMA_INSTALL_SOURCE fi AC_ARG_WITH([gconf-source], AC_HELP_STRING([--with-gconf-source=sourceaddress], [Config database for installing schema files.]), [GCONF_SCHEMA_CONFIG_SOURCE="$withval"],) AC_SUBST(GCONF_SCHEMA_CONFIG_SOURCE) AC_MSG_RESULT([Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation]) if test "x$GCONF_SCHEMA_FILE_DIR" = "x"; then GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas' fi AC_ARG_WITH([gconf-schema-file-dir], AC_HELP_STRING([--with-gconf-schema-file-dir=dir], [Directory for installing schema files.]), [GCONF_SCHEMA_FILE_DIR="$withval"],) AC_SUBST(GCONF_SCHEMA_FILE_DIR) AC_MSG_RESULT([Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files]) AC_ARG_ENABLE(schemas-install, AC_HELP_STRING([--disable-schemas-install], [Disable the schemas installation]), [case ${enableval} in yes|no) ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-schemas-install]) ;; esac]) AM_CONDITIONAL([GCONF_SCHEMAS_INSTALL], [test "$enable_schemas_install" != no]) ]) # Copyright (C) 1995-2002 Free Software Foundation, Inc. # Copyright (C) 2001-2003,2004 Red Hat, Inc. # # This file is free software, distributed under the terms of the GNU # General Public License. As a special exception to the GNU General # Public License, this file may be distributed as part of a program # that contains a configuration script generated by Autoconf, under # the same distribution terms as the rest of that program. # # This file can be copied and used freely without restrictions. It can # be used in projects which are not available under the GNU Public License # but which still want to provide support for the GNU gettext functionality. # # Macro to add for using GNU gettext. # Ulrich Drepper , 1995, 1996 # # Modified to never use included libintl. # Owen Taylor , 12/15/1998 # # Major rework to remove unused code # Owen Taylor , 12/11/2002 # # Added better handling of ALL_LINGUAS from GNU gettext version # written by Bruno Haible, Owen Taylor 5/30/3002 # # Modified to require ngettext # Matthias Clasen 08/06/2004 # # We need this here as well, since someone might use autoconf-2.5x # to configure GLib then an older version to configure a package # using AM_GLIB_GNU_GETTEXT AC_PREREQ(2.53) dnl dnl We go to great lengths to make sure that aclocal won't dnl try to pull in the installed version of these macros dnl when running aclocal in the glib directory. dnl m4_copy([AC_DEFUN],[glib_DEFUN]) m4_copy([AC_REQUIRE],[glib_REQUIRE]) dnl dnl At the end, if we're not within glib, we'll define the public dnl definitions in terms of our private definitions. dnl # GLIB_LC_MESSAGES #-------------------- glib_DEFUN([GLIB_LC_MESSAGES], [AC_CHECK_HEADERS([locale.h]) if test $ac_cv_header_locale_h = yes; then AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, [AC_TRY_LINK([#include ], [return LC_MESSAGES], am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) if test $am_cv_val_LC_MESSAGES = yes; then AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your file defines LC_MESSAGES.]) fi fi]) # GLIB_PATH_PROG_WITH_TEST #---------------------------- dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) glib_DEFUN([GLIB_PATH_PROG_WITH_TEST], [# Extract the first word of "$2", so it can be a program name with args. set dummy $2; ac_word=[$]2 AC_MSG_CHECKING([for $ac_word]) AC_CACHE_VAL(ac_cv_path_$1, [case "[$]$1" in /*) ac_cv_path_$1="[$]$1" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in ifelse([$5], , $PATH, [$5]); do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if [$3]; then ac_cv_path_$1="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" dnl If no 4th arg is given, leave the cache variable unset, dnl so AC_PATH_PROGS will keep looking. ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" ])dnl ;; esac])dnl $1="$ac_cv_path_$1" if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then AC_MSG_RESULT([$]$1) else AC_MSG_RESULT(no) fi AC_SUBST($1)dnl ]) # GLIB_WITH_NLS #----------------- glib_DEFUN([GLIB_WITH_NLS], dnl NLS is obligatory [USE_NLS=yes AC_SUBST(USE_NLS) gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= AC_CHECK_HEADER(libintl.h, [gt_cv_func_dgettext_libintl="no" libintl_extra_libs="" # # First check in libc # AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc, [AC_TRY_LINK([ #include ], [return !ngettext ("","", 1)], gt_cv_func_ngettext_libc=yes, gt_cv_func_ngettext_libc=no) ]) if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc, [AC_TRY_LINK([ #include ], [return !dgettext ("","")], gt_cv_func_dgettext_libc=yes, gt_cv_func_dgettext_libc=no) ]) fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CHECK_FUNCS(bind_textdomain_codeset) fi # # If we don't have everything we want, check in libintl # if test "$gt_cv_func_dgettext_libc" != "yes" \ || test "$gt_cv_func_ngettext_libc" != "yes" \ || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then AC_CHECK_LIB(intl, bindtextdomain, [AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dgettext, gt_cv_func_dgettext_libintl=yes)])]) if test "$gt_cv_func_dgettext_libintl" != "yes" ; then AC_MSG_CHECKING([if -liconv is needed to use gettext]) AC_MSG_RESULT([]) AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dcgettext, [gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv], :,-liconv)], :,-liconv) fi # # If we found libintl, then check in it for bind_textdomain_codeset(); # we'll prefer libc if neither have bind_textdomain_codeset(), # and both have dgettext and ngettext # if test "$gt_cv_func_dgettext_libintl" = "yes" ; then glib_save_LIBS="$LIBS" LIBS="$LIBS -lintl $libintl_extra_libs" unset ac_cv_func_bind_textdomain_codeset AC_CHECK_FUNCS(bind_textdomain_codeset) LIBS="$glib_save_LIBS" if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then gt_cv_func_dgettext_libc=no else if test "$gt_cv_func_dgettext_libc" = "yes" \ && test "$gt_cv_func_ngettext_libc" = "yes"; then gt_cv_func_dgettext_libintl=no fi fi fi fi if test "$gt_cv_func_dgettext_libc" = "yes" \ || test "$gt_cv_func_dgettext_libintl" = "yes"; then gt_cv_have_gettext=yes fi if test "$gt_cv_func_dgettext_libintl" = "yes"; then INTLLIBS="-lintl $libintl_extra_libs" fi if test "$gt_cv_have_gettext" = "yes"; then AC_DEFINE(HAVE_GETTEXT,1, [Define if the GNU gettext() function is already present or preinstalled.]) GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" AC_CHECK_FUNCS(dcgettext) MSGFMT_OPTS= AC_MSG_CHECKING([if msgfmt accepts -c]) GLIB_RUN_PROG([$MSGFMT -c -o /dev/null],[ msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Project-Id-Version: test 1.0\n" "PO-Revision-Date: 2007-02-15 12:01+0100\n" "Last-Translator: test \n" "Language-Team: C \n" "MIME-Version: 1.0\n" "Content-Transfer-Encoding: 8bit\n" ], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) AC_SUBST(MSGFMT_OPTS) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) AC_TRY_LINK(, [extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr], [CATOBJEXT=.gmo DATADIRNAME=share], [case $host in *-*-solaris*) dnl On Solaris, if bind_textdomain_codeset is in libc, dnl GNU format message catalog is always supported, dnl since both are added to the libc all together. dnl Hence, we'd like to go with DATADIRNAME=share and dnl and CATOBJEXT=.gmo in this case. AC_CHECK_FUNC(bind_textdomain_codeset, [CATOBJEXT=.gmo DATADIRNAME=share], [CATOBJEXT=.mo DATADIRNAME=lib]) ;; *-*-openbsd*) CATOBJEXT=.mo DATADIRNAME=share ;; *) CATOBJEXT=.mo DATADIRNAME=lib ;; esac]) LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else gt_cv_have_gettext=no fi fi ]) if test "$gt_cv_have_gettext" = "yes" ; then AC_DEFINE(ENABLE_NLS, 1, [always defined to indicate that i18n is enabled]) fi dnl Test whether we really found GNU xgettext. if test "$XGETTEXT" != ":"; then dnl If it is not GNU xgettext we define it as : so that the dnl Makefiles still can work. if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else AC_MSG_RESULT( [found xgettext program is not GNU xgettext; ignore it]) XGETTEXT=":" fi fi # We need to process the po/ directory. POSUB=po AC_OUTPUT_COMMANDS( [case "$CONFIG_FILES" in *po/Makefile.in*) sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile esac]) dnl These rules are solely for the distribution goal. While doing this dnl we only have to keep exactly one list of the available catalogs dnl in configure.ac. for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" done dnl Make all variables we use known to autoconf. AC_SUBST(CATALOGS) AC_SUBST(CATOBJEXT) AC_SUBST(DATADIRNAME) AC_SUBST(GMOFILES) AC_SUBST(INSTOBJEXT) AC_SUBST(INTLLIBS) AC_SUBST(PO_IN_DATADIR_TRUE) AC_SUBST(PO_IN_DATADIR_FALSE) AC_SUBST(POFILES) AC_SUBST(POSUB) ]) # AM_GLIB_GNU_GETTEXT # ------------------- # Do checks necessary for use of gettext. If a suitable implementation # of gettext is found in either in libintl or in the C library, # it will set INTLLIBS to the libraries needed for use of gettext # and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable # gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST() # on various variables needed by the Makefile.in.in installed by # glib-gettextize. dnl glib_DEFUN([GLIB_GNU_GETTEXT], [AC_REQUIRE([AC_PROG_CC])dnl GLIB_LC_MESSAGES GLIB_WITH_NLS if test "$gt_cv_have_gettext" = "yes"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else AC_MSG_CHECKING(for catalogs to be installed) NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then NEW_LINGUAS="$NEW_LINGUAS $presentlang" fi done LINGUAS=$NEW_LINGUAS AC_MSG_RESULT($LINGUAS) fi dnl Construct list of names of catalog files to be constructed. if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly dnl find the mkinstalldirs script in another subdir but ($top_srcdir). dnl Try to locate is. MKINSTALLDIRS= if test -n "$ac_aux_dir"; then MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi AC_SUBST(MKINSTALLDIRS) dnl Generate list of files to be processed by xgettext which will dnl be included in po/Makefile. test -d po || mkdir po if test "x$srcdir" != "x."; then if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then posrcprefix="$srcdir/" else posrcprefix="../$srcdir/" fi else posrcprefix="../" fi rm -f po/POTFILES sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ < $srcdir/po/POTFILES.in > po/POTFILES ]) # AM_GLIB_DEFINE_LOCALEDIR(VARIABLE) # ------------------------------- # Define VARIABLE to the location where catalog files will # be installed by po/Makefile. glib_DEFUN([GLIB_DEFINE_LOCALEDIR], [glib_REQUIRE([GLIB_GNU_GETTEXT])dnl glib_save_prefix="$prefix" glib_save_exec_prefix="$exec_prefix" glib_save_datarootdir="$datarootdir" test "x$prefix" = xNONE && prefix=$ac_default_prefix test "x$exec_prefix" = xNONE && exec_prefix=$prefix datarootdir=`eval echo "${datarootdir}"` if test "x$CATOBJEXT" = "x.mo" ; then localedir=`eval echo "${libdir}/locale"` else localedir=`eval echo "${datadir}/locale"` fi prefix="$glib_save_prefix" exec_prefix="$glib_save_exec_prefix" datarootdir="$glib_save_datarootdir" AC_DEFINE_UNQUOTED($1, "$localedir", [Define the location where the catalogs will be installed]) ]) dnl dnl Now the definitions that aclocal will find dnl ifdef(glib_configure_ac,[],[ AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)]) AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)]) ])dnl # GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL]) # # Create a temporary file with TEST-FILE as its contents and pass the # file name to PROGRAM. Perform ACTION-IF-PASS if PROGRAM exits with # 0 and perform ACTION-IF-FAIL for any other exit status. AC_DEFUN([GLIB_RUN_PROG], [cat >conftest.foo <<_ACEOF $2 _ACEOF if AC_RUN_LOG([$1 conftest.foo]); then m4_ifval([$3], [$3], [:]) m4_ifvaln([$4], [else $4])dnl echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD fi]) dnl Autoconf macros for libgcrypt dnl Copyright (C) 2002, 2004, 2011 Free Software Foundation, Inc. dnl dnl This file is free software; as a special exception the author gives dnl unlimited permission to copy and/or distribute it, with or without dnl modifications, as long as this notice is preserved. dnl dnl This file is distributed in the hope that it will be useful, but dnl WITHOUT ANY WARRANTY, to the extent permitted by law; without even the dnl implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. dnl AM_PATH_LIBGCRYPT([MINIMUM-VERSION, dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) dnl Test for libgcrypt and define LIBGCRYPT_CFLAGS and LIBGCRYPT_LIBS. dnl MINIMUN-VERSION is a string with the version number optionalliy prefixed dnl with the API version to also check the API compatibility. Example: dnl a MINIMUN-VERSION of 1:1.2.5 won't pass the test unless the installed dnl version of libgcrypt is at least 1.2.5 *and* the API number is 1. Using dnl this features allows to prevent build against newer versions of libgcrypt dnl with a changed API. dnl AC_DEFUN([AM_PATH_LIBGCRYPT], [ AC_REQUIRE([AC_CANONICAL_HOST]) AC_ARG_WITH(libgcrypt-prefix, AC_HELP_STRING([--with-libgcrypt-prefix=PFX], [prefix where LIBGCRYPT is installed (optional)]), libgcrypt_config_prefix="$withval", libgcrypt_config_prefix="") if test x$libgcrypt_config_prefix != x ; then if test x${LIBGCRYPT_CONFIG+set} != xset ; then LIBGCRYPT_CONFIG=$libgcrypt_config_prefix/bin/libgcrypt-config fi fi AC_PATH_TOOL(LIBGCRYPT_CONFIG, libgcrypt-config, no) tmp=ifelse([$1], ,1:1.2.0,$1) if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then req_libgcrypt_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` min_libgcrypt_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'` else req_libgcrypt_api=0 min_libgcrypt_version="$tmp" fi AC_MSG_CHECKING(for LIBGCRYPT - version >= $min_libgcrypt_version) ok=no if test "$LIBGCRYPT_CONFIG" != "no" ; then req_major=`echo $min_libgcrypt_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` req_minor=`echo $min_libgcrypt_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` req_micro=`echo $min_libgcrypt_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` libgcrypt_config_version=`$LIBGCRYPT_CONFIG --version` major=`echo $libgcrypt_config_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'` minor=`echo $libgcrypt_config_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'` micro=`echo $libgcrypt_config_version | \ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'` if test "$major" -gt "$req_major"; then ok=yes else if test "$major" -eq "$req_major"; then if test "$minor" -gt "$req_minor"; then ok=yes else if test "$minor" -eq "$req_minor"; then if test "$micro" -ge "$req_micro"; then ok=yes fi fi fi fi fi fi if test $ok = yes; then AC_MSG_RESULT([yes ($libgcrypt_config_version)]) else AC_MSG_RESULT(no) fi if test $ok = yes; then # If we have a recent libgcrypt, we should also check that the # API is compatible if test "$req_libgcrypt_api" -gt 0 ; then tmp=`$LIBGCRYPT_CONFIG --api-version 2>/dev/null || echo 0` if test "$tmp" -gt 0 ; then AC_MSG_CHECKING([LIBGCRYPT API version]) if test "$req_libgcrypt_api" -eq "$tmp" ; then AC_MSG_RESULT([okay]) else ok=no AC_MSG_RESULT([does not match. want=$req_libgcrypt_api got=$tmp]) fi fi fi fi if test $ok = yes; then LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags` LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs` ifelse([$2], , :, [$2]) libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none` if test x"$libgcrypt_config_host" != xnone ; then if test x"$libgcrypt_config_host" != x"$host" ; then AC_MSG_WARN([[ *** *** The config script $LIBGCRYPT_CONFIG was *** built for $libgcrypt_config_host and thus may not match the *** used host $host. *** You may want to use the configure option --with-libgcrypt-prefix *** to specify a matching config script. ***]]) fi fi else LIBGCRYPT_CFLAGS="" LIBGCRYPT_LIBS="" ifelse([$3], , :, [$3]) fi AC_SUBST(LIBGCRYPT_CFLAGS) AC_SUBST(LIBGCRYPT_LIBS) ]) # nls.m4 serial 5 (gettext-0.18) dnl Copyright (C) 1995-2003, 2005-2006, 2008-2014 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Authors: dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. AC_PREREQ([2.50]) AC_DEFUN([AM_NLS], [ AC_MSG_CHECKING([whether NLS is requested]) dnl Default is enabled NLS AC_ARG_ENABLE([nls], [ --disable-nls do not use Native Language Support], USE_NLS=$enableval, USE_NLS=yes) AC_MSG_RESULT([$USE_NLS]) AC_SUBST([USE_NLS]) ]) # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- # serial 1 (pkg-config-0.24) # # Copyright © 2004 Scott James Remnant . # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # PKG_PROG_PKG_CONFIG([MIN-VERSION]) # ---------------------------------- AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) fi if test -n "$PKG_CONFIG"; then _pkg_min_version=m4_default([$1], [0.9.0]) AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) PKG_CONFIG="" fi fi[]dnl ])# PKG_PROG_PKG_CONFIG # PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # # Check to see whether a particular set of modules exists. Similar # to PKG_CHECK_MODULES(), but does not set variables or print errors. # # Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) # only at the first occurence in configure.ac, so if the first place # it's called might be skipped (such as if it is within an "if", you # have to call PKG_CHECK_EXISTS manually # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl if test -n "$PKG_CONFIG" && \ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then m4_default([$2], [:]) m4_ifvaln([$3], [else $3])dnl fi]) # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) # --------------------------------------------- m4_define([_PKG_CONFIG], [if test -n "$$1"; then pkg_cv_[]$1="$$1" elif test -n "$PKG_CONFIG"; then PKG_CHECK_EXISTS([$3], [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes]) else pkg_failed=untried fi[]dnl ])# _PKG_CONFIG # _PKG_SHORT_ERRORS_SUPPORTED # ----------------------------- AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], [AC_REQUIRE([PKG_PROG_PKG_CONFIG]) if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi[]dnl ])# _PKG_SHORT_ERRORS_SUPPORTED # PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], # [ACTION-IF-NOT-FOUND]) # # # Note that if there is a possibility the first call to # PKG_CHECK_MODULES might not happen, you should be sure to include an # explicit call to PKG_PROG_PKG_CONFIG in your configure.ac # # # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_MODULES], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl pkg_failed=no AC_MSG_CHECKING([for $1]) _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) _PKG_CONFIG([$1][_LIBS], [libs], [$2]) m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS and $1[]_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.]) if test $pkg_failed = yes; then AC_MSG_RESULT([no]) _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` else $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD m4_default([$4], [AC_MSG_ERROR( [Package requirements ($2) were not met: $$1_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. _PKG_TEXT])[]dnl ]) elif test $pkg_failed = untried; then AC_MSG_RESULT([no]) m4_default([$4], [AC_MSG_FAILURE( [The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. _PKG_TEXT To get pkg-config, see .])[]dnl ]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) $3 fi[]dnl ])# PKG_CHECK_MODULES # PKG_INSTALLDIR(DIRECTORY) # ------------------------- # Substitutes the variable pkgconfigdir as the location where a module # should install pkg-config .pc files. By default the directory is # $libdir/pkgconfig, but the default can be changed by passing # DIRECTORY. The user can override through the --with-pkgconfigdir # parameter. AC_DEFUN([PKG_INSTALLDIR], [m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) m4_pushdef([pkg_description], [pkg-config installation directory @<:@]pkg_default[@:>@]) AC_ARG_WITH([pkgconfigdir], [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, [with_pkgconfigdir=]pkg_default) AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) m4_popdef([pkg_default]) m4_popdef([pkg_description]) ]) dnl PKG_INSTALLDIR # PKG_NOARCH_INSTALLDIR(DIRECTORY) # ------------------------- # Substitutes the variable noarch_pkgconfigdir as the location where a # module should install arch-independent pkg-config .pc files. By # default the directory is $datadir/pkgconfig, but the default can be # changed by passing DIRECTORY. The user can override through the # --with-noarch-pkgconfigdir parameter. AC_DEFUN([PKG_NOARCH_INSTALLDIR], [m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) m4_pushdef([pkg_description], [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) AC_ARG_WITH([noarch-pkgconfigdir], [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, [with_noarch_pkgconfigdir=]pkg_default) AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) m4_popdef([pkg_default]) m4_popdef([pkg_description]) ]) dnl PKG_NOARCH_INSTALLDIR # PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, # [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # ------------------------------------------- # Retrieves the value of the pkg-config variable for the given module. AC_DEFUN([PKG_CHECK_VAR], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl _PKG_CONFIG([$1], [variable="][$3]["], [$2]) AS_VAR_COPY([$1], [pkg_cv_][$1]) AS_VAR_IF([$1], [""], [$5], [$4])dnl ])# PKG_CHECK_VAR # Copyright (C) 2002-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. # (This private macro should not be called outside this file.) AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.15' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. m4_if([$1], [1.15], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) # _AM_AUTOCONF_VERSION(VERSION) # ----------------------------- # aclocal traces this macro to find the Autoconf version. # This is a private macro too. Using m4_define simplifies # the logic in aclocal, which can simply ignore this definition. m4_define([_AM_AUTOCONF_VERSION], []) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.15])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to # '$srcdir', '$srcdir/..', or '$srcdir/../..'. # # Of course, Automake must honor this variable whenever it calls a # tool from the auxiliary directory. The problem is that $srcdir (and # therefore $ac_aux_dir as well) can be either absolute or relative, # depending on how configure is run. This is pretty annoying, since # it makes $ac_aux_dir quite unusable in subdirectories: in the top # source directory, any form will work fine, but in subdirectories a # relative path needs to be adjusted first. # # $ac_aux_dir/missing # fails when called from a subdirectory if $ac_aux_dir is relative # $top_srcdir/$ac_aux_dir/missing # fails if $ac_aux_dir is absolute, # fails when called from a subdirectory in a VPATH build with # a relative $ac_aux_dir # # The reason of the latter failure is that $top_srcdir and $ac_aux_dir # are both prefixed by $srcdir. In an in-source build this is usually # harmless because $srcdir is '.', but things will broke when you # start a VPATH build or use an absolute $srcdir. # # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, # iff we strip the leading $srcdir from $ac_aux_dir. That would be: # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` # and then we would define $MISSING as # MISSING="\${SHELL} $am_aux_dir/missing" # This will work as long as MISSING is not called from configure, because # unfortunately $(top_srcdir) has no meaning in configure. # However there are other variables, like CC, which are often used in # configure, and could therefore not use this "fixed" $ac_aux_dir. # # Another solution, used here, is to always expand $ac_aux_dir to an # absolute PATH. The drawback is that using absolute paths prevent a # configured tree to be moved without reconfiguration. AC_DEFUN([AM_AUX_DIR_EXPAND], [AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl # Expand $ac_aux_dir to an absolute path. am_aux_dir=`cd "$ac_aux_dir" && pwd` ]) # AM_CONDITIONAL -*- Autoconf -*- # Copyright (C) 1997-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ([2.52])dnl m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE])dnl AC_SUBST([$1_FALSE])dnl _AM_SUBST_NOTMAKE([$1_TRUE])dnl _AM_SUBST_NOTMAKE([$1_FALSE])dnl m4_define([_AM_COND_VALUE_$1], [$2])dnl if $2; then $1_TRUE= $1_FALSE='#' else $1_TRUE='#' $1_FALSE= fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then AC_MSG_ERROR([[conditional "$1" was never defined. Usually this means the macro was only invoked conditionally.]]) fi])]) # Copyright (C) 1999-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, # will think it sees a *use*, and therefore will trigger all it's # C support machinery. Also note that it means that autoscan, seeing # CC etc. in the Makefile, will ask for an AC_PROG_CC use... # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. # NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC". # We try a few techniques and use that to set a single cache variable. # # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular # dependency, and given that the user is not expected to run this macro, # just rely on AC_PROG_CC. AC_DEFUN([_AM_DEPENDENCIES], [AC_REQUIRE([AM_SET_DEPDIR])dnl AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl AC_REQUIRE([AM_MAKE_INCLUDE])dnl AC_REQUIRE([AM_DEP_TRACK])dnl m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], [$1], [CXX], [depcc="$CXX" am_compiler_list=], [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'], [$1], [UPC], [depcc="$UPC" am_compiler_list=], [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'], [depcc="$$1" am_compiler_list=]) AC_CACHE_CHECK([dependency style of $depcc], [am_cv_$1_dependencies_compiler_type], [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_$1_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` fi am__universal=false m4_case([$1], [CC], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac], [CXX], [case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac]) for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_$1_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_$1_dependencies_compiler_type=none fi ]) AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) AM_CONDITIONAL([am__fastdep$1], [ test "x$enable_dependency_tracking" != xno \ && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) ]) # AM_SET_DEPDIR # ------------- # Choose a directory name for dependency files. # This macro is AC_REQUIREd in _AM_DEPENDENCIES. AC_DEFUN([AM_SET_DEPDIR], [AC_REQUIRE([AM_SET_LEADING_DOT])dnl AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl ]) # AM_DEP_TRACK # ------------ AC_DEFUN([AM_DEP_TRACK], [AC_ARG_ENABLE([dependency-tracking], [dnl AS_HELP_STRING( [--enable-dependency-tracking], [do not reject slow dependency extractors]) AS_HELP_STRING( [--disable-dependency-tracking], [speeds up one-time build])]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' am__nodep='_no' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH])dnl _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl AC_SUBST([am__nodep])dnl _AM_SUBST_NOTMAKE([am__nodep])dnl ]) # Generate code to set up dependency tracking. -*- Autoconf -*- # Copyright (C) 1999-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [{ # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named 'Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running 'make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "$am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` AS_MKDIR_P([$dirpart/$fdir]) # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ])# _AM_OUTPUT_DEPENDENCY_COMMANDS # AM_OUTPUT_DEPENDENCY_COMMANDS # ----------------------------- # This macro should only be invoked once -- use via AC_REQUIRE. # # This code is only required when automatic dependency tracking # is enabled. FIXME. This creates each '.P' file that we will # need in order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O. m4_define([AC_PROG_CC], m4_defn([AC_PROG_CC]) [_AM_PROG_CC_C_O ]) # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) # ----------------------------------------------- # The call with PACKAGE and VERSION arguments is the old style # call (pre autoconf-2.50), which is being phased out. PACKAGE # and VERSION should now be passed to AC_INIT and removed from # the call to AM_INIT_AUTOMAKE. # We support both call styles for the transition. After # the next Automake release, Autoconf can make the AC_INIT # arguments mandatory, and then we can depend on a new Autoconf # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.65])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl # test to see if srcdir already configured if test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi AC_SUBST([CYGPATH_W]) # Define the identity of the package. dnl Distinguish between old-style and new-style calls. m4_ifval([$2], [AC_DIAGNOSE([obsolete], [$0: two- and three-arguments forms are deprecated.]) m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. m4_if( m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]), [ok:ok],, [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl _AM_IF_OPTION([no-define],, [AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl # Some tools Automake needs. AC_REQUIRE([AM_SANITY_CHECK])dnl AC_REQUIRE([AC_ARG_PROGRAM])dnl AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}]) AM_MISSING_PROG([AUTOCONF], [autoconf]) AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}]) AM_MISSING_PROG([AUTOHEADER], [autoheader]) AM_MISSING_PROG([MAKEINFO], [makeinfo]) AC_REQUIRE([AM_PROG_INSTALL_SH])dnl AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: # # AC_SUBST([mkdir_p], ['$(MKDIR_P)']) # We need awk for the "check" target (and possibly the TAP driver). The # system "awk" is bad on some platforms. AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES([CC])], [m4_define([AC_PROG_CC], m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES([CXX])], [m4_define([AC_PROG_CXX], m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJC], [_AM_DEPENDENCIES([OBJC])], [m4_define([AC_PROG_OBJC], m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], [_AM_DEPENDENCIES([OBJCXX])], [m4_define([AC_PROG_OBJCXX], m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl ]) AC_REQUIRE([AM_SILENT_RULES])dnl dnl The testsuite driver may need to know about EXEEXT, so add the dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. AC_CONFIG_COMMANDS_PRE(dnl [m4_provide_if([_AM_COMPILER_EXEEXT], [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl # POSIX will say in a future version that running "rm -f" with no argument # is OK; and we want to be able to make that assumption in our Makefile # recipes. So use an aggressive probe to check that the usage we want is # actually supported "in the wild" to an acceptable degree. # See automake bug#10828. # To make any issue more visible, cause the running configure to be aborted # by default if the 'rm' program in use doesn't match our expectations; the # user can still override this though. if rm -f && rm -fr && rm -rf; then : OK; else cat >&2 <<'END' Oops! Your 'rm' program seems unable to run without file operands specified on the command line, even when the '-f' option is present. This is contrary to the behaviour of most rm programs out there, and not conforming with the upcoming POSIX standard: Please tell bug-automake@gnu.org about your system, including the value of your $PATH and any error possibly output before this message. This can help us improve future automake versions. END if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then echo 'Configuration will proceed anyway, since you have set the' >&2 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 echo >&2 else cat >&2 <<'END' Aborting the configuration process, to ensure you take notice of the issue. You can download and install GNU coreutils to get an 'rm' implementation that behaves properly: . If you want to complete the configuration process using your problematic 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM to "yes", and re-run configure. END AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) fi fi dnl The trailing newline in this macro's definition is deliberate, for dnl backward compatibility and to allow trailing 'dnl'-style comments dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. ]) dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further dnl mangled by Autoconf and run in a shell conditional statement. m4_define([_AC_COMPILER_EXEEXT], m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header # that is generated. The stamp files are numbered to have different names. # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the # loop where config.status creates the headers, so we can generate # our stamp files there. AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers. _am_arg=$1 _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl if test x"${install_sh+set}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi AC_SUBST([install_sh])]) # Copyright (C) 2003-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. AC_DEFUN([AM_SET_LEADING_DOT], [rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering # Copyright (C) 1996-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_MAINTAINER_MODE([DEFAULT-MODE]) # ---------------------------------- # Control maintainer-specific portions of Makefiles. # Default is to disable them, unless 'enable' is passed literally. # For symmetry, 'disable' may be passed as well. Anyway, the user # can override the default with the --enable/--disable switch. AC_DEFUN([AM_MAINTAINER_MODE], [m4_case(m4_default([$1], [disable]), [enable], [m4_define([am_maintainer_other], [disable])], [disable], [m4_define([am_maintainer_other], [enable])], [m4_define([am_maintainer_other], [enable]) m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) dnl maintainer-mode's default is 'disable' unless 'enable' is passed AC_ARG_ENABLE([maintainer-mode], [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode], am_maintainer_other[ make rules and dependencies not useful (and sometimes confusing) to the casual installer])], [USE_MAINTAINER_MODE=$enableval], [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) AC_MSG_RESULT([$USE_MAINTAINER_MODE]) AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) MAINT=$MAINTAINER_MODE_TRUE AC_SUBST([MAINT])dnl ] ) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. AC_DEFUN([AM_MAKE_INCLUDE], [am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from 'make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi AC_SUBST([am__include]) AC_SUBST([am__quote]) AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- # Copyright (C) 1997-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ AC_DEFUN([AM_MISSING_PROG], [AC_REQUIRE([AM_MISSING_HAS_RUN]) $1=${$1-"${am_missing_run}$2"} AC_SUBST($1)]) # AM_MISSING_HAS_RUN # ------------------ # Define MISSING if not defined so far and test if it is modern enough. # If it is, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([missing])dnl if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then am_missing_run="$MISSING " else am_missing_run= AC_MSG_WARN(['missing' script is too old or missing]) fi ]) # Helper functions for option handling. -*- Autoconf -*- # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_MANGLE_OPTION(NAME) # ----------------------- AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) # _AM_SET_OPTION(NAME) # -------------------- # Set option NAME. Presently that only means defining a flag for this option. AC_DEFUN([_AM_SET_OPTION], [m4_define(_AM_MANGLE_OPTION([$1]), [1])]) # _AM_SET_OPTIONS(OPTIONS) # ------------------------ # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) # ------------------------------------------- # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) # Copyright (C) 1999-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_PROG_CC_C_O # --------------- # Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC # to automatically call this. AC_DEFUN([_AM_PROG_CC_C_O], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl AC_REQUIRE_AUX_FILE([compile])dnl AC_LANG_PUSH([C])dnl AC_CACHE_CHECK( [whether $CC understands -c and -o together], [am_cv_prog_cc_c_o], [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i]) if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi AC_LANG_POP([C])]) # For backward compatibility. AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_RUN_LOG(COMMAND) # ------------------- # Run COMMAND, save the exit status in ac_status, and log it. # (This has been adapted from Autoconf's _AC_RUN_LOG macro.) AC_DEFUN([AM_RUN_LOG], [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD (exit $ac_status); }]) # Check to make sure that the build environment is sane. -*- Autoconf -*- # Copyright (C) 1996-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[[\\\"\#\$\&\'\`$am_lf]]*) AC_MSG_ERROR([unsafe absolute working directory name]);; esac case $srcdir in *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; esac # Do 'set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( am_has_slept=no for am_try in 1 2; do echo "timestamp, slept: $am_has_slept" > conftest.file set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$[*]" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi if test "$[*]" != "X $srcdir/configure conftest.file" \ && test "$[*]" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken alias in your environment]) fi if test "$[2]" = conftest.file || test $am_try -eq 2; then break fi # Just in case. sleep 1 am_has_slept=yes done test "$[2]" = conftest.file ) then # Ok. : else AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi AC_MSG_RESULT([yes]) # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= if grep 'slept: no' conftest.file >/dev/null 2>&1; then ( sleep 1 ) & am_sleep_pid=$! fi AC_CONFIG_COMMANDS_PRE( [AC_MSG_CHECKING([that generated files are newer than configure]) if test -n "$am_sleep_pid"; then # Hide warnings about reused PIDs. wait $am_sleep_pid 2>/dev/null fi AC_MSG_RESULT([done])]) rm -f conftest.file ]) # Copyright (C) 2009-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_SILENT_RULES([DEFAULT]) # -------------------------- # Enable less verbose build rules; with the default set to DEFAULT # ("yes" being less verbose, "no" or empty being verbose). AC_DEFUN([AM_SILENT_RULES], [AC_ARG_ENABLE([silent-rules], [dnl AS_HELP_STRING( [--enable-silent-rules], [less verbose build output (undo: "make V=1")]) AS_HELP_STRING( [--disable-silent-rules], [verbose build output (undo: "make V=0")])dnl ]) case $enable_silent_rules in @%:@ ((( yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; esac dnl dnl A few 'make' implementations (e.g., NonStop OS and NextStep) dnl do not support nested variable expansions. dnl See automake bug#9928 and bug#10237. am_make=${MAKE-make} AC_CACHE_CHECK([whether $am_make supports nested variables], [am_cv_make_support_nested_variables], [if AS_ECHO([['TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 am__doit: @$(TRUE) .PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then am_cv_make_support_nested_variables=yes else am_cv_make_support_nested_variables=no fi]) if test $am_cv_make_support_nested_variables = yes; then dnl Using '$V' instead of '$(V)' breaks IRIX make. AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' else AM_V=$AM_DEFAULT_VERBOSITY AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY fi AC_SUBST([AM_V])dnl AM_SUBST_NOTMAKE([AM_V])dnl AC_SUBST([AM_DEFAULT_V])dnl AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl AC_SUBST([AM_DEFAULT_VERBOSITY])dnl AM_BACKSLASH='\' AC_SUBST([AM_BACKSLASH])dnl _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) # Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_STRIP # --------------------- # One issue with vendor 'install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip # is unlikely to handle the host's binaries. # Fortunately install-sh will honor a STRIPPROG variable, so we # always use install-sh in "make install-strip", and initialize # STRIPPROG with the value of the STRIP variable (set by the user). AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl # Installed binaries are usually stripped using 'strip' when the user # run "make install-strip". However 'strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the 'STRIP' environment variable to overrule this program. dnl Don't test for $cross_compiling = yes, because it might be 'maybe'. if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Copyright (C) 2006-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. # This macro is traced by Automake. AC_DEFUN([_AM_SUBST_NOTMAKE]) # AM_SUBST_NOTMAKE(VARIABLE) # -------------------------- # Public sister of _AM_SUBST_NOTMAKE. AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. # FORMAT should be one of 'v7', 'ustar', or 'pax'. # # Substitute a variable $(am__tar) that is a command # writing to stdout a FORMAT-tarball containing the directory # $tardir. # tardir=directory && $(am__tar) > result.tar # # Substitute a variable $(am__untar) that extract such # a tarball read from stdin. # $(am__untar) < result.tar # AC_DEFUN([_AM_PROG_TAR], [# Always define AMTAR for backward compatibility. Yes, it's still used # in the wild :-( We should find a proper way to deprecate it ... AC_SUBST([AMTAR], ['$${TAR-tar}']) # We'll loop over all known methods to create a tar archive until one works. _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' m4_if([$1], [v7], [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], [m4_case([$1], [ustar], [# The POSIX 1988 'ustar' format is defined with fixed-size fields. # There is notably a 21 bits limit for the UID and the GID. In fact, # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 # and bug#13588). am_max_uid=2097151 # 2^21 - 1 am_max_gid=$am_max_uid # The $UID and $GID variables are not portable, so we need to resort # to the POSIX-mandated id(1) utility. Errors in the 'id' calls # below are definitely unexpected, so allow the users to see them # (that is, avoid stderr redirection). am_uid=`id -u || echo unknown` am_gid=`id -g || echo unknown` AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format]) if test $am_uid -le $am_max_uid; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) _am_tools=none fi AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format]) if test $am_gid -le $am_max_gid; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) _am_tools=none fi], [pax], [], [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Go ahead even if we have the value already cached. We do so because we # need to set the values for the 'am__tar' and 'am__untar' variables. _am_tools=${am_cv_prog_tar_$1-$_am_tools} for _am_tool in $_am_tools; do case $_am_tool in gnutar) for _am_tar in tar gnutar gtar; do AM_RUN_LOG([$_am_tar --version]) && break done am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' am__untar="$_am_tar -xf -" ;; plaintar) # Must skip GNU tar: if it does not support --format= it doesn't create # ustar tarball either. (tar --version) >/dev/null 2>&1 && continue am__tar='tar chf - "$$tardir"' am__tar_='tar chf - "$tardir"' am__untar='tar xf -' ;; pax) am__tar='pax -L -x $1 -w "$$tardir"' am__tar_='pax -L -x $1 -w "$tardir"' am__untar='pax -r' ;; cpio) am__tar='find "$$tardir" -print | cpio -o -H $1 -L' am__tar_='find "$tardir" -print | cpio -o -H $1 -L' am__untar='cpio -i -H $1 -d' ;; none) am__tar=false am__tar_=false am__untar=false ;; esac # If the value was cached, stop now. We just wanted to have am__tar # and am__untar set. test -n "${am_cv_prog_tar_$1}" && break # tar/untar a dummy directory, and stop if the command works. rm -rf conftest.dir mkdir conftest.dir echo GrepMe > conftest.dir/file AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) rm -rf conftest.dir if test -s conftest.tar; then AM_RUN_LOG([$am__untar /dev/null 2>&1 && break fi done rm -rf conftest.dir AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) AC_MSG_RESULT([$am_cv_prog_tar_$1])]) AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR m4_include([m4/intltool.m4]) m4_include([m4/isc-posix.m4]) m4_include([m4/libtool.m4]) m4_include([m4/ltoptions.m4]) m4_include([m4/ltsugar.m4]) m4_include([m4/ltversion.m4]) m4_include([m4/lt~obsolete.m4]) gnomint-1.3.0/configure0000775000175000017500000200315712672104235012032 00000000000000#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.69 for gnoMint 1.3.0. # # Report bugs to <>. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. # # # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # Use a proper internal environment variable to ensure we don't fall # into an infinite loop, continuously re-executing ourselves. if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then _as_can_reexec=no; export _as_can_reexec; # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. # Preserve -v and -x to the replacement shell. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV case $- in # (((( *v*x* | *x*v* ) as_opts=-vx ;; *v* ) as_opts=-v ;; *x* ) as_opts=-x ;; * ) as_opts= ;; esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed `exec'. $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 as_fn_exit 255 fi # We don't want this to propagate to other subprocesses. { _as_can_reexec=; unset _as_can_reexec;} if test "x$CONFIG_SHELL" = x; then as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST else case \`(set -o) 2>/dev/null\` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi " as_required="as_fn_return () { (exit \$1); } as_fn_success () { as_fn_return 0; } as_fn_failure () { as_fn_return 1; } as_fn_ret_success () { return 0; } as_fn_ret_failure () { return 1; } exitcode=0 as_fn_success || { exitcode=1; echo as_fn_success failed.; } as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : else exitcode=1; echo positional parameters were not saved. fi test x\$exitcode = x0 || exit 1 test -x / || exit 1" as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || ( ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO PATH=/empty FPATH=/empty; export PATH FPATH test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1 test \$(( 1 + 1 )) = 2 || exit 1" if (eval "$as_required") 2>/dev/null; then : as_have_required=yes else as_have_required=no fi if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. as_found=: case $as_dir in #( /*) for as_base in sh bash ksh sh5; do # Try only shells that exist, to save several forks. as_shell=$as_dir/$as_base if { test -f "$as_shell" || test -f "$as_shell.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : CONFIG_SHELL=$as_shell as_have_required=yes if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : break 2 fi fi done;; esac as_found=false done $as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : CONFIG_SHELL=$SHELL as_have_required=yes fi; } IFS=$as_save_IFS if test "x$CONFIG_SHELL" != x; then : export CONFIG_SHELL # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. # Preserve -v and -x to the replacement shell. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV case $- in # (((( *v*x* | *x*v* ) as_opts=-vx ;; *v* ) as_opts=-v ;; *x* ) as_opts=-x ;; * ) as_opts= ;; esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed `exec'. $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 exit 255 fi if test x$as_have_required = xno; then : $as_echo "$0: This script requires a shell more modern than all" $as_echo "$0: the shells that I found on your system." if test x${ZSH_VERSION+set} = xset ; then $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" $as_echo "$0: be upgraded to zsh 4.3.4 or later." else $as_echo "$0: Please tell bug-autoconf@gnu.org and $0: about your system, including any error possibly output $0: before this message. Then install a modern shell, or $0: manually run the script under such a shell if you do $0: have one." fi exit 1 fi fi fi SHELL=${CONFIG_SHELL-/bin/sh} export SHELL # Unset more variables known to interfere with behavior of common tools. CLICOLOR_FORCE= GREP_OPTIONS= unset CLICOLOR_FORCE GREP_OPTIONS ## --------------------- ## ## M4sh Shell Functions. ## ## --------------------- ## # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p # as_fn_executable_p FILE # ----------------------- # Test if FILE is an executable regular file. as_fn_executable_p () { test -f "$1" && test -x "$1" } # as_fn_executable_p # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with STATUS, using 1 if that was 0. as_fn_error () { as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi $as_echo "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits as_lineno_1=$LINENO as_lineno_1a=$LINENO as_lineno_2=$LINENO as_lineno_2a=$LINENO eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) sed -n ' p /[$]LINENO/= ' <$as_myself | sed ' s/[$]LINENO.*/&-/ t lineno b :lineno N :loop s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop s/-\n.*// ' >$as_me.lineno && chmod +x "$as_me.lineno" || { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # If we had to re-execute with $CONFIG_SHELL, we're ensured to have # already done that, so ensure we don't try to do so again and fall # in an infinite loop. This has already happened in practice. _as_can_reexec=no; export _as_can_reexec # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensitive to this). . "./$as_me.lineno" # Exit status is that of the last command. exit } ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -pR' fi else as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" SHELL=${CONFIG_SHELL-/bin/sh} test -n "$DJDIR" || exec 7<&0 &1 # Name of the host. # hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` # # Initializations. # ac_default_prefix=/usr/local ac_clean_files= ac_config_libobj_dir=. LIBOBJS= cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= # Identity of this package. PACKAGE_NAME='gnoMint' PACKAGE_TARNAME='gnomint' PACKAGE_VERSION='1.3.0' PACKAGE_STRING='gnoMint 1.3.0' PACKAGE_BUGREPORT='' PACKAGE_URL='' # Factoring default headers for most tests. ac_includes_default="\ #include #ifdef HAVE_SYS_TYPES_H # include #endif #ifdef HAVE_SYS_STAT_H # include #endif #ifdef STDC_HEADERS # include # include #else # ifdef HAVE_STDLIB_H # include # endif #endif #ifdef HAVE_STRING_H # if !defined STDC_HEADERS && defined HAVE_MEMORY_H # include # endif # include #endif #ifdef HAVE_STRINGS_H # include #endif #ifdef HAVE_INTTYPES_H # include #endif #ifdef HAVE_STDINT_H # include #endif #ifdef HAVE_UNISTD_H # include #endif" ac_header_list= ac_func_list= ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS GCONF_SCHEMA_FILE_DIR GCONF_SCHEMA_CONFIG_SOURCE GCONFTOOL GCONF_SCHEMAS_INSTALL_FALSE GCONF_SCHEMAS_INSTALL_TRUE GLIB_GENMARSHAL GNOMINTCLI_LIBS GNOMINTCLI_CFLAGS READLINE_LIBS GNOMINT_LIBS GNOMINT_CFLAGS LIBGCRYPT_LIBS LIBGCRYPT_CFLAGS LIBGCRYPT_CONFIG SQLITE_LIBS SQLITE_CFLAGS PKG_CONFIG_LIBDIR PKG_CONFIG_PATH PKG_CONFIG ALL_LINGUAS INTLTOOL_PERL MSGMERGE INTLTOOL_POLICY_RULE INTLTOOL_SERVICE_RULE INTLTOOL_THEME_RULE INTLTOOL_SCHEMAS_RULE INTLTOOL_CAVES_RULE INTLTOOL_XML_NOMERGE_RULE INTLTOOL_XML_RULE INTLTOOL_KBD_RULE INTLTOOL_XAM_RULE INTLTOOL_UI_RULE INTLTOOL_SOUNDLIST_RULE INTLTOOL_SHEET_RULE INTLTOOL_SERVER_RULE INTLTOOL_PONG_RULE INTLTOOL_OAF_RULE INTLTOOL_PROP_RULE INTLTOOL_KEYS_RULE INTLTOOL_DIRECTORY_RULE INTLTOOL_DESKTOP_RULE intltool__v_merge_options_0 intltool__v_merge_options_ INTLTOOL_V_MERGE_OPTIONS INTLTOOL__v_MERGE_0 INTLTOOL__v_MERGE_ INTLTOOL_V_MERGE INTLTOOL_EXTRACT INTLTOOL_MERGE INTLTOOL_UPDATE MKINSTALLDIRS POSUB POFILES PO_IN_DATADIR_FALSE PO_IN_DATADIR_TRUE INTLLIBS INSTOBJEXT GMOFILES DATADIRNAME CATOBJEXT CATALOGS XGETTEXT GMSGFMT MSGFMT_OPTS MSGFMT USE_NLS GETTEXT_PACKAGE LIBOBJS CPP OTOOL64 OTOOL LIPO NMEDIT DSYMUTIL MANIFEST_TOOL RANLIB ac_ct_AR AR DLLTOOL OBJDUMP NM ac_ct_DUMPBIN DUMPBIN LD FGREP EGREP GREP SED host_os host_vendor host_cpu host build_os build_vendor build_cpu build LIBTOOL LN_S am__fastdepCC_FALSE am__fastdepCC_TRUE CCDEPMODE am__nodep AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE am__quote am__include DEPDIR OBJEXT EXEEXT ac_ct_CC CPPFLAGS LDFLAGS CFLAGS CC MAINT MAINTAINER_MODE_FALSE MAINTAINER_MODE_TRUE ACLOCAL_AMFLAGS AM_BACKSLASH AM_DEFAULT_VERBOSITY AM_DEFAULT_V AM_V am__untar am__tar AMTAR am__leading_dot SET_MAKE AWK mkdir_p MKDIR_P INSTALL_STRIP_PROGRAM STRIP install_sh MAKEINFO AUTOHEADER AUTOMAKE AUTOCONF ACLOCAL VERSION PACKAGE CYGPATH_W am__isrc INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM target_alias host_alias build_alias LIBS ECHO_T ECHO_N ECHO_C DEFS mandir localedir libdir psdir pdfdir dvidir htmldir infodir docdir oldincludedir includedir localstatedir sharedstatedir sysconfdir datadir datarootdir libexecdir sbindir bindir program_transform_name prefix exec_prefix PACKAGE_URL PACKAGE_BUGREPORT PACKAGE_STRING PACKAGE_VERSION PACKAGE_TARNAME PACKAGE_NAME PATH_SEPARATOR SHELL' ac_subst_files='' ac_user_opts=' enable_option_checking enable_silent_rules enable_maintainer_mode enable_dependency_tracking enable_static enable_shared with_pic enable_fast_install with_gnu_ld with_sysroot enable_libtool_lock enable_nls with_libgcrypt_prefix with_gconf_source with_gconf_schema_file_dir enable_schemas_install enable_debug enable_debug_signal ' ac_precious_vars='build_alias host_alias target_alias CC CFLAGS LDFLAGS LIBS CPPFLAGS CPP PKG_CONFIG PKG_CONFIG_PATH PKG_CONFIG_LIBDIR SQLITE_CFLAGS SQLITE_LIBS GNOMINT_CFLAGS GNOMINT_LIBS GNOMINTCLI_CFLAGS GNOMINTCLI_LIBS' # Initialize some variables set by options. ac_init_help= ac_init_version=false ac_unrecognized_opts= ac_unrecognized_sep= # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null exec_prefix=NONE no_create= no_recursion= prefix=NONE program_prefix=NONE program_suffix=NONE program_transform_name=s,x,x, silent= site= srcdir= verbose= x_includes=NONE x_libraries=NONE # Installation directory options. # These are left unexpanded so users can "make install exec_prefix=/foo" # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. # (The list follows the same order as the GNU Coding Standards.) bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' datarootdir='${prefix}/share' datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' infodir='${datarootdir}/info' htmldir='${docdir}' dvidir='${docdir}' pdfdir='${docdir}' psdir='${docdir}' libdir='${exec_prefix}/lib' localedir='${datarootdir}/locale' mandir='${datarootdir}/man' ac_prev= ac_dashdash= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval $ac_prev=\$ac_option ac_prev= continue fi case $ac_option in *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; *=) ac_optarg= ;; *) ac_optarg=yes ;; esac # Accept the important Cygnus configure options, so we can diagnose typos. case $ac_dashdash$ac_option in --) ac_dashdash=yes ;; -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) cache_file=$ac_optarg ;; --config-cache | -C) cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=*) datadir=$ac_optarg ;; -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ | --dataroo | --dataro | --datar) ac_prev=datarootdir ;; -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) datarootdir=$ac_optarg ;; -disable-* | --disable-*) ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=no ;; -docdir | --docdir | --docdi | --doc | --do) ac_prev=docdir ;; -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) docdir=$ac_optarg ;; -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) ac_prev=dvidir ;; -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) dvidir=$ac_optarg ;; -enable-* | --enable-*) ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | --exec | --exe | --ex) ac_prev=exec_prefix ;; -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; -help | --help | --hel | --he | -h) ac_init_help=long ;; -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) ac_init_help=recursive ;; -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) ac_init_help=short ;; -host | --host | --hos | --ho) ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) ac_prev=htmldir ;; -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ | --ht=*) htmldir=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; -localedir | --localedir | --localedi | --localed | --locale) ac_prev=localedir ;; -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) localedir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst | --locals) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) no_recursion=yes ;; -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | --oldin | --oldi | --old | --ol | --o) ac_prev=oldincludedir ;; -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ | --program-transform-n | --program-transform- \ | --program-transform | --program-transfor \ | --program-transfo | --program-transf \ | --program-trans | --program-tran \ | --progr-tra | --program-tr | --program-t) ac_prev=program_transform_name ;; -program-transform-name=* | --program-transform-name=* \ | --program-transform-nam=* | --program-transform-na=* \ | --program-transform-n=* | --program-transform-=* \ | --program-transform=* | --program-transfor=* \ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) ac_prev=pdfdir ;; -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) pdfdir=$ac_optarg ;; -psdir | --psdir | --psdi | --psd | --ps) ac_prev=psdir ;; -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) psdir=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | --sharedst | --shareds | --shared | --share | --shar \ | --sha | --sh) ac_prev=sharedstatedir ;; -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; -version | --version | --versio | --versi | --vers | -V) ac_init_version=: ;; -with-* | --with-*) ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=\$ac_optarg ;; -without-* | --without-*) ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=no ;; --x) # Obsolete; use --with-x. with_x=yes ;; -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | --x-incl | --x-inc | --x-in | --x-i) ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; -*) as_fn_error $? "unrecognized option: \`$ac_option' Try \`$0 --help' for more information" ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. case $ac_envvar in #( '' | [0-9]* | *[!_$as_cr_alnum]* ) as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" ;; esac done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` as_fn_error $? "missing argument to $ac_option" fi if test -n "$ac_unrecognized_opts"; then case $enable_option_checking in no) ;; fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi # Check all directory arguments for consistency. for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ libdir localedir mandir do eval ac_val=\$$ac_var # Remove trailing slashes. case $ac_val in */ ) ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` eval $ac_var=\$ac_val;; esac # Be sure to have absolute directory names. case $ac_val in [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias # FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi fi ac_tool_prefix= test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null ac_pwd=`pwd` && test -n "$ac_pwd" && ac_ls_di=`ls -di .` && ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || as_fn_error $? "working directory cannot be determined" test "X$ac_ls_di" = "X$ac_pwd_ls_di" || as_fn_error $? "pwd does not report name of working directory" # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then the parent directory. ac_confdir=`$as_dirname -- "$as_myself" || $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_myself" : 'X\(//\)[^/]' \| \ X"$as_myself" : 'X\(//\)$' \| \ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_myself" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` srcdir=$ac_confdir if test ! -r "$srcdir/$ac_unique_file"; then srcdir=.. fi else ac_srcdir_defaulted=no fi if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then srcdir=. fi # Remove unnecessary trailing slashes from srcdir. # Double slashes in file names in object file debugging info # mess up M-x gdb in Emacs. case $srcdir in */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; esac for ac_var in $ac_precious_vars; do eval ac_env_${ac_var}_set=\${${ac_var}+set} eval ac_env_${ac_var}_value=\$${ac_var} eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} eval ac_cv_env_${ac_var}_value=\$${ac_var} done # # Report the --help message. # if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF \`configure' configures gnoMint 1.3.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print \`checking ...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify an installation prefix other than \`$ac_default_prefix' using \`--prefix', for instance \`--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/gnomint] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR] _ACEOF cat <<\_ACEOF Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names System types: --build=BUILD configure for building on BUILD [guessed] --host=HOST cross-compile to build programs to run on HOST [BUILD] _ACEOF fi if test -n "$ac_init_help"; then case $ac_init_help in short | recursive ) echo "Configuration of gnoMint 1.3.0:";; esac cat <<\_ACEOF Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --enable-silent-rules less verbose build output (undo: "make V=1") --disable-silent-rules verbose build output (undo: "make V=0") --disable-maintainer-mode disable make rules and dependencies not useful (and sometimes confusing) to the casual installer --enable-dependency-tracking do not reject slow dependency extractors --disable-dependency-tracking speeds up one-time build --enable-static[=PKGS] build static libraries [default=no] --enable-shared[=PKGS] build shared libraries [default=yes] --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) --disable-nls do not use Native Language Support --disable-schemas-install Disable the schemas installation --enable-debug debug default=no --enable-debug-signal debug signals sent default=no Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use both] --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-sysroot=DIR Search for dependent libraries within DIR (or the compiler's sysroot if not specified). --with-libgcrypt-prefix=PFX prefix where LIBGCRYPT is installed (optional) --with-gconf-source=sourceaddress Config database for installing schema files. --with-gconf-schema-file-dir=dir Directory for installing schema files. Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory LIBS libraries to pass to the linker, e.g. -l CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CPP C preprocessor PKG_CONFIG path to pkg-config utility PKG_CONFIG_PATH directories to add to pkg-config's search path PKG_CONFIG_LIBDIR path overriding pkg-config's built-in search path SQLITE_CFLAGS C compiler flags for SQLITE, overriding pkg-config SQLITE_LIBS linker flags for SQLITE, overriding pkg-config GNOMINT_CFLAGS C compiler flags for GNOMINT, overriding pkg-config GNOMINT_LIBS linker flags for GNOMINT, overriding pkg-config GNOMINTCLI_CFLAGS C compiler flags for GNOMINTCLI, overriding pkg-config GNOMINTCLI_LIBS linker flags for GNOMINTCLI, overriding pkg-config Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to <>. _ACEOF ac_status=$? fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue test -d "$ac_dir" || { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || continue ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix cd "$ac_dir" || { ac_status=$?; continue; } # Check for guested configure. if test -f "$ac_srcdir/configure.gnu"; then echo && $SHELL "$ac_srcdir/configure.gnu" --help=recursive elif test -f "$ac_srcdir/configure"; then echo && $SHELL "$ac_srcdir/configure" --help=recursive else $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi || ac_status=$? cd "$ac_pwd" || { ac_status=$?; break; } done fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF gnoMint configure 1.3.0 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit fi ## ------------------------ ## ## Autoconf initialization. ## ## ------------------------ ## # ac_fn_c_try_compile LINENO # -------------------------- # Try to compile conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_compile # ac_fn_c_try_link LINENO # ----------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_link () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext conftest$ac_exeext if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest$ac_exeext && { test "$cross_compiling" = yes || test -x conftest$ac_exeext }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would # interfere with the next link command; also delete a directory that is # left behind by Apple's compiler. We do this before executing the actions. rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_link # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists and can be compiled using the include files in # INCLUDES, setting the cache variable VAR accordingly. ac_fn_c_check_header_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_c_try_compile "$LINENO"; then : eval "$3=yes" else eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_compile # ac_fn_c_try_cpp LINENO # ---------------------- # Try to preprocess conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_cpp () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } > conftest.i && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_cpp # ac_fn_c_try_run LINENO # ---------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes # that executables *can* be run. ac_fn_c_try_run () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then : ac_retval=0 else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=$ac_status fi rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_run # ac_fn_c_check_func LINENO FUNC VAR # ---------------------------------- # Tests whether FUNC exists, setting the cache variable VAR accordingly ac_fn_c_check_func () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Define $2 to an innocuous variant, in case declares $2. For example, HP-UX 11i declares gettimeofday. */ #define $2 innocuous_$2 /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $2 (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $2 /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char $2 (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined __stub_$2 || defined __stub___$2 choke me #endif int main () { return $2 (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : eval "$3=yes" else eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_func # ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists, giving a warning if it cannot be compiled using # the include files in INCLUDES and setting the cache variable VAR # accordingly. ac_fn_c_check_header_mongrel () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if eval \${$3+:} false; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } else # Is the header compilable? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 $as_echo_n "checking $2 usability... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_header_compiler=yes else ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 $as_echo "$ac_header_compiler" >&6; } # Is the header present? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 $as_echo_n "checking $2 presence... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <$2> _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : ac_header_preproc=yes else ac_header_preproc=no fi rm -f conftest.err conftest.i conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 $as_echo "$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( yes:no: ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 $as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ;; no:yes:* ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 $as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 $as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ( $as_echo "## --------------------------------- ## ## Report this to ## ## --------------------------------- ##" ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else eval "$3=\$ac_header_compiler" fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_mongrel # ac_fn_c_check_type LINENO TYPE VAR INCLUDES # ------------------------------------------- # Tests whether TYPE exists after having included INCLUDES, setting cache # variable VAR accordingly. ac_fn_c_check_type () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else eval "$3=no" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 int main () { if (sizeof ($2)) return 0; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 int main () { if (sizeof (($2))) return 0; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else eval "$3=yes" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_type cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by gnoMint $as_me 1.3.0, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ _ACEOF exec 5>>config.log { cat <<_ASUNAME ## --------- ## ## Platform. ## ## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` _ASUNAME as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. $as_echo "PATH: $as_dir" done IFS=$as_save_IFS } >&5 cat >&5 <<_ACEOF ## ----------- ## ## Core tests. ## ## ----------- ## _ACEOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. # Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. # Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= ac_configure_args0= ac_configure_args1= ac_must_keep_next=false for ac_pass in 1 2 do for ac_arg do case $ac_arg in -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else case $ac_arg in *=* | --config-cache | -C | -disable-* | --disable-* \ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | -with-* | --with-* | -without-* | --without-* | --x) case "$ac_configure_args0 " in "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; esac ;; -* ) ac_must_keep_next=true ;; esac fi as_fn_append ac_configure_args " '$ac_arg'" ;; esac done done { ac_configure_args0=; unset ac_configure_args0;} { ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. # WARNING: Use '\'' to represent an apostrophe within the trap. # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { echo $as_echo "## ---------------- ## ## Cache variables. ## ## ---------------- ##" echo # The following way of writing the cache mishandles newlines in values, ( for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( *${as_nl}ac_space=\ *) sed -n \ "s/'\''/'\''\\\\'\'''\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" ;; #( *) sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) echo $as_echo "## ----------------- ## ## Output variables. ## ## ----------------- ##" echo for ac_var in $ac_subst_vars do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then $as_echo "## ------------------- ## ## File substitutions. ## ## ------------------- ##" echo for ac_var in $ac_subst_files do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo fi if test -s confdefs.h; then $as_echo "## ----------- ## ## confdefs.h. ## ## ----------- ##" echo cat confdefs.h echo fi test "$ac_signal" != 0 && $as_echo "$as_me: caught signal $ac_signal" $as_echo "$as_me: exit $exit_status" } >&5 rm -f core *.core core.conftest.* && rm -f -r conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h $as_echo "/* confdefs.h */" > confdefs.h # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_URL "$PACKAGE_URL" _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. ac_site_file1=NONE ac_site_file2=NONE if test -n "$CONFIG_SITE"; then # We do not want a PATH search for config.site. case $CONFIG_SITE in #(( -*) ac_site_file1=./$CONFIG_SITE;; */*) ac_site_file1=$CONFIG_SITE;; *) ac_site_file1=./$CONFIG_SITE;; esac elif test "x$prefix" != xNONE; then ac_site_file1=$prefix/share/config.site ac_site_file2=$prefix/etc/config.site else ac_site_file1=$ac_default_prefix/share/config.site ac_site_file2=$ac_default_prefix/etc/config.site fi for ac_site_file in "$ac_site_file1" "$ac_site_file2" do test "x$ac_site_file" = xNONE && continue if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" \ || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "failed to load site script $ac_site_file See \`config.log' for more details" "$LINENO" 5; } fi done if test -r "$cache_file"; then # Some versions of bash will fail to source /dev/null (special files # actually), so we avoid doing that. DJGPP emulates it as a regular file. if test /dev/null != "$cache_file" && test -f "$cache_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 $as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; *) . "./$cache_file";; esac fi else { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 $as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi as_fn_append ac_header_list " sys/time.h" as_fn_append ac_header_list " unistd.h" as_fn_append ac_func_list " alarm" # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false for ac_var in $ac_precious_vars; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val=\$ac_cv_env_${ac_var}_value eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then # differences in whitespace do not lead to failure. ac_old_val_w=`echo x $ac_old_val` ac_new_val_w=`echo x $ac_new_val` if test "$ac_old_val_w" != "$ac_new_val_w"; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 $as_echo "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. *) as_fn_append ac_configure_args " '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 fi ## -------------------- ## ## Main body of script. ## ## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu PACKAGE_COPYRIGHT="(c) 2006-2016 David Marín Carreño " PACKAGE_WEBSITE="http://gnomint.sourceforge.net" PACKAGE_AUTHORS=$(cat AUTHORS | tr '\n' ',' | sed 's/,/\\n/g') cat >>confdefs.h <<_ACEOF #define PACKAGE_COPYRIGHT "$PACKAGE_COPYRIGHT" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_WEBSITE "$PACKAGE_WEBSITE" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_AUTHORS "$PACKAGE_AUTHORS" _ACEOF am__api_version='1.15' ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do if test -f "$ac_dir/install-sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break elif test -f "$ac_dir/install.sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break elif test -f "$ac_dir/shtool"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 fi # These three variables are undocumented and unsupported, # and are intended to be withdrawn in a future Autoconf release. # They can cause serious problems if a builder's source tree is in a directory # whose full name contains unusual characters. ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install # AmigaOS /C/install, which installs bootblocks on floppy discs # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. # Reject install programs that cannot install multiple files. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 $as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then if ${ac_cv_path_install+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. # Account for people who put trailing slashes in PATH elements. case $as_dir/ in #(( ./ | .// | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else rm -rf conftest.one conftest.two conftest.dir echo one > conftest.one echo two > conftest.two mkdir conftest.dir if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && test -s conftest.one && test -s conftest.two && test -s conftest.dir/conftest.one && test -s conftest.dir/conftest.two then ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" break 3 fi fi fi done done ;; esac done IFS=$as_save_IFS rm -rf conftest.one conftest.two conftest.dir fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. Don't cache a # value for INSTALL within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. INSTALL=$ac_install_sh fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 $as_echo "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 $as_echo_n "checking whether build environment is sane... " >&6; } # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[\\\"\#\$\&\'\`$am_lf]*) as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; esac case $srcdir in *[\\\"\#\$\&\'\`$am_lf\ \ ]*) as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; esac # Do 'set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( am_has_slept=no for am_try in 1 2; do echo "timestamp, slept: $am_has_slept" > conftest.file set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$*" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi if test "$*" != "X $srcdir/configure conftest.file" \ && test "$*" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". as_fn_error $? "ls -t appears to fail. Make sure there is not a broken alias in your environment" "$LINENO" 5 fi if test "$2" = conftest.file || test $am_try -eq 2; then break fi # Just in case. sleep 1 am_has_slept=yes done test "$2" = conftest.file ) then # Ok. : else as_fn_error $? "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= if grep 'slept: no' conftest.file >/dev/null 2>&1; then ( sleep 1 ) & am_sleep_pid=$! fi rm -f conftest.file test "$program_prefix" != NONE && program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && program_transform_name="s&\$&$program_suffix&;$program_transform_name" # Double any \ or $. # By default was `s,x,x', remove it if useless. ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` # Expand $ac_aux_dir to an absolute path. am_aux_dir=`cd "$ac_aux_dir" && pwd` if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then am_missing_run="$MISSING " else am_missing_run= { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 $as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} fi if test x"${install_sh+set}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi # Installed binaries are usually stripped using 'strip' when the user # run "make install-strip". However 'strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the 'STRIP' environment variable to overrule this program. if test "$cross_compiling" != no; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; } if test -z "$MKDIR_P"; then if ${ac_cv_path_mkdir+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in mkdir gmkdir; do for ac_exec_ext in '' $ac_executable_extensions; do as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( 'mkdir (GNU coreutils) '* | \ 'mkdir (coreutils) '* | \ 'mkdir (fileutils) '4.1*) ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext break 3;; esac done done done IFS=$as_save_IFS fi test -d ./--version && rmdir ./--version if test "${ac_cv_path_mkdir+set}" = set; then MKDIR_P="$ac_cv_path_mkdir -p" else # As a last resort, use the slow shell script. Don't cache a # value for MKDIR_P within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. MKDIR_P="$ac_install_sh -d" fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 $as_echo "$MKDIR_P" >&6; } for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_AWK+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_AWK="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 $as_echo "$AWK" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$AWK" && break done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. case `${MAKE-make} -f conftest.make 2>/dev/null` in *@@@%%%=?*=@@@%%%*) eval ac_cv_prog_make_${ac_make}_set=yes;; *) eval ac_cv_prog_make_${ac_make}_set=no;; esac rm -f conftest.make fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } SET_MAKE= else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null # Check whether --enable-silent-rules was given. if test "${enable_silent_rules+set}" = set; then : enableval=$enable_silent_rules; fi case $enable_silent_rules in # ((( yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=1;; esac am_make=${MAKE-make} { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 $as_echo_n "checking whether $am_make supports nested variables... " >&6; } if ${am_cv_make_support_nested_variables+:} false; then : $as_echo_n "(cached) " >&6 else if $as_echo 'TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 am__doit: @$(TRUE) .PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then am_cv_make_support_nested_variables=yes else am_cv_make_support_nested_variables=no fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 $as_echo "$am_cv_make_support_nested_variables" >&6; } if test $am_cv_make_support_nested_variables = yes; then AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' else AM_V=$AM_DEFAULT_VERBOSITY AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY fi AM_BACKSLASH='\' if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." am__isrc=' -I$(srcdir)' # test to see if srcdir already configured if test -f $srcdir/config.status; then as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi # Define the identity of the package. PACKAGE='gnomint' VERSION='1.3.0' cat >>confdefs.h <<_ACEOF #define PACKAGE "$PACKAGE" _ACEOF cat >>confdefs.h <<_ACEOF #define VERSION "$VERSION" _ACEOF # Some tools Automake needs. ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: # # mkdir_p='$(MKDIR_P)' # We need awk for the "check" target (and possibly the TAP driver). The # system "awk" is bad on some platforms. # Always define AMTAR for backward compatibility. Yes, it's still used # in the wild :-( We should find a proper way to deprecate it ... AMTAR='$${TAR-tar}' # We'll loop over all known methods to create a tar archive until one works. _am_tools='gnutar pax cpio none' am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' # POSIX will say in a future version that running "rm -f" with no argument # is OK; and we want to be able to make that assumption in our Makefile # recipes. So use an aggressive probe to check that the usage we want is # actually supported "in the wild" to an acceptable degree. # See automake bug#10828. # To make any issue more visible, cause the running configure to be aborted # by default if the 'rm' program in use doesn't match our expectations; the # user can still override this though. if rm -f && rm -fr && rm -rf; then : OK; else cat >&2 <<'END' Oops! Your 'rm' program seems unable to run without file operands specified on the command line, even when the '-f' option is present. This is contrary to the behaviour of most rm programs out there, and not conforming with the upcoming POSIX standard: Please tell bug-automake@gnu.org about your system, including the value of your $PATH and any error possibly output before this message. This can help us improve future automake versions. END if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then echo 'Configuration will proceed anyway, since you have set the' >&2 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 echo >&2 else cat >&2 <<'END' Aborting the configuration process, to ensure you take notice of the issue. You can download and install GNU coreutils to get an 'rm' implementation that behaves properly: . If you want to complete the configuration process using your problematic 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM to "yes", and re-run configure. END as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 fi fi ACLOCAL_AMFLAGS="-I $ac_macro_dir \${ACLOCAL_FLAGS}" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 $as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } # Check whether --enable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then : enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval else USE_MAINTAINER_MODE=yes fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 $as_echo "$USE_MAINTAINER_MODE" >&6; } if test $USE_MAINTAINER_MODE = yes; then MAINTAINER_MODE_TRUE= MAINTAINER_MODE_FALSE='#' else MAINTAINER_MODE_TRUE='#' MAINTAINER_MODE_FALSE= fi MAINT=$MAINTAINER_MODE_TRUE # Check whether --enable-silent-rules was given. if test "${enable_silent_rules+set}" = set; then : enableval=$enable_silent_rules; fi case $enable_silent_rules in # ((( yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=0;; esac am_make=${MAKE-make} { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 $as_echo_n "checking whether $am_make supports nested variables... " >&6; } if ${am_cv_make_support_nested_variables+:} false; then : $as_echo_n "(cached) " >&6 else if $as_echo 'TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 am__doit: @$(TRUE) .PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then am_cv_make_support_nested_variables=yes else am_cv_make_support_nested_variables=no fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 $as_echo "$am_cv_make_support_nested_variables" >&6; } if test $am_cv_make_support_nested_variables = yes; then AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' else AM_V=$AM_DEFAULT_VERBOSITY AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY fi AM_BACKSLASH='\' # Check for programs DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 $as_echo_n "checking for style of include used by $am_make... " >&6; } am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # Ignore all kinds of additional output from 'make'. case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=include am__quote= _am_result=GNU ;; esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf case `$am_make -s -f confmf 2> /dev/null` in #( *the\ am__doit\ target*) am__include=.include am__quote="\"" _am_result=BSD ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 $as_echo "$_am_result" >&6; } rm -f confinc confmf # Check whether --enable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then : enableval=$enable_dependency_tracking; fi if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' am__nodep='_no' fi if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= AMDEP_FALSE='#' else AMDEP_TRUE='#' AMDEP_FALSE= fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 $as_echo_n "checking whether the C compiler works... " >&6; } ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` # The possible output files: ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" ac_rmfiles= for ac_file in $ac_files do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; * ) ac_rmfiles="$ac_rmfiles $ac_file";; esac done rm -f $ac_rmfiles if { { ac_try="$ac_link_default" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, # so that the user can short-circuit this test for compilers unknown to # Autoconf. for ac_file in $ac_files '' do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi # We set ac_cv_exeext here because the later test for it is not # safe: cross compilers may not add the suffix if given an `-o' # argument, so we may need to know it at that point already. # Even if this section looks crufty: it has the advantage of # actually working. break;; * ) break;; esac done test "$ac_cv_exeext" = no && ac_cv_exeext= else ac_file='' fi if test -z "$ac_file"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error 77 "C compiler cannot create executables See \`config.log' for more details" "$LINENO" 5; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 $as_echo_n "checking for C compiler default output file name... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 $as_echo "$ac_file" >&6; } ac_exeext=$ac_cv_exeext rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 $as_echo_n "checking for suffix of executables... " >&6; } if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with # `rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` break;; * ) break;; esac done else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of executables: cannot compile and link See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest conftest$ac_cv_exeext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 $as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { FILE *f = fopen ("conftest.out", "w"); return ferror (f) || fclose (f) != 0; ; return 0; } _ACEOF ac_clean_files="$ac_clean_files conftest.out" # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 $as_echo_n "checking whether we are cross compiling... " >&6; } if test "$cross_compiling" != yes; then { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if { ac_try='./conftest$ac_cv_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details" "$LINENO" 5; } fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 $as_echo "$cross_compiling" >&6; } rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } if ${ac_cv_objext+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of object files: cannot compile See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 $as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if ${ac_cv_c_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if ${ac_cv_prog_cc_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include struct stat; /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; } if ${am_cv_prog_cc_c_o+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 $as_echo "$am_cv_prog_cc_c_o" >&6; } if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strerror in -lcposix" >&5 $as_echo_n "checking for strerror in -lcposix... " >&6; } if ${ac_cv_lib_cposix_strerror+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lcposix $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char strerror (); int main () { return strerror (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_cposix_strerror=yes else ac_cv_lib_cposix_strerror=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_cposix_strerror" >&5 $as_echo "$ac_cv_lib_cposix_strerror" >&6; } if test "x$ac_cv_lib_cposix_strerror" = xyes; then : LIBS="$LIBS -lcposix" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if ${ac_cv_c_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if ${ac_cv_prog_cc_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include struct stat; /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; } if ${am_cv_prog_cc_c_o+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 $as_echo "$am_cv_prog_cc_c_o" >&6; } if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 $as_echo_n "checking whether ln -s works... " >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 $as_echo "no, using $LN_S" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. case `${MAKE-make} -f conftest.make 2>/dev/null` in *@@@%%%=?*=@@@%%%*) eval ac_cv_prog_make_${ac_make}_set=yes;; *) eval ac_cv_prog_make_${ac_make}_set=no;; esac rm -f conftest.make fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } SET_MAKE= else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi # Check whether --enable-static was given. if test "${enable_static+set}" = set; then : enableval=$enable_static; p=${PACKAGE-default} case $enableval in yes) enable_static=yes ;; no) enable_static=no ;; *) enable_static=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_static=yes fi done IFS="$lt_save_ifs" ;; esac else enable_static=no fi case `pwd` in *\ * | *\ *) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 $as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; esac macro_version='2.4.2' macro_revision='1.3337' ltmain="$ac_aux_dir/ltmain.sh" # Make sure we can run config.sub. $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 $as_echo_n "checking build system type... " >&6; } if ${ac_cv_build+:} false; then : $as_echo_n "(cached) " >&6 else ac_build_alias=$build_alias test "x$ac_build_alias" = x && ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` test "x$ac_build_alias" = x && as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 $as_echo "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; esac build=$ac_cv_build ac_save_IFS=$IFS; IFS='-' set x $ac_cv_build shift build_cpu=$1 build_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: build_os=$* IFS=$ac_save_IFS case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 $as_echo_n "checking host system type... " >&6; } if ${ac_cv_host+:} false; then : $as_echo_n "(cached) " >&6 else if test "x$host_alias" = x; then ac_cv_host=$ac_cv_build else ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 $as_echo "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; esac host=$ac_cv_host ac_save_IFS=$IFS; IFS='-' set x $ac_cv_host shift host_cpu=$1 host_vendor=$2 shift; shift # Remember, the first character of IFS is used to create $*, # except with old shells: host_os=$* IFS=$ac_save_IFS case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac # Backslashify metacharacters that are still active within # double-quoted strings. sed_quote_subst='s/\(["`$\\]\)/\\\1/g' # Same as above, but do not quote variable references. double_quote_subst='s/\(["`\\]\)/\\\1/g' # Sed substitution to delay expansion of an escaped shell variable in a # double_quote_subst'ed string. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' # Sed substitution to delay expansion of an escaped single quote. delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' # Sed substitution to avoid accidental globbing in evaled expressions no_glob_subst='s/\*/\\\*/g' ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 $as_echo_n "checking how to print strings... " >&6; } # Test print first, because it will be a builtin if present. if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='print -r --' elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='printf %s\n' else # Use this function as a fallback that always works. func_fallback_echo () { eval 'cat <<_LTECHO_EOF $1 _LTECHO_EOF' } ECHO='func_fallback_echo' fi # func_echo_all arg... # Invoke $ECHO with all args, space-separated. func_echo_all () { $ECHO "" } case "$ECHO" in printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 $as_echo "printf" >&6; } ;; print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 $as_echo "print -r" >&6; } ;; *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5 $as_echo "cat" >&6; } ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 $as_echo_n "checking for a sed that does not truncate output... " >&6; } if ${ac_cv_path_SED+:} false; then : $as_echo_n "(cached) " >&6 else ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ for ac_i in 1 2 3 4 5 6 7; do ac_script="$ac_script$as_nl$ac_script" done echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed { ac_script=; unset ac_script;} if test -z "$SED"; then ac_path_SED_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in sed gsed; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_SED" || continue # Check for GNU ac_path_SED and select it if it is found. # Check for GNU $ac_path_SED case `"$ac_path_SED" --version 2>&1` in *GNU*) ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo '' >> "conftest.nl" "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_SED_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_SED="$ac_path_SED" ac_path_SED_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_SED_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_SED"; then as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 fi else ac_cv_path_SED=$SED fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 $as_echo "$ac_cv_path_SED" >&6; } SED="$ac_cv_path_SED" rm -f conftest.sed test -z "$SED" && SED=sed Xsed="$SED -e 1s/^X//" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } if ${ac_cv_path_GREP+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$GREP"; then ac_path_GREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_GREP" || continue # Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP case `"$ac_path_GREP" --version 2>&1` in *GNU*) ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'GREP' >> "conftest.nl" "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_GREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_GREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_GREP"; then as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_GREP=$GREP fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 $as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 $as_echo_n "checking for egrep... " >&6; } if ${ac_cv_path_EGREP+:} false; then : $as_echo_n "(cached) " >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 then ac_cv_path_EGREP="$GREP -E" else if test -z "$EGREP"; then ac_path_EGREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in egrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_EGREP" || continue # Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP case `"$ac_path_EGREP" --version 2>&1` in *GNU*) ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'EGREP' >> "conftest.nl" "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_EGREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP"; then as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP=$EGREP fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 $as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 $as_echo_n "checking for fgrep... " >&6; } if ${ac_cv_path_FGREP+:} false; then : $as_echo_n "(cached) " >&6 else if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1 then ac_cv_path_FGREP="$GREP -F" else if test -z "$FGREP"; then ac_path_FGREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in fgrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_FGREP" || continue # Check for GNU ac_path_FGREP and select it if it is found. # Check for GNU $ac_path_FGREP case `"$ac_path_FGREP" --version 2>&1` in *GNU*) ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'FGREP' >> "conftest.nl" "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_FGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_FGREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_FGREP"; then as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_FGREP=$FGREP fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 $as_echo "$ac_cv_path_FGREP" >&6; } FGREP="$ac_cv_path_FGREP" test -z "$GREP" && GREP=grep # Check whether --with-gnu-ld was given. if test "${with_gnu_ld+set}" = set; then : withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes else with_gnu_ld=no fi ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 $as_echo_n "checking for ld used by $CC... " >&6; } case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; esac case $ac_prog in # Accept absolute paths. [\\/]* | ?:[\\/]*) re_direlt='/[^/][^/]*/\.\./' # Canonicalize the pathname of ld ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done test -z "$LD" && LD="$ac_prog" ;; "") # If it fails, then pretend we aren't using GCC. ac_prog=ld ;; *) # If it is relative, then search for the first ld in PATH. with_gnu_ld=unknown ;; esac elif test "$with_gnu_ld" = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 $as_echo_n "checking for GNU ld... " >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 $as_echo_n "checking for non-GNU ld... " >&6; } fi if ${lt_cv_path_LD+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$LD"; then lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then lt_cv_path_LD="$ac_dir/$ac_prog" # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 &5 $as_echo "$LD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } if ${lt_cv_prog_gnu_ld+:} false; then : $as_echo_n "(cached) " >&6 else # I'd rather use --version here, but apparently some GNU lds only accept -v. case `$LD -v 2>&1 &5 $as_echo "$lt_cv_prog_gnu_ld" >&6; } with_gnu_ld=$lt_cv_prog_gnu_ld { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 $as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; } if ${lt_cv_path_NM+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$NM"; then # Let the user override the test. lt_cv_path_NM="$NM" else lt_nm_to_check="${ac_tool_prefix}nm" if test -n "$ac_tool_prefix" && test "$build" = "$host"; then lt_nm_to_check="$lt_nm_to_check nm" fi for lt_tmp_nm in $lt_nm_to_check; do lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. tmp_nm="$ac_dir/$lt_tmp_nm" if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then # Check to see if the nm accepts a BSD-compat flag. # Adding the `sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored # Tru64's nm complains that /dev/null is an invalid object file case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in */dev/null* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but continue # so that we can try to find one that supports BSD flags ;; esac ;; esac fi done IFS="$lt_save_ifs" done : ${lt_cv_path_NM=no} fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 $as_echo "$lt_cv_path_NM" >&6; } if test "$lt_cv_path_NM" != "no"; then NM="$lt_cv_path_NM" else # Didn't find any BSD compatible name lister, look for dumpbin. if test -n "$DUMPBIN"; then : # Let the user override the test. else if test -n "$ac_tool_prefix"; then for ac_prog in dumpbin "link -dump" do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_DUMPBIN+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$DUMPBIN"; then ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DUMPBIN=$ac_cv_prog_DUMPBIN if test -n "$DUMPBIN"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 $as_echo "$DUMPBIN" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$DUMPBIN" && break done fi if test -z "$DUMPBIN"; then ac_ct_DUMPBIN=$DUMPBIN for ac_prog in dumpbin "link -dump" do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DUMPBIN"; then ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DUMPBIN="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN if test -n "$ac_ct_DUMPBIN"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 $as_echo "$ac_ct_DUMPBIN" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_DUMPBIN" && break done if test "x$ac_ct_DUMPBIN" = x; then DUMPBIN=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DUMPBIN=$ac_ct_DUMPBIN fi fi case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols" ;; *) DUMPBIN=: ;; esac fi if test "$DUMPBIN" != ":"; then NM="$DUMPBIN" fi fi test -z "$NM" && NM=nm { $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 $as_echo_n "checking the name lister ($NM) interface... " >&6; } if ${lt_cv_nm_interface+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 (eval echo "\"\$as_me:$LINENO: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" fi rm -f conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 $as_echo "$lt_cv_nm_interface" >&6; } # find the maximum length of command line arguments { $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 $as_echo_n "checking the maximum length of command line arguments... " >&6; } if ${lt_cv_sys_max_cmd_len+:} false; then : $as_echo_n "(cached) " >&6 else i=0 teststring="ABCD" case $build_os in msdosdjgpp*) # On DJGPP, this test can blow up pretty badly due to problems in libc # (any single argument exceeding 2000 bytes causes a buffer overrun # during glob expansion). Even if it were fixed, the result of this # check would be larger than it should be. lt_cv_sys_max_cmd_len=12288; # 12K is about right ;; gnu*) # Under GNU Hurd, this test is not required because there is # no limit to the length of command line arguments. # Libtool will interpret -1 as no limit whatsoever lt_cv_sys_max_cmd_len=-1; ;; cygwin* | mingw* | cegcc*) # On Win9x/ME, this test blows up -- it succeeds, but takes # about 5 minutes as the teststring grows exponentially. # Worse, since 9x/ME are not pre-emptively multitasking, # you end up with a "frozen" computer, even though with patience # the test eventually succeeds (with a max line length of 256k). # Instead, let's just punt: use the minimum linelength reported by # all of the supported platforms: 8192 (on NT/2K/XP). lt_cv_sys_max_cmd_len=8192; ;; mint*) # On MiNT this can take a long time and run out of memory. lt_cv_sys_max_cmd_len=8192; ;; amigaos*) # On AmigaOS with pdksh, this test takes hours, literally. # So we just punt and use a minimum line length of 8192. lt_cv_sys_max_cmd_len=8192; ;; netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` elif test -x /usr/sbin/sysctl; then lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` else lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs fi # And add a safety zone lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` ;; interix*) # We know the value 262144 and hardcode it with a safety zone (like BSD) lt_cv_sys_max_cmd_len=196608 ;; os2*) # The test takes a long time on OS/2. lt_cv_sys_max_cmd_len=8192 ;; osf*) # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not # nice to cause kernel panics so lets avoid the loop below. # First set a reasonable default. lt_cv_sys_max_cmd_len=16384 # if test -x /sbin/sysconfig; then case `/sbin/sysconfig -q proc exec_disable_arg_limit` in *1*) lt_cv_sys_max_cmd_len=-1 ;; esac fi ;; sco3.2v5*) lt_cv_sys_max_cmd_len=102400 ;; sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'` else lt_cv_sys_max_cmd_len=32768 fi ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` if test -n "$lt_cv_sys_max_cmd_len" && \ test undefined != "$lt_cv_sys_max_cmd_len"; then lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` else # Make teststring a little bigger before we do anything with it. # a 1K string should be a reasonable start. for i in 1 2 3 4 5 6 7 8 ; do teststring=$teststring$teststring done SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \ = "X$teststring$teststring"; } >/dev/null 2>&1 && test $i != 17 # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring done # Only check the string length outside the loop. lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` teststring= # Add a significant safety factor because C++ compilers can tack on # massive amounts of additional arguments before passing them to the # linker. It appears as though 1/2 is a usable value. lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` fi ;; esac fi if test -n $lt_cv_sys_max_cmd_len ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 $as_echo "$lt_cv_sys_max_cmd_len" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 $as_echo "none" >&6; } fi max_cmd_len=$lt_cv_sys_max_cmd_len : ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5 $as_echo_n "checking whether the shell understands some XSI constructs... " >&6; } # Try some XSI features xsi_shell=no ( _lt_dummy="a/b/c" test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \ = c,a/b,b/c, \ && eval 'test $(( 1 + 1 )) -eq 2 \ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ && xsi_shell=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5 $as_echo "$xsi_shell" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5 $as_echo_n "checking whether the shell understands \"+=\"... " >&6; } lt_shell_append=no ( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \ >/dev/null 2>&1 \ && lt_shell_append=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5 $as_echo "$lt_shell_append" >&6; } if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else lt_unset=false fi # test EBCDIC or ASCII case `echo X|tr X '\101'` in A) # ASCII based system # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr lt_SP2NL='tr \040 \012' lt_NL2SP='tr \015\012 \040\040' ;; *) # EBCDIC based system lt_SP2NL='tr \100 \n' lt_NL2SP='tr \r\n \100\100' ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 $as_echo_n "checking how to convert $build file names to $host format... " >&6; } if ${lt_cv_to_host_file_cmd+:} false; then : $as_echo_n "(cached) " >&6 else case $host in *-*-mingw* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 ;; esac ;; *-*-cygwin* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_noop ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin ;; esac ;; * ) # unhandled hosts (and "normal" native builds) lt_cv_to_host_file_cmd=func_convert_file_noop ;; esac fi to_host_file_cmd=$lt_cv_to_host_file_cmd { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 $as_echo "$lt_cv_to_host_file_cmd" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 $as_echo_n "checking how to convert $build file names to toolchain format... " >&6; } if ${lt_cv_to_tool_file_cmd+:} false; then : $as_echo_n "(cached) " >&6 else #assume ordinary cross tools, or native build. lt_cv_to_tool_file_cmd=func_convert_file_noop case $host in *-*-mingw* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 ;; esac ;; esac fi to_tool_file_cmd=$lt_cv_to_tool_file_cmd { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 $as_echo "$lt_cv_to_tool_file_cmd" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 $as_echo_n "checking for $LD option to reload object files... " >&6; } if ${lt_cv_ld_reload_flag+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ld_reload_flag='-r' fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 $as_echo "$lt_cv_ld_reload_flag" >&6; } reload_flag=$lt_cv_ld_reload_flag case $reload_flag in "" | " "*) ;; *) reload_flag=" $reload_flag" ;; esac reload_cmds='$LD$reload_flag -o $output$reload_objs' case $host_os in cygwin* | mingw* | pw32* | cegcc*) if test "$GCC" != yes; then reload_cmds=false fi ;; darwin*) if test "$GCC" = yes; then reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' else reload_cmds='$LD$reload_flag -o $output$reload_objs' fi ;; esac if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. set dummy ${ac_tool_prefix}objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_OBJDUMP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$OBJDUMP"; then ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OBJDUMP=$ac_cv_prog_OBJDUMP if test -n "$OBJDUMP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 $as_echo "$OBJDUMP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_OBJDUMP"; then ac_ct_OBJDUMP=$OBJDUMP # Extract the first word of "objdump", so it can be a program name with args. set dummy objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OBJDUMP"; then ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OBJDUMP="objdump" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP if test -n "$ac_ct_OBJDUMP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 $as_echo "$ac_ct_OBJDUMP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OBJDUMP" = x; then OBJDUMP="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OBJDUMP=$ac_ct_OBJDUMP fi else OBJDUMP="$ac_cv_prog_OBJDUMP" fi test -z "$OBJDUMP" && OBJDUMP=objdump { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 $as_echo_n "checking how to recognize dependent libraries... " >&6; } if ${lt_cv_deplibs_check_method+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_file_magic_cmd='$MAGIC_CMD' lt_cv_file_magic_test_file= lt_cv_deplibs_check_method='unknown' # Need to set the preceding variable on all platforms that support # interlibrary dependencies. # 'none' -- dependencies not supported. # `unknown' -- same as none, but documents that we really don't know. # 'pass_all' -- all dependencies passed with no checks. # 'test_compile' -- check by making test program. # 'file_magic [[regex]]' -- check by looking for files in library path # which responds to the $file_magic_cmd with a given extended regex. # If you have `file' or equivalent on your system and you're not sure # whether `pass_all' will *always* work, you probably want this one. case $host_os in aix[4-9]*) lt_cv_deplibs_check_method=pass_all ;; beos*) lt_cv_deplibs_check_method=pass_all ;; bsdi[45]*) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' lt_cv_file_magic_cmd='/usr/bin/file -L' lt_cv_file_magic_test_file=/shlib/libc.so ;; cygwin*) # func_win32_libid is a shell function defined in ltmain.sh lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' ;; mingw* | pw32*) # Base MSYS/MinGW do not provide the 'file' command needed by # func_win32_libid shell function, so use a weaker test based on 'objdump', # unless we find 'file', for example because we are cross-compiling. # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin. if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else # Keep this pattern in sync with the one in func_win32_libid. lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; cegcc*) # use the weaker test based on 'objdump'. See mingw*. lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' lt_cv_file_magic_cmd='$OBJDUMP -f' ;; darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; haiku*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so ;; hppa*64*) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]' lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl ;; *) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library' lt_cv_file_magic_test_file=/usr/lib/libc.sl ;; esac ;; interix[3-9]*) # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$' ;; irix5* | irix6* | nonstopux*) case $LD in *-32|*"-32 ") libmagic=32-bit;; *-n32|*"-n32 ") libmagic=N32;; *-64|*"-64 ") libmagic=64-bit;; *) libmagic=never-match;; esac lt_cv_deplibs_check_method=pass_all ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$' fi ;; newos6*) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; *nto* | *qnx*) lt_cv_deplibs_check_method=pass_all ;; openbsd*) if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' fi ;; osf3* | osf4* | osf5*) lt_cv_deplibs_check_method=pass_all ;; rdos*) lt_cv_deplibs_check_method=pass_all ;; solaris*) lt_cv_deplibs_check_method=pass_all ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) lt_cv_deplibs_check_method=pass_all ;; sysv4 | sysv4.3*) case $host_vendor in motorola) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` ;; ncr) lt_cv_deplibs_check_method=pass_all ;; sequent) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; sni) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" lt_cv_file_magic_test_file=/lib/libc.so ;; siemens) lt_cv_deplibs_check_method=pass_all ;; pc) lt_cv_deplibs_check_method=pass_all ;; esac ;; tpf*) lt_cv_deplibs_check_method=pass_all ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 $as_echo "$lt_cv_deplibs_check_method" >&6; } file_magic_glob= want_nocaseglob=no if test "$build" = "$host"; then case $host_os in mingw* | pw32*) if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then want_nocaseglob=yes else file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"` fi ;; esac fi file_magic_cmd=$lt_cv_file_magic_cmd deplibs_check_method=$lt_cv_deplibs_check_method test -z "$deplibs_check_method" && deplibs_check_method=unknown if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. set dummy ${ac_tool_prefix}dlltool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_DLLTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$DLLTOOL"; then ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DLLTOOL=$ac_cv_prog_DLLTOOL if test -n "$DLLTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 $as_echo "$DLLTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_DLLTOOL"; then ac_ct_DLLTOOL=$DLLTOOL # Extract the first word of "dlltool", so it can be a program name with args. set dummy dlltool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DLLTOOL"; then ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DLLTOOL="dlltool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL if test -n "$ac_ct_DLLTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 $as_echo "$ac_ct_DLLTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_DLLTOOL" = x; then DLLTOOL="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DLLTOOL=$ac_ct_DLLTOOL fi else DLLTOOL="$ac_cv_prog_DLLTOOL" fi test -z "$DLLTOOL" && DLLTOOL=dlltool { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 $as_echo_n "checking how to associate runtime and link libraries... " >&6; } if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_sharedlib_from_linklib_cmd='unknown' case $host_os in cygwin* | mingw* | pw32* | cegcc*) # two different shell functions defined in ltmain.sh # decide which to use based on capabilities of $DLLTOOL case `$DLLTOOL --help 2>&1` in *--identify-strict*) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib ;; *) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback ;; esac ;; *) # fallback: assume linklib IS sharedlib lt_cv_sharedlib_from_linklib_cmd="$ECHO" ;; esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 $as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; } sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO if test -n "$ac_tool_prefix"; then for ac_prog in ar do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_AR+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$AR"; then ac_cv_prog_AR="$AR" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_AR="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AR=$ac_cv_prog_AR if test -n "$AR"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 $as_echo "$AR" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$AR" && break done fi if test -z "$AR"; then ac_ct_AR=$AR for ac_prog in ar do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_AR+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_AR"; then ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_AR="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_AR=$ac_cv_prog_ac_ct_AR if test -n "$ac_ct_AR"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 $as_echo "$ac_ct_AR" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_AR" && break done if test "x$ac_ct_AR" = x; then AR="false" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac AR=$ac_ct_AR fi fi : ${AR=ar} : ${AR_FLAGS=cru} { $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 $as_echo_n "checking for archiver @FILE support... " >&6; } if ${lt_cv_ar_at_file+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ar_at_file=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : echo conftest.$ac_objext > conftest.lst lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5' { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 (eval $lt_ar_try) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if test "$ac_status" -eq 0; then # Ensure the archiver fails upon bogus file names. rm -f conftest.$ac_objext libconftest.a { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 (eval $lt_ar_try) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if test "$ac_status" -ne 0; then lt_cv_ar_at_file=@ fi fi rm -f conftest.* libconftest.a fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 $as_echo "$lt_cv_ar_at_file" >&6; } if test "x$lt_cv_ar_at_file" = xno; then archiver_list_spec= else archiver_list_spec=$lt_cv_ar_at_file fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi test -z "$STRIP" && STRIP=: if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_RANLIB+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 $as_echo "$RANLIB" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_RANLIB"; then ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_RANLIB="ranlib" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 $as_echo "$ac_ct_RANLIB" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_RANLIB" = x; then RANLIB=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac RANLIB=$ac_ct_RANLIB fi else RANLIB="$ac_cv_prog_RANLIB" fi test -z "$RANLIB" && RANLIB=: # Determine commands to create old-style static archives. old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' old_postinstall_cmds='chmod 644 $oldlib' old_postuninstall_cmds= if test -n "$RANLIB"; then case $host_os in openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" ;; *) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" ;; esac old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" fi case $host_os in darwin*) lock_old_archive_extraction=yes ;; *) lock_old_archive_extraction=no ;; esac # If no C compiler was specified, use CC. LTCC=${LTCC-"$CC"} # If no C compiler flags were specified, use CFLAGS. LTCFLAGS=${LTCFLAGS-"$CFLAGS"} # Allow CC to be a program name with arguments. compiler=$CC # Check for command to grab the raw symbol name followed by C symbol from nm. { $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 $as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } if ${lt_cv_sys_global_symbol_pipe+:} false; then : $as_echo_n "(cached) " >&6 else # These are sane defaults that work on at least a few old systems. # [They come from Ultrix. What could be older than Ultrix?!! ;)] # Character class describing NM global symbol codes. symcode='[BCDEGRST]' # Regexp to match symbols that can be accessed directly from C. sympat='\([_A-Za-z][_A-Za-z0-9]*\)' # Define system-specific variables. case $host_os in aix*) symcode='[BCDT]' ;; cygwin* | mingw* | pw32* | cegcc*) symcode='[ABCDGISTW]' ;; hpux*) if test "$host_cpu" = ia64; then symcode='[ABCDEGRST]' fi ;; irix* | nonstopux*) symcode='[BCDEGRST]' ;; osf*) symcode='[BCDEGQRST]' ;; solaris*) symcode='[BDRT]' ;; sco3.2v5*) symcode='[DT]' ;; sysv4.2uw2*) symcode='[DT]' ;; sysv5* | sco5v6* | unixware* | OpenUNIX*) symcode='[ABDT]' ;; sysv4) symcode='[DFNSTU]' ;; esac # If we're using GNU nm, then use its standard symbol codes. case `$NM -V 2>&1` in *GNU* | *'with BFD'*) symcode='[ABCDGIRSTW]' ;; esac # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'" lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'" # Handle CRLF in mingw tool chain opt_cr= case $build_os in mingw*) opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp ;; esac # Try without a prefix underscore, then with it. for ac_symprfx in "" "_"; do # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. symxfrm="\\1 $ac_symprfx\\2 \\2" # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function # and D for any global variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK '"\ " {last_section=section; section=\$ 3};"\ " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ " {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ " s[1]~/^[@?]/{print s[1], s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" # Check to see that the pipe works correctly. pipe_works=no rm -f conftest* cat > conftest.$ac_ext <<_LT_EOF #ifdef __cplusplus extern "C" { #endif char nm_test_var; void nm_test_func(void); void nm_test_func(void){} #ifdef __cplusplus } #endif int main(){nm_test_var='a';nm_test_func();return(0);} _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then # Now try to grab the symbols. nlist=conftest.nm if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5 (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" else rm -f "$nlist"T fi # Make sure that we snagged all the symbols we need. if $GREP ' nm_test_var$' "$nlist" >/dev/null; then if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ #if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) /* DATA imports from DLLs on WIN32 con't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT_DLSYM_CONST #elif defined(__osf__) /* This system does not cope well with relocations in const data. */ # define LT_DLSYM_CONST #else # define LT_DLSYM_CONST const #endif #ifdef __cplusplus extern "C" { #endif _LT_EOF # Now generate the symbol file. eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' cat <<_LT_EOF >> conftest.$ac_ext /* The mapping between symbol names and symbols. */ LT_DLSYM_CONST struct { const char *name; void *address; } lt__PROGRAM__LTX_preloaded_symbols[] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt__PROGRAM__LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif _LT_EOF # Now try linking the two files. mv conftest.$ac_objext conftstm.$ac_objext lt_globsym_save_LIBS=$LIBS lt_globsym_save_CFLAGS=$CFLAGS LIBS="conftstm.$ac_objext" CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s conftest${ac_exeext}; then pipe_works=yes fi LIBS=$lt_globsym_save_LIBS CFLAGS=$lt_globsym_save_CFLAGS else echo "cannot find nm_test_func in $nlist" >&5 fi else echo "cannot find nm_test_var in $nlist" >&5 fi else echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 fi else echo "$progname: failed program was:" >&5 cat conftest.$ac_ext >&5 fi rm -rf conftest* conftst* # Do not use the global_symbol_pipe unless it works. if test "$pipe_works" = yes; then break else lt_cv_sys_global_symbol_pipe= fi done fi if test -z "$lt_cv_sys_global_symbol_pipe"; then lt_cv_sys_global_symbol_to_cdecl= fi if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 $as_echo "failed" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 $as_echo "ok" >&6; } fi # Response file support. if test "$lt_cv_nm_interface" = "MS dumpbin"; then nm_file_list_spec='@' elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then nm_file_list_spec='@' fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 $as_echo_n "checking for sysroot... " >&6; } # Check whether --with-sysroot was given. if test "${with_sysroot+set}" = set; then : withval=$with_sysroot; else with_sysroot=no fi lt_sysroot= case ${with_sysroot} in #( yes) if test "$GCC" = yes; then lt_sysroot=`$CC --print-sysroot 2>/dev/null` fi ;; #( /*) lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` ;; #( no|'') ;; #( *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5 $as_echo "${with_sysroot}" >&6; } as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 $as_echo "${lt_sysroot:-no}" >&6; } # Check whether --enable-libtool-lock was given. if test "${enable_libtool_lock+set}" = set; then : enableval=$enable_libtool_lock; fi test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE="32" ;; *ELF-64*) HPUX_IA64_MODE="64" ;; esac fi rm -rf conftest* ;; *-*-irix6*) # Find out which ABI we are using. echo '#line '$LINENO' "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then if test "$lt_cv_prog_gnu_ld" = yes; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; *N32*) LD="${LD-ld} -melf32bmipn32" ;; *64-bit*) LD="${LD-ld} -melf64bmip" ;; esac else case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; *N32*) LD="${LD-ld} -n32" ;; *64-bit*) LD="${LD-ld} -64" ;; esac fi fi rm -rf conftest* ;; x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) case `/usr/bin/file conftest.o` in *x86-64*) LD="${LD-ld} -m elf32_x86_64" ;; *) LD="${LD-ld} -m elf_i386" ;; esac ;; powerpc64le-*) LD="${LD-ld} -m elf32lppclinux" ;; powerpc64-*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) LD="${LD-ld} -m elf_s390" ;; sparc64-*linux*) LD="${LD-ld} -m elf32_sparc" ;; esac ;; *64-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_x86_64_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_x86_64" ;; powerpcle-*) LD="${LD-ld} -m elf64lppc" ;; powerpc-*) LD="${LD-ld} -m elf64ppc" ;; s390*-*linux*|s390*-*tpf*) LD="${LD-ld} -m elf64_s390" ;; sparc*-*linux*) LD="${LD-ld} -m elf64_sparc" ;; esac ;; esac fi rm -rf conftest* ;; *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 $as_echo_n "checking whether the C compiler needs -belf... " >&6; } if ${lt_cv_cc_needs_belf+:} false; then : $as_echo_n "(cached) " >&6 else ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_cv_cc_needs_belf=yes else lt_cv_cc_needs_belf=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 $as_echo "$lt_cv_cc_needs_belf" >&6; } if test x"$lt_cv_cc_needs_belf" != x"yes"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS="$SAVE_CFLAGS" fi ;; *-*solaris*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) case $host in i?86-*-solaris*) LD="${LD-ld} -m elf_x86_64" ;; sparc*-*-solaris*) LD="${LD-ld} -m elf64_sparc" ;; esac # GNU ld 2.21 introduced _sol2 emulations. Use them if available. if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then LD="${LD-ld}_sol2" fi ;; *) if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then LD="${LD-ld} -64" fi ;; esac ;; esac fi rm -rf conftest* ;; esac need_locks="$enable_libtool_lock" if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. set dummy ${ac_tool_prefix}mt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_MANIFEST_TOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$MANIFEST_TOOL"; then ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL if test -n "$MANIFEST_TOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 $as_echo "$MANIFEST_TOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_MANIFEST_TOOL"; then ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL # Extract the first word of "mt", so it can be a program name with args. set dummy mt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_MANIFEST_TOOL"; then ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_MANIFEST_TOOL="mt" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL if test -n "$ac_ct_MANIFEST_TOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 $as_echo "$ac_ct_MANIFEST_TOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_MANIFEST_TOOL" = x; then MANIFEST_TOOL=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL fi else MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL" fi test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 $as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } if ${lt_cv_path_mainfest_tool+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_path_mainfest_tool=no echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out cat conftest.err >&5 if $GREP 'Manifest Tool' conftest.out > /dev/null; then lt_cv_path_mainfest_tool=yes fi rm -f conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 $as_echo "$lt_cv_path_mainfest_tool" >&6; } if test "x$lt_cv_path_mainfest_tool" != xyes; then MANIFEST_TOOL=: fi case $host_os in rhapsody* | darwin*) if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args. set dummy ${ac_tool_prefix}dsymutil; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_DSYMUTIL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$DSYMUTIL"; then ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi DSYMUTIL=$ac_cv_prog_DSYMUTIL if test -n "$DSYMUTIL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 $as_echo "$DSYMUTIL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_DSYMUTIL"; then ac_ct_DSYMUTIL=$DSYMUTIL # Extract the first word of "dsymutil", so it can be a program name with args. set dummy dsymutil; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DSYMUTIL"; then ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_DSYMUTIL="dsymutil" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL if test -n "$ac_ct_DSYMUTIL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 $as_echo "$ac_ct_DSYMUTIL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_DSYMUTIL" = x; then DSYMUTIL=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac DSYMUTIL=$ac_ct_DSYMUTIL fi else DSYMUTIL="$ac_cv_prog_DSYMUTIL" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args. set dummy ${ac_tool_prefix}nmedit; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_NMEDIT+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$NMEDIT"; then ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi NMEDIT=$ac_cv_prog_NMEDIT if test -n "$NMEDIT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 $as_echo "$NMEDIT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_NMEDIT"; then ac_ct_NMEDIT=$NMEDIT # Extract the first word of "nmedit", so it can be a program name with args. set dummy nmedit; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_NMEDIT"; then ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_NMEDIT="nmedit" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT if test -n "$ac_ct_NMEDIT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 $as_echo "$ac_ct_NMEDIT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_NMEDIT" = x; then NMEDIT=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac NMEDIT=$ac_ct_NMEDIT fi else NMEDIT="$ac_cv_prog_NMEDIT" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args. set dummy ${ac_tool_prefix}lipo; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_LIPO+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$LIPO"; then ac_cv_prog_LIPO="$LIPO" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_LIPO="${ac_tool_prefix}lipo" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi LIPO=$ac_cv_prog_LIPO if test -n "$LIPO"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 $as_echo "$LIPO" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_LIPO"; then ac_ct_LIPO=$LIPO # Extract the first word of "lipo", so it can be a program name with args. set dummy lipo; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_LIPO+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_LIPO"; then ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_LIPO="lipo" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO if test -n "$ac_ct_LIPO"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 $as_echo "$ac_ct_LIPO" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_LIPO" = x; then LIPO=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac LIPO=$ac_ct_LIPO fi else LIPO="$ac_cv_prog_LIPO" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args. set dummy ${ac_tool_prefix}otool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_OTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$OTOOL"; then ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_OTOOL="${ac_tool_prefix}otool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OTOOL=$ac_cv_prog_OTOOL if test -n "$OTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 $as_echo "$OTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_OTOOL"; then ac_ct_OTOOL=$OTOOL # Extract the first word of "otool", so it can be a program name with args. set dummy otool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_OTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OTOOL"; then ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OTOOL="otool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL if test -n "$ac_ct_OTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 $as_echo "$ac_ct_OTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OTOOL" = x; then OTOOL=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OTOOL=$ac_ct_OTOOL fi else OTOOL="$ac_cv_prog_OTOOL" fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args. set dummy ${ac_tool_prefix}otool64; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_OTOOL64+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$OTOOL64"; then ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi OTOOL64=$ac_cv_prog_OTOOL64 if test -n "$OTOOL64"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 $as_echo "$OTOOL64" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_OTOOL64"; then ac_ct_OTOOL64=$OTOOL64 # Extract the first word of "otool64", so it can be a program name with args. set dummy otool64; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OTOOL64"; then ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_OTOOL64="otool64" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64 if test -n "$ac_ct_OTOOL64"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 $as_echo "$ac_ct_OTOOL64" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_OTOOL64" = x; then OTOOL64=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac OTOOL64=$ac_ct_OTOOL64 fi else OTOOL64="$ac_cv_prog_OTOOL64" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 $as_echo_n "checking for -single_module linker flag... " >&6; } if ${lt_cv_apple_cc_single_mod+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_apple_cc_single_mod=no if test -z "${LT_MULTI_MODULE}"; then # By default we will add the -single_module flag. You can override # by either setting the environment variable LT_MULTI_MODULE # non-empty at configure time, or by adding -multi_module to the # link flags. rm -rf libconftest.dylib* echo "int foo(void){return 1;}" > conftest.c echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c" >&5 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err _lt_result=$? # If there is a non-empty error log, and "single_module" # appears in it, assume the flag caused a linker warning if test -s conftest.err && $GREP single_module conftest.err; then cat conftest.err >&5 # Otherwise, if the output was created with a 0 exit code from # the compiler, it worked. elif test -f libconftest.dylib && test $_lt_result -eq 0; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&5 fi rm -rf libconftest.dylib* rm -f conftest.* fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 $as_echo "$lt_cv_apple_cc_single_mod" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 $as_echo_n "checking for -exported_symbols_list linker flag... " >&6; } if ${lt_cv_ld_exported_symbols_list+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ld_exported_symbols_list=no save_LDFLAGS=$LDFLAGS echo "_main" > conftest.sym LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_cv_ld_exported_symbols_list=yes else lt_cv_ld_exported_symbols_list=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 $as_echo "$lt_cv_ld_exported_symbols_list" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 $as_echo_n "checking for -force_load linker flag... " >&6; } if ${lt_cv_ld_force_load+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ld_force_load=no cat > conftest.c << _LT_EOF int forced_loaded() { return 2;} _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5 echo "$AR cru libconftest.a conftest.o" >&5 $AR cru libconftest.a conftest.o 2>&5 echo "$RANLIB libconftest.a" >&5 $RANLIB libconftest.a 2>&5 cat > conftest.c << _LT_EOF int main() { return 0;} _LT_EOF echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err _lt_result=$? if test -s conftest.err && $GREP force_load conftest.err; then cat conftest.err >&5 elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then lt_cv_ld_force_load=yes else cat conftest.err >&5 fi rm -f conftest.err libconftest.a conftest conftest.c rm -rf conftest.dSYM fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 $as_echo "$lt_cv_ld_force_load" >&6; } case $host_os in rhapsody* | darwin1.[012]) _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[91]*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; 10.[012]*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; 10.*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; esac ;; esac if test "$lt_cv_apple_cc_single_mod" = "yes"; then _lt_dar_single_mod='$single_module' fi if test "$lt_cv_ld_exported_symbols_list" = "yes"; then _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' else _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' fi if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= fi ;; esac ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if ${ac_cv_prog_CPP+:} false; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : break fi done ac_cv_prog_CPP=$CPP fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details" "$LINENO" 5; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } if ${ac_cv_header_stdc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else ac_cv_header_stdc=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) return 2; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : else ac_cv_header_stdc=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then $as_echo "#define STDC_HEADERS 1" >>confdefs.h fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default " if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done for ac_header in dlfcn.h do : ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default " if test "x$ac_cv_header_dlfcn_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_DLFCN_H 1 _ACEOF fi done # Set options enable_dlopen=no enable_win32_dll=no # Check whether --enable-shared was given. if test "${enable_shared+set}" = set; then : enableval=$enable_shared; p=${PACKAGE-default} case $enableval in yes) enable_shared=yes ;; no) enable_shared=no ;; *) enable_shared=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_shared=yes fi done IFS="$lt_save_ifs" ;; esac else enable_shared=yes fi # Check whether --with-pic was given. if test "${with_pic+set}" = set; then : withval=$with_pic; lt_p=${PACKAGE-default} case $withval in yes|no) pic_mode=$withval ;; *) pic_mode=default # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for lt_pkg in $withval; do IFS="$lt_save_ifs" if test "X$lt_pkg" = "X$lt_p"; then pic_mode=yes fi done IFS="$lt_save_ifs" ;; esac else pic_mode=default fi test -z "$pic_mode" && pic_mode=default # Check whether --enable-fast-install was given. if test "${enable_fast_install+set}" = set; then : enableval=$enable_fast_install; p=${PACKAGE-default} case $enableval in yes) enable_fast_install=yes ;; no) enable_fast_install=no ;; *) enable_fast_install=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_fast_install=yes fi done IFS="$lt_save_ifs" ;; esac else enable_fast_install=yes fi # This can be used to rebuild libtool when needed LIBTOOL_DEPS="$ltmain" # Always use our own libtool. LIBTOOL='$(SHELL) $(top_builddir)/libtool' test -z "$LN_S" && LN_S="ln -s" if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 $as_echo_n "checking for objdir... " >&6; } if ${lt_cv_objdir+:} false; then : $as_echo_n "(cached) " >&6 else rm -f .libs 2>/dev/null mkdir .libs 2>/dev/null if test -d .libs; then lt_cv_objdir=.libs else # MS-DOS does not allow filenames that begin with a dot. lt_cv_objdir=_libs fi rmdir .libs 2>/dev/null fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 $as_echo "$lt_cv_objdir" >&6; } objdir=$lt_cv_objdir cat >>confdefs.h <<_ACEOF #define LT_OBJDIR "$lt_cv_objdir/" _ACEOF case $host_os in aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi ;; esac # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a `.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a with_gnu_ld="$lt_cv_prog_gnu_ld" old_CC="$CC" old_CFLAGS="$CFLAGS" # Set sane defaults for various variables test -z "$CC" && CC=cc test -z "$LTCC" && LTCC=$CC test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o for cc_temp in $compiler""; do case $cc_temp in compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; \-*) ;; *) break;; esac done cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` # Only perform the check for file, if the check method requires it test -z "$MAGIC_CMD" && MAGIC_CMD=file case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 $as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } if ${lt_cv_path_MAGIC_CMD+:} false; then : $as_echo_n "(cached) " >&6 else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. ;; *) lt_save_MAGIC_CMD="$MAGIC_CMD" lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/${ac_tool_prefix}file; then lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : else cat <<_LT_EOF 1>&2 *** Warning: the command libtool uses to detect shared libraries, *** $file_magic_cmd, produces output that libtool cannot recognize. *** The result is that libtool may fail to recognize shared libraries *** as such. This will affect the creation of libtool libraries that *** depend on shared libraries, but programs linked with such libtool *** libraries will work regardless of this problem. Nevertheless, you *** may want to report the problem to your system manager and/or to *** bug-libtool@gnu.org _LT_EOF fi ;; esac fi break fi done IFS="$lt_save_ifs" MAGIC_CMD="$lt_save_MAGIC_CMD" ;; esac fi MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 $as_echo_n "checking for file... " >&6; } if ${lt_cv_path_MAGIC_CMD+:} false; then : $as_echo_n "(cached) " >&6 else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. ;; *) lt_save_MAGIC_CMD="$MAGIC_CMD" lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/file; then lt_cv_path_MAGIC_CMD="$ac_dir/file" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : else cat <<_LT_EOF 1>&2 *** Warning: the command libtool uses to detect shared libraries, *** $file_magic_cmd, produces output that libtool cannot recognize. *** The result is that libtool may fail to recognize shared libraries *** as such. This will affect the creation of libtool libraries that *** depend on shared libraries, but programs linked with such libtool *** libraries will work regardless of this problem. Nevertheless, you *** may want to report the problem to your system manager and/or to *** bug-libtool@gnu.org _LT_EOF fi ;; esac fi break fi done IFS="$lt_save_ifs" MAGIC_CMD="$lt_save_MAGIC_CMD" ;; esac fi MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi else MAGIC_CMD=: fi fi fi ;; esac # Use C for the default configuration in the libtool script lt_save_CC="$CC" ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu # Source file extension for C test sources. ac_ext=c # Object file extension for compiled C test sources. objext=o objext=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(){return(0);}' # If no C compiler was specified, use CC. LTCC=${LTCC-"$CC"} # If no C compiler flags were specified, use CFLAGS. LTCFLAGS=${LTCFLAGS-"$CFLAGS"} # Allow CC to be a program name with arguments. compiler=$CC # Save the default compiler, since it gets overwritten when the other # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. compiler_DEFAULT=$CC # save warnings/boilerplate of simple test code ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" >conftest.$ac_ext eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_compiler_boilerplate=`cat conftest.err` $RM conftest* ac_outfile=conftest.$ac_objext echo "$lt_simple_link_test_code" >conftest.$ac_ext eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_linker_boilerplate=`cat conftest.err` $RM -r conftest* ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... if test -n "$compiler"; then lt_prog_compiler_no_builtin_flag= if test "$GCC" = yes; then case $cc_basename in nvcc*) lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; *) lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 $as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_rtti_exceptions=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-fno-rtti -fno-exceptions" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. # The option is referenced via a variable to avoid confusing sed. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_rtti_exceptions=yes fi fi $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" else : fi fi lt_prog_compiler_wl= lt_prog_compiler_pic= lt_prog_compiler_static= if test "$GCC" = yes; then lt_prog_compiler_wl='-Wl,' lt_prog_compiler_static='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support lt_prog_compiler_pic='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the `-m68020' flag to GCC prevents building anything better, # like `-m68040'. lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries lt_prog_compiler_pic='-DDLL_EXPORT' ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files lt_prog_compiler_pic='-fno-common' ;; haiku*) # PIC is the default for Haiku. # The "-static" flag exists, but is broken. lt_prog_compiler_static= ;; hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag # sets the default TLS model and affects inlining. case $host_cpu in hppa*64*) # +Z the default ;; *) lt_prog_compiler_pic='-fPIC' ;; esac ;; interix[3-9]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. ;; msdosdjgpp*) # Just because we use GCC doesn't mean we suddenly get shared libraries # on systems that don't support them. lt_prog_compiler_can_build_shared=no enable_shared=no ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic='-fPIC -shared' ;; sysv4*MP*) if test -d /usr/nec; then lt_prog_compiler_pic=-Kconform_pic fi ;; *) lt_prog_compiler_pic='-fPIC' ;; esac case $cc_basename in nvcc*) # Cuda Compiler Driver 2.2 lt_prog_compiler_wl='-Xlinker ' if test -n "$lt_prog_compiler_pic"; then lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic" fi ;; esac else # PORTME Check for flag to pass linker flags through the system compiler. case $host_os in aix*) lt_prog_compiler_wl='-Wl,' if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' else lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' fi ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). lt_prog_compiler_pic='-DDLL_EXPORT' ;; hpux9* | hpux10* | hpux11*) lt_prog_compiler_wl='-Wl,' # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but # not for PA HP-UX. case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) lt_prog_compiler_pic='+Z' ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? lt_prog_compiler_static='${wl}-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) lt_prog_compiler_wl='-Wl,' # PIC (with -KPIC) is the default. lt_prog_compiler_static='-non_shared' ;; linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in # old Intel for x86_64 which still supported -KPIC. ecc*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-static' ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; # Lahey Fortran 8.1. lf95*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='--shared' lt_prog_compiler_static='--static' ;; nagfor*) # NAG Fortran compiler lt_prog_compiler_wl='-Wl,-Wl,,' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fpic' lt_prog_compiler_static='-Bstatic' ;; ccc*) lt_prog_compiler_wl='-Wl,' # All Alpha code is PIC. lt_prog_compiler_static='-non_shared' ;; xl* | bgxl* | bgf* | mpixl*) # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-qpic' lt_prog_compiler_static='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*) # Sun Fortran 8.3 passes all unrecognized flags to the linker lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='' ;; *Sun\ F* | *Sun*Fortran*) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='-Qoption ld ' ;; *Sun\ C*) # Sun C 5.9 lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='-Wl,' ;; *Intel*\ [CF]*Compiler*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fPIC' lt_prog_compiler_static='-static' ;; *Portland\ Group*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-fpic' lt_prog_compiler_static='-Bstatic' ;; esac ;; esac ;; newsos6) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. lt_prog_compiler_pic='-fPIC -shared' ;; osf3* | osf4* | osf5*) lt_prog_compiler_wl='-Wl,' # All OSF/1 code is PIC. lt_prog_compiler_static='-non_shared' ;; rdos*) lt_prog_compiler_static='-non_shared' ;; solaris*) lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' case $cc_basename in f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) lt_prog_compiler_wl='-Qoption ld ';; *) lt_prog_compiler_wl='-Wl,';; esac ;; sunos4*) lt_prog_compiler_wl='-Qoption ld ' lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; sysv4 | sysv4.2uw2* | sysv4.3*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; sysv4*MP*) if test -d /usr/nec ;then lt_prog_compiler_pic='-Kconform_pic' lt_prog_compiler_static='-Bstatic' fi ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' ;; unicos*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_can_build_shared=no ;; uts4*) lt_prog_compiler_pic='-pic' lt_prog_compiler_static='-Bstatic' ;; *) lt_prog_compiler_can_build_shared=no ;; esac fi case $host_os in # For platforms which do not support PIC, -DPIC is meaningless: *djgpp*) lt_prog_compiler_pic= ;; *) lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 $as_echo_n "checking for $compiler option to produce PIC... " >&6; } if ${lt_cv_prog_compiler_pic+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_pic=$lt_prog_compiler_pic fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 $as_echo "$lt_cv_prog_compiler_pic" >&6; } lt_prog_compiler_pic=$lt_cv_prog_compiler_pic # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } if ${lt_cv_prog_compiler_pic_works+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_pic_works=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="$lt_prog_compiler_pic -DPIC" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. # The option is referenced via a variable to avoid confusing sed. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_pic_works=yes fi fi $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; } if test x"$lt_cv_prog_compiler_pic_works" = xyes; then case $lt_prog_compiler_pic in "" | " "*) ;; *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; esac else lt_prog_compiler_pic= lt_prog_compiler_can_build_shared=no fi fi # # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } if ${lt_cv_prog_compiler_static_works+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_static_works=no save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $lt_tmp_static_flag" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then # The linker can only warn and ignore the option if not recognized # So say no if there are warnings if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&5 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_static_works=yes fi else lt_cv_prog_compiler_static_works=yes fi fi $RM -r conftest* LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 $as_echo "$lt_cv_prog_compiler_static_works" >&6; } if test x"$lt_cv_prog_compiler_static_works" = xyes; then : else lt_prog_compiler_static= fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if ${lt_cv_prog_compiler_c_o+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o=no $RM -r conftest 2>/dev/null mkdir conftest cd conftest mkdir out echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_cv_prog_compiler_c_o=yes fi fi chmod u+w . 2>&5 $RM conftest* # SGI C++ compiler will create directory out/ii_files/ for # template instantiation test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files $RM out/* && rmdir out cd .. $RM -r conftest $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 $as_echo "$lt_cv_prog_compiler_c_o" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } if ${lt_cv_prog_compiler_c_o+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o=no $RM -r conftest 2>/dev/null mkdir conftest cd conftest mkdir out echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_cv_prog_compiler_c_o=yes fi fi chmod u+w . 2>&5 $RM conftest* # SGI C++ compiler will create directory out/ii_files/ for # template instantiation test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files $RM out/* && rmdir out cd .. $RM -r conftest $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 $as_echo "$lt_cv_prog_compiler_c_o" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 $as_echo_n "checking if we can lock with hard links... " >&6; } hard_links=yes $RM conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 $as_echo "$hard_links" >&6; } if test "$hard_links" = no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 $as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} need_locks=warn fi else need_locks=no fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } runpath_var= allow_undefined_flag= always_export_symbols=no archive_cmds= archive_expsym_cmds= compiler_needs_object=no enable_shared_with_static_runtimes=no export_dynamic_flag_spec= export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' hardcode_automatic=no hardcode_direct=no hardcode_direct_absolute=no hardcode_libdir_flag_spec= hardcode_libdir_separator= hardcode_minus_L=no hardcode_shlibpath_var=unsupported inherit_rpath=no link_all_deplibs=unknown module_cmds= module_expsym_cmds= old_archive_from_new_cmds= old_archive_from_expsyms_cmds= thread_safe_flag_spec= whole_archive_flag_spec= # include_expsyms should be a list of space-separated symbols to be *always* # included in the symbol list include_expsyms= # exclude_expsyms can be an extended regexp of symbols to exclude # it will be wrapped by ` (' and `)$', so one must not match beginning or # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', # as well as any symbol that contains `d'. exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out # platforms (ab)use it in PIC code, but their linkers get confused if # the symbol is explicitly referenced. Since portable code cannot # rely on this symbol name, it's probably fine to never include it in # preloaded symbol tables. # Exclude shared library initialization/finalization symbols. extract_expsyms_cmds= case $host_os in cygwin* | mingw* | pw32* | cegcc*) # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++. if test "$GCC" != yes; then with_gnu_ld=no fi ;; interix*) # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; openbsd*) with_gnu_ld=no ;; linux* | k*bsd*-gnu | gnu*) link_all_deplibs=no ;; esac ld_shlibs=yes # On some targets, GNU ld is compatible enough with the native linker # that we're better off using the native interface for both. lt_use_gnu_ld_interface=no if test "$with_gnu_ld" = yes; then case $host_os in aix*) # The AIX port of GNU ld has always aspired to compatibility # with the native linker. However, as the warning in the GNU ld # block says, versions before 2.19.5* couldn't really create working # shared libraries, regardless of the interface used. case `$LD -v 2>&1` in *\ \(GNU\ Binutils\)\ 2.19.5*) ;; *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;; *\ \(GNU\ Binutils\)\ [3-9]*) ;; *) lt_use_gnu_ld_interface=yes ;; esac ;; *) lt_use_gnu_ld_interface=yes ;; esac fi if test "$lt_use_gnu_ld_interface" = yes; then # If archive_cmds runs LD, not CC, wlarc should be empty wlarc='${wl}' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' export_dynamic_flag_spec='${wl}--export-dynamic' # ancient GNU ld didn't support --whole-archive et. al. if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' else whole_archive_flag_spec= fi supports_anon_versioning=no case `$LD -v 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... *\ 2.11.*) ;; # other 2.11 versions *) supports_anon_versioning=yes ;; esac # See if GNU ld supports shared libraries. case $host_os in aix[3-9]*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then ld_shlibs=no cat <<_LT_EOF 1>&2 *** Warning: the GNU linker, at least up to release 2.19, is reported *** to be unable to reliably create shared libraries on AIX. *** Therefore, libtool is disabling shared libraries support. If you *** really care for shared libraries, you may want to install binutils *** 2.20 or above, or modify your PATH so that a non-GNU linker is found. *** You will then need to restart the configuration process. _LT_EOF fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; esac ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then allow_undefined_flag=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' else ld_shlibs=no fi ;; cygwin* | mingw* | pw32* | cegcc*) # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, # as there is no search path for DLLs. hardcode_libdir_flag_spec='-L$libdir' export_dynamic_flag_spec='${wl}--export-all-symbols' allow_undefined_flag=unsupported always_export_symbols=no enable_shared_with_static_runtimes=yes export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file (1st line # is EXPORTS), use it as is; otherwise, prepend... archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else ld_shlibs=no fi ;; haiku*) archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' link_all_deplibs=yes ;; interix[3-9]*) hardcode_direct=no hardcode_shlibpath_var=no hardcode_libdir_flag_spec='${wl}-rpath,$libdir' export_dynamic_flag_spec='${wl}-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) tmp_diet=no if test "$host_os" = linux-dietlibc; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ && test "$tmp_diet" = no then tmp_addflag=' $pic_flag' tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group f77 and f90 compilers whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 tmp_addflag=' -i_dynamic -nofor_main' ;; ifc* | ifort*) # Intel Fortran compiler tmp_addflag=' -nofor_main' ;; lf95*) # Lahey Fortran 8.1 whole_archive_flag_spec= tmp_sharedflag='--shared' ;; xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; nvcc*) # Cuda Compiler Driver 2.2 whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' compiler_needs_object=yes ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' compiler_needs_object=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 tmp_sharedflag='-G' ;; esac archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' if test "x$supports_anon_versioning" = xyes; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi case $cc_basename in xlf* | bgf* | bgxlf* | mpixlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test "x$supports_anon_versioning" = xyes; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac else ld_shlibs=no fi ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' fi ;; solaris*) if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then ld_shlibs=no cat <<_LT_EOF 1>&2 *** Warning: The releases 2.8.* of the GNU linker cannot reliably *** create shared libraries on Solaris systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.9.1 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) case `$LD -v 2>&1` in *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) ld_shlibs=no cat <<_LT_EOF 1>&2 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF ;; *) # For security reasons, it is highly recommended that you always # use absolute paths for naming shared libraries, and exclude the # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; esac ;; sunos4*) archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' wlarc= hardcode_direct=yes hardcode_shlibpath_var=no ;; *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; esac if test "$ld_shlibs" = no; then runpath_var= hardcode_libdir_flag_spec= export_dynamic_flag_spec= whole_archive_flag_spec= fi else # PORTME fill in a description of your system's linker (not GNU ld) case $host_os in aix3*) allow_undefined_flag=unsupported always_export_symbols=yes archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. hardcode_minus_L=yes if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. hardcode_direct=unsupported fi ;; aix[4-9]*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm # Also, AIX nm treats weak defined symbols like other global # defined symbols, whereas GNU nm marks them as "W". if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) for ld_flag in $LDFLAGS; do if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then aix_use_runtimelinking=yes break fi done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. archive_cmds='' hardcode_direct=yes hardcode_direct_absolute=yes hardcode_libdir_separator=':' link_all_deplibs=yes file_list_spec='${wl}-f,' if test "$GCC" = yes; then case $host_os in aix4.[012]|aix4.[012].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 hardcode_direct=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking hardcode_minus_L=yes hardcode_libdir_flag_spec='-L$libdir' hardcode_libdir_separator= fi ;; esac shared_flag='-shared' if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi link_all_deplibs=no else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi export_dynamic_flag_spec='${wl}-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to export. always_export_symbols=yes if test "$aix_use_runtimelinking" = yes; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. allow_undefined_flag='-berok' # Determine the default libpath from the value encoded in an # empty executable. if test "${lt_cv_aix_libpath+set}" = set; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath_+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\([^ ]*\) *$/\1/ p } }' lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_="/usr/lib:/lib" fi fi aix_libpath=$lt_cv_aix_libpath_ fi hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' allow_undefined_flag="-z nodefs" archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. if test "${lt_cv_aix_libpath+set}" = set; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath_+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { s/^0 *\([^ ]*\) *$/\1/ p } }' lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then lt_cv_aix_libpath_="/usr/lib:/lib" fi fi aix_libpath=$lt_cv_aix_libpath_ fi hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. no_undefined_flag=' ${wl}-bernotok' allow_undefined_flag=' ${wl}-berok' if test "$with_gnu_ld" = yes; then # We only use this code for GNU lds that support --whole-archive. whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives whole_archive_flag_spec='$convenience' fi archive_cmds_need_lc=yes # This is similar to how AIX traditionally builds its shared libraries. archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; esac ;; bsdi[45]*) export_dynamic_flag_spec=-rdynamic ;; cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in cl*) # Native MSVC hardcode_libdir_flag_spec=' ' allow_undefined_flag=unsupported always_export_symbols=yes file_list_spec='@' # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=".dll" # FIXME: Setting linknames here is a bad hack. archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; else sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; fi~ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, )='true' enable_shared_with_static_runtimes=yes exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' # Don't use ranlib old_postinstall_cmds='chmod 644 $oldlib' postlink_cmds='lt_outputfile="@OUTPUT@"~ lt_tool_outputfile="@TOOL_OUTPUT@"~ case $lt_outputfile in *.exe|*.EXE) ;; *) lt_outputfile="$lt_outputfile.exe" lt_tool_outputfile="$lt_tool_outputfile.exe" ;; esac~ if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; $RM "$lt_outputfile.manifest"; fi' ;; *) # Assume MSVC wrapper hardcode_libdir_flag_spec=' ' allow_undefined_flag=unsupported # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=".dll" # FIXME: Setting linknames here is a bad hack. archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' # The linker will automatically build a .lib file if we build a DLL. old_archive_from_new_cmds='true' # FIXME: Should let the user specify the lib program. old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs' enable_shared_with_static_runtimes=yes ;; esac ;; darwin* | rhapsody*) archive_cmds_need_lc=no hardcode_direct=no hardcode_automatic=yes hardcode_shlibpath_var=unsupported if test "$lt_cv_ld_force_load" = "yes"; then whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' else whole_archive_flag_spec='' fi link_all_deplibs=yes allow_undefined_flag="$_lt_dar_allow_undefined" case $cc_basename in ifort*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test "$_lt_dar_can_shared" = "yes"; then output_verbose_link_cmd=func_echo_all archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" else ld_shlibs=no fi ;; dgux*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_libdir_flag_spec='-L$libdir' hardcode_shlibpath_var=no ;; # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor # support. Future versions do this automatically, but an explicit c++rt0.o # does not break anything, and helps significantly (at the cost of a little # extra space). freebsd2.2*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; # Unfortunately, older versions of FreeBSD 2 do not have this feature. freebsd2.*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes hardcode_minus_L=yes hardcode_shlibpath_var=no ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. freebsd* | dragonfly*) archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; hpux9*) if test "$GCC" = yes; then archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' fi hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_separator=: hardcode_direct=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes export_dynamic_flag_spec='${wl}-E' ;; hpux10*) if test "$GCC" = yes && test "$with_gnu_ld" = no; then archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi if test "$with_gnu_ld" = no; then hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_separator=: hardcode_direct=yes hardcode_direct_absolute=yes export_dynamic_flag_spec='${wl}-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes fi ;; hpux11*) if test "$GCC" = yes && test "$with_gnu_ld" = no; then case $host_cpu in hppa*64*) archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) # Older versions of the 11.00 compiler do not understand -b yet # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 $as_echo_n "checking if $CC understands -b... " >&6; } if ${lt_cv_prog_compiler__b+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler__b=no save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -b" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then # The linker can only warn and ignore the option if not recognized # So say no if there are warnings if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&5 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler__b=yes fi else lt_cv_prog_compiler__b=yes fi fi $RM -r conftest* LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 $as_echo "$lt_cv_prog_compiler__b" >&6; } if test x"$lt_cv_prog_compiler__b" = xyes; then archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi ;; esac fi if test "$with_gnu_ld" = no; then hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_separator=: case $host_cpu in hppa*64*|ia64*) hardcode_direct=no hardcode_shlibpath_var=no ;; *) hardcode_direct=yes hardcode_direct_absolute=yes export_dynamic_flag_spec='${wl}-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes ;; esac fi ;; irix5* | irix6* | nonstopux*) if test "$GCC" = yes; then archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. # This should be the same for all languages, so no per-tag cache variable. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 $as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; } if ${lt_cv_irix_exported_symbol+:} false; then : $as_echo_n "(cached) " >&6 else save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int foo (void) { return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : lt_cv_irix_exported_symbol=yes else lt_cv_irix_exported_symbol=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS="$save_LDFLAGS" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 $as_echo "$lt_cv_irix_exported_symbol" >&6; } if test "$lt_cv_irix_exported_symbol" = yes; then archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' fi else archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' fi archive_cmds_need_lc='no' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: inherit_rpath=yes link_all_deplibs=yes ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF fi hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no ;; newsos6) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: hardcode_shlibpath_var=no ;; *nto* | *qnx*) ;; openbsd*) if test -f /usr/libexec/ld.so; then hardcode_direct=yes hardcode_shlibpath_var=no hardcode_direct_absolute=yes if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' hardcode_libdir_flag_spec='${wl}-rpath,$libdir' export_dynamic_flag_spec='${wl}-E' else case $host_os in openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' hardcode_libdir_flag_spec='-R$libdir' ;; *) archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='${wl}-rpath,$libdir' ;; esac fi else ld_shlibs=no fi ;; os2*) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes allow_undefined_flag=unsupported archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' ;; osf3*) if test "$GCC" = yes; then allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' else allow_undefined_flag=' -expect_unresolved \*' archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' fi archive_cmds_need_lc='no' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: ;; osf4* | osf5*) # as osf3* with the addition of -msym flag if test "$GCC" = yes; then allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' archive_cmds='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' else allow_undefined_flag=' -expect_unresolved \*' archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly hardcode_libdir_flag_spec='-rpath $libdir' fi archive_cmds_need_lc='no' hardcode_libdir_separator=: ;; solaris*) no_undefined_flag=' -z defs' if test "$GCC" = yes; then wlarc='${wl}' archive_cmds='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' else case `$CC -V 2>&1` in *"Compilers 5.0"*) wlarc='' archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' ;; *) wlarc='${wl}' archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' ;; esac fi hardcode_libdir_flag_spec='-R$libdir' hardcode_shlibpath_var=no case $host_os in solaris2.[0-5] | solaris2.[0-5].*) ;; *) # The compiler driver will combine and reorder linker options, # but understands `-z linker_flag'. GCC discards it without `$wl', # but is careful enough not to reorder. # Supported since Solaris 2.6 (maybe 2.5.1?) if test "$GCC" = yes; then whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' else whole_archive_flag_spec='-z allextract$convenience -z defaultextract' fi ;; esac link_all_deplibs=yes ;; sunos4*) if test "x$host_vendor" = xsequent; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi hardcode_libdir_flag_spec='-L$libdir' hardcode_direct=yes hardcode_minus_L=yes hardcode_shlibpath_var=no ;; sysv4) case $host_vendor in sni) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes # is this really true??? ;; siemens) ## LD is ld it makes a PLAMLIB ## CC just makes a GrossModule. archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' reload_cmds='$CC -r -o $output$reload_objs' hardcode_direct=no ;; motorola) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=no #Motorola manual says yes, but my tests say they lie ;; esac runpath_var='LD_RUN_PATH' hardcode_shlibpath_var=no ;; sysv4.3*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_shlibpath_var=no export_dynamic_flag_spec='-Bexport' ;; sysv4*MP*) if test -d /usr/nec; then archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_shlibpath_var=no runpath_var=LD_RUN_PATH hardcode_runpath_var=yes ld_shlibs=yes fi ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) no_undefined_flag='${wl}-z,text' archive_cmds_need_lc=no hardcode_shlibpath_var=no runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. no_undefined_flag='${wl}-z,text' allow_undefined_flag='${wl}-z,nodefs' archive_cmds_need_lc=no hardcode_shlibpath_var=no hardcode_libdir_flag_spec='${wl}-R,$libdir' hardcode_libdir_separator=':' link_all_deplibs=yes export_dynamic_flag_spec='${wl}-Bexport' runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; uts4*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_libdir_flag_spec='-L$libdir' hardcode_shlibpath_var=no ;; *) ld_shlibs=no ;; esac if test x$host_vendor = xsni; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) export_dynamic_flag_spec='${wl}-Blargedynsym' ;; esac fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 $as_echo "$ld_shlibs" >&6; } test "$ld_shlibs" = no && can_build_shared=no with_gnu_ld=$with_gnu_ld # # Do we need to explicitly link libc? # case "x$archive_cmds_need_lc" in x|xyes) # Assume -lc should be added archive_cmds_need_lc=yes if test "$enable_shared" = yes && test "$GCC" = yes; then case $archive_cmds in *'~'*) # FIXME: we may have to deal with multi-command sequences. ;; '$CC '*) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } if ${lt_cv_archive_cmds_need_lc+:} false; then : $as_echo_n "(cached) " >&6 else $RM conftest* echo "$lt_simple_compile_test_code" > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext deplibs= wl=$lt_prog_compiler_wl pic_flag=$lt_prog_compiler_pic compiler_flags=-v linker_flags=-v verstring= output_objdir=. libname=conftest lt_save_allow_undefined_flag=$allow_undefined_flag allow_undefined_flag= if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then lt_cv_archive_cmds_need_lc=no else lt_cv_archive_cmds_need_lc=yes fi allow_undefined_flag=$lt_save_allow_undefined_flag else cat conftest.err 1>&5 fi $RM conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 $as_echo "$lt_cv_archive_cmds_need_lc" >&6; } archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc ;; esac fi ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 $as_echo_n "checking dynamic linker characteristics... " >&6; } if test "$GCC" = yes; then case $host_os in darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; *) lt_awk_arg="/^libraries:/" ;; esac case $host_os in mingw* | cegcc*) lt_sed_strip_eq="s,=\([A-Za-z]:\),\1,g" ;; *) lt_sed_strip_eq="s,=/,/,g" ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` case $lt_search_path_spec in *\;*) # if the path contains ";" then we assume it to be the separator # otherwise default to the standard path separator (i.e. ":") - it is # assumed that no part of a normal pathname contains ";" but that should # okay in the real world where ";" in dirpaths is itself problematic. lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` ;; *) lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` ;; esac # Ok, now we have the path, separated by spaces, we can step through it # and add multilib dir if necessary. lt_tmp_lt_search_path_spec= lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` for lt_sys_path in $lt_search_path_spec; do if test -d "$lt_sys_path/$lt_multi_os_dir"; then lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" else test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' BEGIN {RS=" "; FS="/|\n";} { lt_foo=""; lt_count=0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { lt_foo="/" $lt_i lt_foo; } else { lt_count--; } } } } if (lt_foo != "") { lt_freq[lt_foo]++; } if (lt_freq[lt_foo] == 1) { print lt_foo; } }'` # AWK program above erroneously prepends '/' to C:/dos/paths # for these hosts. case $host_os in mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ $SED 's,/\([A-Za-z]:\),\1,g'` ;; esac sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` else sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" fi library_names_spec= libname_spec='lib$name' soname_spec= shrext_cmds=".so" postinstall_cmds= postuninstall_cmds= finish_cmds= finish_eval= shlibpath_var= shlibpath_overrides_runpath=unknown version_type=none dynamic_linker="$host_os ld.so" sys_lib_dlsearch_path_spec="/lib /usr/lib" need_lib_prefix=unknown hardcode_into_libs=no # when you set need_version to no, make sure it does not cause -set_version # flags to be left without arguments need_version=unknown case $host_os in aix3*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. soname_spec='${libname}${release}${shared_ext}$major' ;; aix[4-9]*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no hardcode_into_libs=yes if test "$host_cpu" = ia64; then # AIX 5 supports IA64 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with # the line `#! .'. This would cause the generated library to # depend on `.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[01] | aix4.[01].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac # AIX (on Power*) has no versioning support, so currently we can not hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. if test "$aix_use_runtimelinking" = yes; then # If using run time linking (on AIX 4.2 or later) use lib.so # instead of lib.a to let people know that these are not # typical AIX shared libraries. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' else # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. library_names_spec='${libname}${release}.a $libname.a' soname_spec='${libname}${release}${shared_ext}$major' fi shlibpath_var=LIBPATH fi ;; amigaos*) case $host_cpu in powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; bsdi[45]*) version_type=linux # correct to gnu/linux during the next big refactor need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" # the default ld.so.conf also contains /usr/contrib/lib and # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow # libtool to hard-code these into programs ;; cygwin* | mingw* | pw32* | cegcc*) version_type=windows shrext_cmds=".dll" need_version=no need_lib_prefix=no case $GCC,$cc_basename in yes,*) # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \${file}`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' ;; esac dynamic_linker='Win32 ld.exe' ;; *,cl*) # Native MSVC libname_spec='$name' soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' library_names_spec='${libname}.dll.lib' case $build_os in mingw*) sys_lib_search_path_spec= lt_save_ifs=$IFS IFS=';' for lt_path in $LIB do IFS=$lt_save_ifs # Let DOS variable expansion print the short 8.3 style file name. lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" done IFS=$lt_save_ifs # Convert to MSYS style. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` ;; cygwin*) # Convert to unix form, then to dos form, then back to unix form # but this time dos style (no spaces!) so that the unix form looks # like /cygdrive/c/PROGRA~1:/cygdr... sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` ;; *) sys_lib_search_path_spec="$LIB" if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then # It is most probably a Windows format PATH. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` else sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi # FIXME: find the short name or the path components, as spaces are # common. (e.g. "Program Files" -> "PROGRA~1") ;; esac # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \${file}`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes dynamic_linker='Win32 link.exe' ;; *) # Assume MSVC wrapper library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' dynamic_linker='Win32 ld.exe' ;; esac # FIXME: first we should search . and the directory the executable is in shlibpath_var=PATH ;; darwin* | rhapsody*) dynamic_linker="$host_os dyld" version_type=darwin need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' soname_spec='${libname}${release}${major}$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib" sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' ;; dgux*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then objformat=`/usr/bin/objformat` else case $host_os in freebsd[23].*) objformat=aout ;; *) objformat=elf ;; esac fi version_type=freebsd-$objformat case $version_type in freebsd-elf*) library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' need_version=yes ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in freebsd2.*) shlibpath_overrides_runpath=yes ;; freebsd3.[01]* | freebsdelf3.[01]*) shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; freebsd3.[2-9]* | freebsdelf3.[2-9]* | \ freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1) shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; *) # from 4.6 on, and DragonFly shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; esac ;; haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no dynamic_linker="$host_os runtime_loader" library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LIBRARY_PATH shlibpath_overrides_runpath=yes sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. version_type=sunos need_lib_prefix=no need_version=no case $host_cpu in ia64*) shrext_cmds='.so' hardcode_into_libs=yes dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' if test "X$HPUX_IA64_MODE" = X32; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" fi sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' hardcode_into_libs=yes dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; *) shrext_cmds='.sl' dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555, ... postinstall_cmds='chmod 555 $lib' # or fails outright, so override atomically: install_override_mode=555 ;; interix[3-9]*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; irix5* | irix6* | nonstopux*) case $host_os in nonstopux*) version_type=nonstopux ;; *) if test "$lt_cv_prog_gnu_ld" = yes; then version_type=linux # correct to gnu/linux during the next big refactor else version_type=irix fi ;; esac need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= ;; *) case $LD in # libtool.m4 will add one of these switches to LD *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= libmagic=32-bit;; *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 libmagic=64-bit;; *) libsuff= shlibsuff= libmagic=never-match;; esac ;; esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" hardcode_into_libs=yes ;; # No shared lib support for Linux oldld, aout, or coff. linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no # Some binutils ld are patched to set DT_RUNPATH if ${lt_cv_shlibpath_overrides_runpath+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_shlibpath_overrides_runpath=no save_LDFLAGS=$LDFLAGS save_libdir=$libdir eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \ LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\"" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then : lt_cv_shlibpath_overrides_runpath=yes fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LDFLAGS=$save_LDFLAGS libdir=$save_libdir fi shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath # This implies no fast_install, which is unacceptable. # Some rework will be needed to allow for fast_install # before this can be enabled. hardcode_into_libs=yes # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on # powerpc, because MkLinux only supported shared libraries with the # GNU dynamic linker. Since this was broken with cross compilers, # most powerpc-linux boxes support dynamic linking these days and # people can always --disable-shared, the test was removed, and we # assume the GNU/Linux dynamic linker is in use. dynamic_linker='GNU/Linux ld.so' ;; netbsdelf*-gnu) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='NetBSD ld.elf_so' ;; netbsd*) version_type=sunos need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; newsos6) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; *nto* | *qnx*) version_type=qnx need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='ldqnx.so' ;; openbsd*) version_type=sunos sys_lib_dlsearch_path_spec="/usr/lib" need_lib_prefix=no # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. case $host_os in openbsd3.3 | openbsd3.3.*) need_version=yes ;; *) need_version=no ;; esac library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then case $host_os in openbsd2.[89] | openbsd2.[89].*) shlibpath_overrides_runpath=no ;; *) shlibpath_overrides_runpath=yes ;; esac else shlibpath_overrides_runpath=yes fi ;; os2*) libname_spec='$name' shrext_cmds=".dll" need_lib_prefix=no library_names_spec='$libname${shared_ext} $libname.a' dynamic_linker='OS/2 ld.exe' shlibpath_var=LIBPATH ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" ;; rdos*) dynamic_linker=no ;; solaris*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes # ldd complains unless libraries are executable postinstall_cmds='chmod +x $lib' ;; sunos4*) version_type=sunos library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes if test "$with_gnu_ld" = yes; then need_lib_prefix=no fi need_version=yes ;; sysv4 | sysv4.3*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH case $host_vendor in sni) shlibpath_overrides_runpath=no need_lib_prefix=no runpath_var=LD_RUN_PATH ;; siemens) need_lib_prefix=no ;; motorola) need_lib_prefix=no need_version=no shlibpath_overrides_runpath=no sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' ;; esac ;; sysv4*MP*) if test -d /usr/nec ;then version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' soname_spec='$libname${shared_ext}.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) version_type=freebsd-elf need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes if test "$with_gnu_ld" = yes; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' case $host_os in sco3.2v5*) sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" ;; esac fi sys_lib_dlsearch_path_spec='/usr/lib' ;; tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; uts4*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; *) dynamic_linker=no ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 $as_echo "$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" fi if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 $as_echo_n "checking how to hardcode library paths into programs... " >&6; } hardcode_action= if test -n "$hardcode_libdir_flag_spec" || test -n "$runpath_var" || test "X$hardcode_automatic" = "Xyes" ; then # We can hardcode non-existent directories. if test "$hardcode_direct" != no && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no && test "$hardcode_minus_L" != no; then # Linking always hardcodes the temporary library directory. hardcode_action=relink else # We can link without hardcoding, and we can hardcode nonexisting dirs. hardcode_action=immediate fi else # We cannot hardcode anything, or else we can only hardcode existing # directories. hardcode_action=unsupported fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 $as_echo "$hardcode_action" >&6; } if test "$hardcode_action" = relink || test "$inherit_rpath" = yes; then # Fast installation is not supported enable_fast_install=no elif test "$shlibpath_overrides_runpath" = yes || test "$enable_shared" = no; then # Fast installation is not necessary enable_fast_install=needless fi if test "x$enable_dlopen" != xyes; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown else lt_cv_dlopen=no lt_cv_dlopen_libs= case $host_os in beos*) lt_cv_dlopen="load_add_on" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; cygwin*) lt_cv_dlopen="dlopen" lt_cv_dlopen_libs= ;; darwin*) # if libdl is installed we need to link against it { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } if ${ac_cv_lib_dl_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else ac_cv_lib_dl_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else lt_cv_dlopen="dyld" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes fi ;; *) ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" if test "x$ac_cv_func_shl_load" = xyes; then : lt_cv_dlopen="shl_load" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 $as_echo_n "checking for shl_load in -ldld... " >&6; } if ${ac_cv_lib_dld_shl_load+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char shl_load (); int main () { return shl_load (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_shl_load=yes else ac_cv_lib_dld_shl_load=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 $as_echo "$ac_cv_lib_dld_shl_load" >&6; } if test "x$ac_cv_lib_dld_shl_load" = xyes; then : lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld" else ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" if test "x$ac_cv_func_dlopen" = xyes; then : lt_cv_dlopen="dlopen" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } if ${ac_cv_lib_dl_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dl_dlopen=yes else ac_cv_lib_dl_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 $as_echo_n "checking for dlopen in -lsvld... " >&6; } if ${ac_cv_lib_svld_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsvld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dlopen (); int main () { return dlopen (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_svld_dlopen=yes else ac_cv_lib_svld_dlopen=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 $as_echo "$ac_cv_lib_svld_dlopen" >&6; } if test "x$ac_cv_lib_svld_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 $as_echo_n "checking for dld_link in -ldld... " >&6; } if ${ac_cv_lib_dld_dld_link+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldld $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dld_link (); int main () { return dld_link (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_dld_dld_link=yes else ac_cv_lib_dld_dld_link=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 $as_echo "$ac_cv_lib_dld_dld_link" >&6; } if test "x$ac_cv_lib_dld_dld_link" = xyes; then : lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld" fi fi fi fi fi fi ;; esac if test "x$lt_cv_dlopen" != xno; then enable_dlopen=yes else enable_dlopen=no fi case $lt_cv_dlopen in dlopen) save_CPPFLAGS="$CPPFLAGS" test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" save_LDFLAGS="$LDFLAGS" wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" save_LIBS="$LIBS" LIBS="$lt_cv_dlopen_libs $LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 $as_echo_n "checking whether a program can dlopen itself... " >&6; } if ${lt_cv_dlopen_self+:} false; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : lt_cv_dlopen_self=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF #line $LINENO "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #ifdef RTLD_GLOBAL # define LT_DLGLOBAL RTLD_GLOBAL #else # ifdef DL_GLOBAL # define LT_DLGLOBAL DL_GLOBAL # else # define LT_DLGLOBAL 0 # endif #endif /* We may have to define LT_DLLAZY_OR_NOW in the command line if we find out it does not work in some platform. */ #ifndef LT_DLLAZY_OR_NOW # ifdef RTLD_LAZY # define LT_DLLAZY_OR_NOW RTLD_LAZY # else # ifdef DL_LAZY # define LT_DLLAZY_OR_NOW DL_LAZY # else # ifdef RTLD_NOW # define LT_DLLAZY_OR_NOW RTLD_NOW # else # ifdef DL_NOW # define LT_DLLAZY_OR_NOW DL_NOW # else # define LT_DLLAZY_OR_NOW 0 # endif # endif # endif # endif #endif /* When -fvisbility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord () __attribute__((visibility("default"))); #endif int fnord () { return 42; } int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else { if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; else puts (dlerror ()); } /* dlclose (self); */ } else puts (dlerror ()); return status; } _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;; esac else : # compilation failed lt_cv_dlopen_self=no fi fi rm -fr conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 $as_echo "$lt_cv_dlopen_self" >&6; } if test "x$lt_cv_dlopen_self" = xyes; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } if ${lt_cv_dlopen_self_static+:} false; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : lt_cv_dlopen_self_static=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF #line $LINENO "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #ifdef RTLD_GLOBAL # define LT_DLGLOBAL RTLD_GLOBAL #else # ifdef DL_GLOBAL # define LT_DLGLOBAL DL_GLOBAL # else # define LT_DLGLOBAL 0 # endif #endif /* We may have to define LT_DLLAZY_OR_NOW in the command line if we find out it does not work in some platform. */ #ifndef LT_DLLAZY_OR_NOW # ifdef RTLD_LAZY # define LT_DLLAZY_OR_NOW RTLD_LAZY # else # ifdef DL_LAZY # define LT_DLLAZY_OR_NOW DL_LAZY # else # ifdef RTLD_NOW # define LT_DLLAZY_OR_NOW RTLD_NOW # else # ifdef DL_NOW # define LT_DLLAZY_OR_NOW DL_NOW # else # define LT_DLLAZY_OR_NOW 0 # endif # endif # endif # endif #endif /* When -fvisbility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord () __attribute__((visibility("default"))); #endif int fnord () { return 42; } int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else { if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; else puts (dlerror ()); } /* dlclose (self); */ } else puts (dlerror ()); return status; } _LT_EOF if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;; esac else : # compilation failed lt_cv_dlopen_self_static=no fi fi rm -fr conftest* fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 $as_echo "$lt_cv_dlopen_self_static" >&6; } fi CPPFLAGS="$save_CPPFLAGS" LDFLAGS="$save_LDFLAGS" LIBS="$save_LIBS" ;; esac case $lt_cv_dlopen_self in yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; *) enable_dlopen_self=unknown ;; esac case $lt_cv_dlopen_self_static in yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; *) enable_dlopen_self_static=unknown ;; esac fi striplib= old_striplib= { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 $as_echo_n "checking whether stripping libraries is possible... " >&6; } if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" old_striplib="$STRIP -S" { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi ;; *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } ;; esac fi # Report which library types will actually be built { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 $as_echo_n "checking if libtool supports shared libraries... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 $as_echo "$can_build_shared" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 $as_echo_n "checking whether to build shared libraries... " >&6; } test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[4-9]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 $as_echo "$enable_shared" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 $as_echo_n "checking whether to build static libraries... " >&6; } # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 $as_echo "$enable_static" >&6; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu CC="$lt_save_CC" ac_config_commands="$ac_config_commands libtool" # Only expand once: # Checks for header files. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } if ${ac_cv_header_stdc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else ac_cv_header_stdc=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) return 2; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : else ac_cv_header_stdc=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then $as_echo "#define STDC_HEADERS 1" >>confdefs.h fi for ac_header in libintl.h locale.h stdlib.h string.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done # Checks for typedefs, structures, and compiler characteristics. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5 $as_echo_n "checking for an ANSI C-conforming const... " >&6; } if ${ac_cv_c_const+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __cplusplus /* Ultrix mips cc rejects this sort of thing. */ typedef int charset[2]; const charset cs = { 0, 0 }; /* SunOS 4.1.1 cc rejects this. */ char const *const *pcpcc; char **ppc; /* NEC SVR4.0.2 mips cc rejects this. */ struct point {int x, y;}; static struct point const zero = {0,0}; /* AIX XL C 1.02.0.0 rejects this. It does not let you subtract one const X* pointer from another in an arm of an if-expression whose if-part is not a constant expression */ const char *g = "string"; pcpcc = &g + (g ? g-g : 0); /* HPUX 7.0 cc rejects these. */ ++pcpcc; ppc = (char**) pcpcc; pcpcc = (char const *const *) ppc; { /* SCO 3.2v4 cc rejects this sort of thing. */ char tx; char *t = &tx; char const *s = 0 ? (char *) 0 : (char const *) 0; *t++ = 0; if (s) return 0; } { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ int x[] = {25, 17}; const int *foo = &x[0]; ++foo; } { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ typedef const int *iptr; iptr p = 0; ++p; } { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ struct s { int j; const int *ap[3]; } bx; struct s *b = &bx; b->j = 5; } { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ const int foo = 10; if (!foo) return 0; } return !cs[0] && !zero.x; #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_c_const=yes else ac_cv_c_const=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5 $as_echo "$ac_cv_c_const" >&6; } if test $ac_cv_c_const = no; then $as_echo "#define const /**/" >>confdefs.h fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 $as_echo_n "checking for inline... " >&6; } if ${ac_cv_c_inline+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifndef __cplusplus typedef int foo_t; static $ac_kw foo_t static_foo () {return 0; } $ac_kw foo_t foo () {return 0; } #endif _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_c_inline=$ac_kw fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext test "$ac_cv_c_inline" != no && break done fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 $as_echo "$ac_cv_c_inline" >&6; } case $ac_cv_c_inline in inline | yes) ;; *) case $ac_cv_c_inline in no) ac_val=;; *) ac_val=$ac_cv_c_inline;; esac cat >>confdefs.h <<_ACEOF #ifndef __cplusplus #define inline $ac_val #endif _ACEOF ;; esac ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" if test "x$ac_cv_type_size_t" = xyes; then : else cat >>confdefs.h <<_ACEOF #define size_t unsigned int _ACEOF fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct tm is in sys/time.h or time.h" >&5 $as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; } if ${ac_cv_struct_tm+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include int main () { struct tm tm; int *p = &tm.tm_sec; return !p; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_struct_tm=time.h else ac_cv_struct_tm=sys/time.h fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_struct_tm" >&5 $as_echo "$ac_cv_struct_tm" >&6; } if test $ac_cv_struct_tm = sys/time.h; then $as_echo "#define TM_IN_SYS_TIME 1" >>confdefs.h fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working volatile" >&5 $as_echo_n "checking for working volatile... " >&6; } if ${ac_cv_c_volatile+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { volatile int x; int * volatile y = (int *) 0; return !x && !y; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_c_volatile=yes else ac_cv_c_volatile=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_volatile" >&5 $as_echo "$ac_cv_c_volatile" >&6; } if test $ac_cv_c_volatile = no; then $as_echo "#define volatile /**/" >>confdefs.h fi # Checks for library functions. for ac_header in stdlib.h do : ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" if test "x$ac_cv_header_stdlib_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_STDLIB_H 1 _ACEOF fi done { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5 $as_echo_n "checking for GNU libc compatible malloc... " >&6; } if ${ac_cv_func_malloc_0_nonnull+:} false; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : ac_cv_func_malloc_0_nonnull=no else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #if defined STDC_HEADERS || defined HAVE_STDLIB_H # include #else char *malloc (); #endif int main () { return ! malloc (0); ; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_func_malloc_0_nonnull=yes else ac_cv_func_malloc_0_nonnull=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5 $as_echo "$ac_cv_func_malloc_0_nonnull" >&6; } if test $ac_cv_func_malloc_0_nonnull = yes; then : $as_echo "#define HAVE_MALLOC 1" >>confdefs.h else $as_echo "#define HAVE_MALLOC 0" >>confdefs.h case " $LIBOBJS " in *" malloc.$ac_objext "* ) ;; *) LIBOBJS="$LIBOBJS malloc.$ac_objext" ;; esac $as_echo "#define malloc rpl_malloc" >>confdefs.h fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5 $as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; } if ${ac_cv_header_time+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include int main () { if ((struct tm *) 0) return 0; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_time=yes else ac_cv_header_time=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5 $as_echo "$ac_cv_header_time" >&6; } if test $ac_cv_header_time = yes; then $as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h fi for ac_header in $ac_header_list do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default " if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done for ac_func in $ac_func_list do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" if eval test \"x\$"$as_ac_var"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mktime" >&5 $as_echo_n "checking for working mktime... " >&6; } if ${ac_cv_func_working_mktime+:} false; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : ac_cv_func_working_mktime=no else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Test program from Paul Eggert and Tony Leneis. */ #ifdef TIME_WITH_SYS_TIME # include # include #else # ifdef HAVE_SYS_TIME_H # include # else # include # endif #endif #include #include #ifdef HAVE_UNISTD_H # include #endif #ifndef HAVE_ALARM # define alarm(X) /* empty */ #endif /* Work around redefinition to rpl_putenv by other config tests. */ #undef putenv static time_t time_t_max; static time_t time_t_min; /* Values we'll use to set the TZ environment variable. */ static const char *tz_strings[] = { (const char *) 0, "TZ=GMT0", "TZ=JST-9", "TZ=EST+3EDT+2,M10.1.0/00:00:00,M2.3.0/00:00:00" }; #define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0])) /* Return 0 if mktime fails to convert a date in the spring-forward gap. Based on a problem report from Andreas Jaeger. */ static int spring_forward_gap () { /* glibc (up to about 1998-10-07) failed this test. */ struct tm tm; /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0" instead of "TZ=America/Vancouver" in order to detect the bug even on systems that don't support the Olson extension, or don't have the full zoneinfo tables installed. */ putenv ((char*) "TZ=PST8PDT,M4.1.0,M10.5.0"); tm.tm_year = 98; tm.tm_mon = 3; tm.tm_mday = 5; tm.tm_hour = 2; tm.tm_min = 0; tm.tm_sec = 0; tm.tm_isdst = -1; return mktime (&tm) != (time_t) -1; } static int mktime_test1 (time_t now) { struct tm *lt; return ! (lt = localtime (&now)) || mktime (lt) == now; } static int mktime_test (time_t now) { return (mktime_test1 (now) && mktime_test1 ((time_t) (time_t_max - now)) && mktime_test1 ((time_t) (time_t_min + now))); } static int irix_6_4_bug () { /* Based on code from Ariel Faigon. */ struct tm tm; tm.tm_year = 96; tm.tm_mon = 3; tm.tm_mday = 0; tm.tm_hour = 0; tm.tm_min = 0; tm.tm_sec = 0; tm.tm_isdst = -1; mktime (&tm); return tm.tm_mon == 2 && tm.tm_mday == 31; } static int bigtime_test (int j) { struct tm tm; time_t now; tm.tm_year = tm.tm_mon = tm.tm_mday = tm.tm_hour = tm.tm_min = tm.tm_sec = j; now = mktime (&tm); if (now != (time_t) -1) { struct tm *lt = localtime (&now); if (! (lt && lt->tm_year == tm.tm_year && lt->tm_mon == tm.tm_mon && lt->tm_mday == tm.tm_mday && lt->tm_hour == tm.tm_hour && lt->tm_min == tm.tm_min && lt->tm_sec == tm.tm_sec && lt->tm_yday == tm.tm_yday && lt->tm_wday == tm.tm_wday && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst) == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst)))) return 0; } return 1; } static int year_2050_test () { /* The correct answer for 2050-02-01 00:00:00 in Pacific time, ignoring leap seconds. */ unsigned long int answer = 2527315200UL; struct tm tm; time_t t; tm.tm_year = 2050 - 1900; tm.tm_mon = 2 - 1; tm.tm_mday = 1; tm.tm_hour = tm.tm_min = tm.tm_sec = 0; tm.tm_isdst = -1; /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0" instead of "TZ=America/Vancouver" in order to detect the bug even on systems that don't support the Olson extension, or don't have the full zoneinfo tables installed. */ putenv ((char*) "TZ=PST8PDT,M4.1.0,M10.5.0"); t = mktime (&tm); /* Check that the result is either a failure, or close enough to the correct answer that we can assume the discrepancy is due to leap seconds. */ return (t == (time_t) -1 || (0 < t && answer - 120 <= t && t <= answer + 120)); } int main () { time_t t, delta; int i, j; /* This test makes some buggy mktime implementations loop. Give up after 60 seconds; a mktime slower than that isn't worth using anyway. */ alarm (60); for (;;) { t = (time_t_max << 1) + 1; if (t <= time_t_max) break; time_t_max = t; } time_t_min = - ((time_t) ~ (time_t) 0 == (time_t) -1) - time_t_max; delta = time_t_max / 997; /* a suitable prime number */ for (i = 0; i < N_STRINGS; i++) { if (tz_strings[i]) putenv ((char*) tz_strings[i]); for (t = 0; t <= time_t_max - delta; t += delta) if (! mktime_test (t)) return 1; if (! (mktime_test ((time_t) 1) && mktime_test ((time_t) (60 * 60)) && mktime_test ((time_t) (60 * 60 * 24)))) return 1; for (j = 1; ; j <<= 1) if (! bigtime_test (j)) return 1; else if (INT_MAX / 2 < j) break; if (! bigtime_test (INT_MAX)) return 1; } return ! (irix_6_4_bug () && spring_forward_gap () && year_2050_test ()); } _ACEOF if ac_fn_c_try_run "$LINENO"; then : ac_cv_func_working_mktime=yes else ac_cv_func_working_mktime=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_working_mktime" >&5 $as_echo "$ac_cv_func_working_mktime" >&6; } if test $ac_cv_func_working_mktime = no; then case " $LIBOBJS " in *" mktime.$ac_objext "* ) ;; *) LIBOBJS="$LIBOBJS mktime.$ac_objext" ;; esac fi for ac_func in strftime do : ac_fn_c_check_func "$LINENO" "strftime" "ac_cv_func_strftime" if test "x$ac_cv_func_strftime" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_STRFTIME 1 _ACEOF else # strftime is in -lintl on SCO UNIX. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for strftime in -lintl" >&5 $as_echo_n "checking for strftime in -lintl... " >&6; } if ${ac_cv_lib_intl_strftime+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char strftime (); int main () { return strftime (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_strftime=yes else ac_cv_lib_intl_strftime=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_strftime" >&5 $as_echo "$ac_cv_lib_intl_strftime" >&6; } if test "x$ac_cv_lib_intl_strftime" = xyes; then : $as_echo "#define HAVE_STRFTIME 1" >>confdefs.h LIBS="-lintl $LIBS" fi fi done for ac_func in memset strcasecmp strdup do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" if eval test \"x\$"$as_ac_var"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done # gettext stuff GETTEXT_PACKAGE=${PACKAGE} cat >>confdefs.h <<_ACEOF #define GETTEXT_PACKAGE "$GETTEXT_PACKAGE" _ACEOF cat >>confdefs.h <<_ACEOF #define BONOBO_EXPLICIT_TRANSLATION_DOMAIN "$GETTEXT_PACKAGE" _ACEOF ALL_LINGUAS="ca cs de es fi fr it pt_BR oc ru sk sv" for ac_header in locale.h do : ac_fn_c_check_header_mongrel "$LINENO" "locale.h" "ac_cv_header_locale_h" "$ac_includes_default" if test "x$ac_cv_header_locale_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LOCALE_H 1 _ACEOF fi done if test $ac_cv_header_locale_h = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5 $as_echo_n "checking for LC_MESSAGES... " >&6; } if ${am_cv_val_LC_MESSAGES+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { return LC_MESSAGES ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : am_cv_val_LC_MESSAGES=yes else am_cv_val_LC_MESSAGES=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5 $as_echo "$am_cv_val_LC_MESSAGES" >&6; } if test $am_cv_val_LC_MESSAGES = yes; then $as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h fi fi USE_NLS=yes gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= ac_fn_c_check_header_mongrel "$LINENO" "libintl.h" "ac_cv_header_libintl_h" "$ac_includes_default" if test "x$ac_cv_header_libintl_h" = xyes; then : gt_cv_func_dgettext_libintl="no" libintl_extra_libs="" # # First check in libc # { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in libc" >&5 $as_echo_n "checking for ngettext in libc... " >&6; } if ${gt_cv_func_ngettext_libc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { return !ngettext ("","", 1) ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : gt_cv_func_ngettext_libc=yes else gt_cv_func_ngettext_libc=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_ngettext_libc" >&5 $as_echo "$gt_cv_func_ngettext_libc" >&6; } if test "$gt_cv_func_ngettext_libc" = "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in libc" >&5 $as_echo_n "checking for dgettext in libc... " >&6; } if ${gt_cv_func_dgettext_libc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { return !dgettext ("","") ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : gt_cv_func_dgettext_libc=yes else gt_cv_func_dgettext_libc=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_dgettext_libc" >&5 $as_echo "$gt_cv_func_dgettext_libc" >&6; } fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then for ac_func in bind_textdomain_codeset do : ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_BIND_TEXTDOMAIN_CODESET 1 _ACEOF fi done fi # # If we don't have everything we want, check in libintl # if test "$gt_cv_func_dgettext_libc" != "yes" \ || test "$gt_cv_func_ngettext_libc" != "yes" \ || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for bindtextdomain in -lintl" >&5 $as_echo_n "checking for bindtextdomain in -lintl... " >&6; } if ${ac_cv_lib_intl_bindtextdomain+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char bindtextdomain (); int main () { return bindtextdomain (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_bindtextdomain=yes else ac_cv_lib_intl_bindtextdomain=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_bindtextdomain" >&5 $as_echo "$ac_cv_lib_intl_bindtextdomain" >&6; } if test "x$ac_cv_lib_intl_bindtextdomain" = xyes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 $as_echo_n "checking for ngettext in -lintl... " >&6; } if ${ac_cv_lib_intl_ngettext+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char ngettext (); int main () { return ngettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_ngettext=yes else ac_cv_lib_intl_ngettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 $as_echo "$ac_cv_lib_intl_ngettext" >&6; } if test "x$ac_cv_lib_intl_ngettext" = xyes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dgettext in -lintl" >&5 $as_echo_n "checking for dgettext in -lintl... " >&6; } if ${ac_cv_lib_intl_dgettext+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dgettext (); int main () { return dgettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_dgettext=yes else ac_cv_lib_intl_dgettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dgettext" >&5 $as_echo "$ac_cv_lib_intl_dgettext" >&6; } if test "x$ac_cv_lib_intl_dgettext" = xyes; then : gt_cv_func_dgettext_libintl=yes fi fi fi if test "$gt_cv_func_dgettext_libintl" != "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if -liconv is needed to use gettext" >&5 $as_echo_n "checking if -liconv is needed to use gettext... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5 $as_echo "" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngettext in -lintl" >&5 $as_echo_n "checking for ngettext in -lintl... " >&6; } if ${ac_cv_lib_intl_ngettext+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl -liconv $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char ngettext (); int main () { return ngettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_ngettext=yes else ac_cv_lib_intl_ngettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_ngettext" >&5 $as_echo "$ac_cv_lib_intl_ngettext" >&6; } if test "x$ac_cv_lib_intl_ngettext" = xyes; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dcgettext in -lintl" >&5 $as_echo_n "checking for dcgettext in -lintl... " >&6; } if ${ac_cv_lib_intl_dcgettext+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl -liconv $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif char dcgettext (); int main () { return dcgettext (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_intl_dcgettext=yes else ac_cv_lib_intl_dcgettext=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_intl_dcgettext" >&5 $as_echo "$ac_cv_lib_intl_dcgettext" >&6; } if test "x$ac_cv_lib_intl_dcgettext" = xyes; then : gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv else : fi else : fi fi # # If we found libintl, then check in it for bind_textdomain_codeset(); # we'll prefer libc if neither have bind_textdomain_codeset(), # and both have dgettext and ngettext # if test "$gt_cv_func_dgettext_libintl" = "yes" ; then glib_save_LIBS="$LIBS" LIBS="$LIBS -lintl $libintl_extra_libs" unset ac_cv_func_bind_textdomain_codeset for ac_func in bind_textdomain_codeset do : ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_BIND_TEXTDOMAIN_CODESET 1 _ACEOF fi done LIBS="$glib_save_LIBS" if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then gt_cv_func_dgettext_libc=no else if test "$gt_cv_func_dgettext_libc" = "yes" \ && test "$gt_cv_func_ngettext_libc" = "yes"; then gt_cv_func_dgettext_libintl=no fi fi fi fi if test "$gt_cv_func_dgettext_libc" = "yes" \ || test "$gt_cv_func_dgettext_libintl" = "yes"; then gt_cv_have_gettext=yes fi if test "$gt_cv_func_dgettext_libintl" = "yes"; then INTLLIBS="-lintl $libintl_extra_libs" fi if test "$gt_cv_have_gettext" = "yes"; then $as_echo "#define HAVE_GETTEXT 1" >>confdefs.h # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_MSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case "$MSGFMT" in /*) ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"; then ac_cv_path_MSGFMT="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT="no" ;; esac fi MSGFMT="$ac_cv_path_MSGFMT" if test "$MSGFMT" != "no"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 $as_echo "$MSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" for ac_func in dcgettext do : ac_fn_c_check_func "$LINENO" "dcgettext" "ac_cv_func_dcgettext" if test "x$ac_cv_func_dcgettext" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_DCGETTEXT 1 _ACEOF fi done MSGFMT_OPTS= { $as_echo "$as_me:${as_lineno-$LINENO}: checking if msgfmt accepts -c" >&5 $as_echo_n "checking if msgfmt accepts -c... " >&6; } cat >conftest.foo <<_ACEOF msgid "" msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Project-Id-Version: test 1.0\n" "PO-Revision-Date: 2007-02-15 12:01+0100\n" "Last-Translator: test \n" "Language-Team: C \n" "MIME-Version: 1.0\n" "Content-Transfer-Encoding: 8bit\n" _ACEOF if { { $as_echo "$as_me:${as_lineno-$LINENO}: \$MSGFMT -c -o /dev/null conftest.foo"; } >&5 ($MSGFMT -c -o /dev/null conftest.foo) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then MSGFMT_OPTS=-c; { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } echo "$as_me: failed input was:" >&5 sed 's/^/| /' conftest.foo >&5 fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_GMSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case $GMSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" ;; esac fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 $as_echo "$GMSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_XGETTEXT+:} false; then : $as_echo_n "(cached) " >&6 else case "$XGETTEXT" in /*) ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"; then ac_cv_path_XGETTEXT="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" ;; esac fi XGETTEXT="$ac_cv_path_XGETTEXT" if test "$XGETTEXT" != ":"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 $as_echo "$XGETTEXT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : CATOBJEXT=.gmo DATADIRNAME=share else case $host in *-*-solaris*) ac_fn_c_check_func "$LINENO" "bind_textdomain_codeset" "ac_cv_func_bind_textdomain_codeset" if test "x$ac_cv_func_bind_textdomain_codeset" = xyes; then : CATOBJEXT=.gmo DATADIRNAME=share else CATOBJEXT=.mo DATADIRNAME=lib fi ;; *-*-openbsd*) CATOBJEXT=.mo DATADIRNAME=share ;; *) CATOBJEXT=.mo DATADIRNAME=lib ;; esac fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else gt_cv_have_gettext=no fi fi fi if test "$gt_cv_have_gettext" = "yes" ; then $as_echo "#define ENABLE_NLS 1" >>confdefs.h fi if test "$XGETTEXT" != ":"; then if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else { $as_echo "$as_me:${as_lineno-$LINENO}: result: found xgettext program is not GNU xgettext; ignore it" >&5 $as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; } XGETTEXT=":" fi fi # We need to process the po/ directory. POSUB=po ac_config_commands="$ac_config_commands default-1" for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" done if test "$gt_cv_have_gettext" = "yes"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for catalogs to be installed" >&5 $as_echo_n "checking for catalogs to be installed... " >&6; } NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then NEW_LINGUAS="$NEW_LINGUAS $presentlang" fi done LINGUAS=$NEW_LINGUAS { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LINGUAS" >&5 $as_echo "$LINGUAS" >&6; } fi if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi MKINSTALLDIRS= if test -n "$ac_aux_dir"; then MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi test -d po || mkdir po if test "x$srcdir" != "x."; then if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then posrcprefix="$srcdir/" else posrcprefix="../$srcdir/" fi else posrcprefix="../" fi rm -f po/POTFILES sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ < $srcdir/po/POTFILES.in > po/POTFILES glib_save_prefix="$prefix" glib_save_exec_prefix="$exec_prefix" glib_save_datarootdir="$datarootdir" test "x$prefix" = xNONE && prefix=$ac_default_prefix test "x$exec_prefix" = xNONE && exec_prefix=$prefix datarootdir=`eval echo "${datarootdir}"` if test "x$CATOBJEXT" = "x.mo" ; then localedir=`eval echo "${libdir}/locale"` else localedir=`eval echo "${datadir}/locale"` fi prefix="$glib_save_prefix" exec_prefix="$glib_save_exec_prefix" datarootdir="$glib_save_datarootdir" cat >>confdefs.h <<_ACEOF #define PACKAGE_LOCALE_DIR "$localedir" _ACEOF { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5 $as_echo_n "checking whether NLS is requested... " >&6; } # Check whether --enable-nls was given. if test "${enable_nls+set}" = set; then : enableval=$enable_nls; USE_NLS=$enableval else USE_NLS=yes fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 $as_echo "$USE_NLS" >&6; } case "$am__api_version" in 1.01234) as_fn_error $? "Automake 1.5 or newer is required to use intltool" "$LINENO" 5 ;; *) ;; esac INTLTOOL_REQUIRED_VERSION_AS_INT=`echo 0.23 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` if test -n "0.23"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for intltool >= 0.23" >&5 $as_echo_n "checking for intltool >= 0.23... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_APPLIED_VERSION found" >&5 $as_echo "$INTLTOOL_APPLIED_VERSION found" >&6; } test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || as_fn_error $? "Your intltool is too old. You need intltool 0.23 or later." "$LINENO" 5 fi # Extract the first word of "intltool-update", so it can be a program name with args. set dummy intltool-update; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_INTLTOOL_UPDATE+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_UPDATE in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_UPDATE="$INTLTOOL_UPDATE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_INTLTOOL_UPDATE="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_UPDATE=$ac_cv_path_INTLTOOL_UPDATE if test -n "$INTLTOOL_UPDATE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_UPDATE" >&5 $as_echo "$INTLTOOL_UPDATE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "intltool-merge", so it can be a program name with args. set dummy intltool-merge; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_INTLTOOL_MERGE+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_MERGE in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_MERGE="$INTLTOOL_MERGE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_INTLTOOL_MERGE="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_MERGE=$ac_cv_path_INTLTOOL_MERGE if test -n "$INTLTOOL_MERGE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_MERGE" >&5 $as_echo "$INTLTOOL_MERGE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "intltool-extract", so it can be a program name with args. set dummy intltool-extract; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_INTLTOOL_EXTRACT+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_EXTRACT in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_EXTRACT="$INTLTOOL_EXTRACT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_INTLTOOL_EXTRACT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_EXTRACT=$ac_cv_path_INTLTOOL_EXTRACT if test -n "$INTLTOOL_EXTRACT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_EXTRACT" >&5 $as_echo "$INTLTOOL_EXTRACT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then as_fn_error $? "The intltool scripts were not found. Please install intltool." "$LINENO" 5 fi if test -z "$AM_DEFAULT_VERBOSITY"; then AM_DEFAULT_VERBOSITY=1 fi INTLTOOL_V_MERGE='$(INTLTOOL__v_MERGE_$(V))' INTLTOOL__v_MERGE_='$(INTLTOOL__v_MERGE_$(AM_DEFAULT_VERBOSITY))' INTLTOOL__v_MERGE_0='@echo " ITMRG " $@;' INTLTOOL_V_MERGE_OPTIONS='$(intltool__v_merge_options_$(V))' intltool__v_merge_options_='$(intltool__v_merge_options_$(AM_DEFAULT_VERBOSITY))' intltool__v_merge_options_0='-q' INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -p $(top_srcdir)/po $< $@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' if test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge 5000; then INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u --no-translations $< $@' else INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)_it_tmp_dir=tmp.intltool.$$RANDOM && mkdir $$_it_tmp_dir && LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u $$_it_tmp_dir $< $@ && rmdir $$_it_tmp_dir' fi INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' # Check the gettext tools to make sure they are GNU # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_XGETTEXT+:} false; then : $as_echo_n "(cached) " >&6 else case $XGETTEXT in [\\/]* | ?:[\\/]*) ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_XGETTEXT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi XGETTEXT=$ac_cv_path_XGETTEXT if test -n "$XGETTEXT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 $as_echo "$XGETTEXT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "msgmerge", so it can be a program name with args. set dummy msgmerge; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_MSGMERGE+:} false; then : $as_echo_n "(cached) " >&6 else case $MSGMERGE in [\\/]* | ?:[\\/]*) ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_MSGMERGE="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi MSGMERGE=$ac_cv_path_MSGMERGE if test -n "$MSGMERGE"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5 $as_echo "$MSGMERGE" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_MSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case $MSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_MSGFMT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi MSGFMT=$ac_cv_path_MSGFMT if test -n "$MSGFMT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 $as_echo "$MSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_GMSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case $GMSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" ;; esac fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 $as_echo "$GMSGFMT" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5 fi xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then as_fn_error $? "GNU gettext tools not found; required for intltool" "$LINENO" 5 fi # Extract the first word of "perl", so it can be a program name with args. set dummy perl; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_INTLTOOL_PERL+:} false; then : $as_echo_n "(cached) " >&6 else case $INTLTOOL_PERL in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_PERL="$INTLTOOL_PERL" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_INTLTOOL_PERL="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi INTLTOOL_PERL=$ac_cv_path_INTLTOOL_PERL if test -n "$INTLTOOL_PERL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INTLTOOL_PERL" >&5 $as_echo "$INTLTOOL_PERL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -z "$INTLTOOL_PERL"; then as_fn_error $? "perl not found" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for perl >= 5.8.1" >&5 $as_echo_n "checking for perl >= 5.8.1... " >&6; } $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 if test $? -ne 0; then as_fn_error $? "perl 5.8.1 is required for intltool" "$LINENO" 5 else IT_PERL_VERSION=`$INTLTOOL_PERL -e "printf '%vd', $^V"` { $as_echo "$as_me:${as_lineno-$LINENO}: result: $IT_PERL_VERSION" >&5 $as_echo "$IT_PERL_VERSION" >&6; } fi if test "x" != "xno-xml"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XML::Parser" >&5 $as_echo_n "checking for XML::Parser... " >&6; } if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 $as_echo "ok" >&6; } else as_fn_error $? "XML::Parser perl module is required for intltool" "$LINENO" 5 fi fi # Substitute ALL_LINGUAS so we can use it in po/Makefile # required versions GNUTLS_REQUIRED=2.0 GNUTLS_ADVANCED_FEATURES_MINIMUM_VERSION=2.7.4 SQLITE_REQUIRED=3.0 GLIB_REQUIRED=2.6.0 GCONF_REQUIRED=2.0 GTK_REQUIRED=2.12.0 ISO_CODES_REQUIRED=0.35 # check for sqlite if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_path_PKG_CONFIG"; then ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 $as_echo "$ac_pt_PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_pt_PKG_CONFIG" = x; then PKG_CONFIG="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac PKG_CONFIG=$ac_pt_PKG_CONFIG fi else PKG_CONFIG="$ac_cv_path_PKG_CONFIG" fi fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.9.0 { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 $as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } PKG_CONFIG="" fi fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SQLITE" >&5 $as_echo_n "checking for SQLITE... " >&6; } if test -n "$SQLITE_CFLAGS"; then pkg_cv_SQLITE_CFLAGS="$SQLITE_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sqlite3 >= \$SQLITE_REQUIRED\""; } >&5 ($PKG_CONFIG --exists --print-errors "sqlite3 >= $SQLITE_REQUIRED") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_SQLITE_CFLAGS=`$PKG_CONFIG --cflags "sqlite3 >= $SQLITE_REQUIRED" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$SQLITE_LIBS"; then pkg_cv_SQLITE_LIBS="$SQLITE_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sqlite3 >= \$SQLITE_REQUIRED\""; } >&5 ($PKG_CONFIG --exists --print-errors "sqlite3 >= $SQLITE_REQUIRED") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_SQLITE_LIBS=`$PKG_CONFIG --libs "sqlite3 >= $SQLITE_REQUIRED" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then SQLITE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "sqlite3 >= $SQLITE_REQUIRED" 2>&1` else SQLITE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "sqlite3 >= $SQLITE_REQUIRED" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$SQLITE_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (sqlite3 >= $SQLITE_REQUIRED) were not met: $SQLITE_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables SQLITE_CFLAGS and SQLITE_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables SQLITE_CFLAGS and SQLITE_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else SQLITE_CFLAGS=$pkg_cv_SQLITE_CFLAGS SQLITE_LIBS=$pkg_cv_SQLITE_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi # check for libgcrypt gcrypt=0 # Check whether --with-libgcrypt-prefix was given. if test "${with_libgcrypt_prefix+set}" = set; then : withval=$with_libgcrypt_prefix; libgcrypt_config_prefix="$withval" else libgcrypt_config_prefix="" fi if test x$libgcrypt_config_prefix != x ; then if test x${LIBGCRYPT_CONFIG+set} != xset ; then LIBGCRYPT_CONFIG=$libgcrypt_config_prefix/bin/libgcrypt-config fi fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}libgcrypt-config", so it can be a program name with args. set dummy ${ac_tool_prefix}libgcrypt-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_LIBGCRYPT_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $LIBGCRYPT_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_LIBGCRYPT_CONFIG="$LIBGCRYPT_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_LIBGCRYPT_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi LIBGCRYPT_CONFIG=$ac_cv_path_LIBGCRYPT_CONFIG if test -n "$LIBGCRYPT_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBGCRYPT_CONFIG" >&5 $as_echo "$LIBGCRYPT_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_path_LIBGCRYPT_CONFIG"; then ac_pt_LIBGCRYPT_CONFIG=$LIBGCRYPT_CONFIG # Extract the first word of "libgcrypt-config", so it can be a program name with args. set dummy libgcrypt-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_ac_pt_LIBGCRYPT_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_LIBGCRYPT_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_LIBGCRYPT_CONFIG="$ac_pt_LIBGCRYPT_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_LIBGCRYPT_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS ;; esac fi ac_pt_LIBGCRYPT_CONFIG=$ac_cv_path_ac_pt_LIBGCRYPT_CONFIG if test -n "$ac_pt_LIBGCRYPT_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_LIBGCRYPT_CONFIG" >&5 $as_echo "$ac_pt_LIBGCRYPT_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_pt_LIBGCRYPT_CONFIG" = x; then LIBGCRYPT_CONFIG="no" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac LIBGCRYPT_CONFIG=$ac_pt_LIBGCRYPT_CONFIG fi else LIBGCRYPT_CONFIG="$ac_cv_path_LIBGCRYPT_CONFIG" fi tmp=1.2.0 if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then req_libgcrypt_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` min_libgcrypt_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'` else req_libgcrypt_api=0 min_libgcrypt_version="$tmp" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBGCRYPT - version >= $min_libgcrypt_version" >&5 $as_echo_n "checking for LIBGCRYPT - version >= $min_libgcrypt_version... " >&6; } ok=no if test "$LIBGCRYPT_CONFIG" != "no" ; then req_major=`echo $min_libgcrypt_version | \ sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\1/'` req_minor=`echo $min_libgcrypt_version | \ sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\2/'` req_micro=`echo $min_libgcrypt_version | \ sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\3/'` libgcrypt_config_version=`$LIBGCRYPT_CONFIG --version` major=`echo $libgcrypt_config_version | \ sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1/'` minor=`echo $libgcrypt_config_version | \ sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\2/'` micro=`echo $libgcrypt_config_version | \ sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\3/'` if test "$major" -gt "$req_major"; then ok=yes else if test "$major" -eq "$req_major"; then if test "$minor" -gt "$req_minor"; then ok=yes else if test "$minor" -eq "$req_minor"; then if test "$micro" -ge "$req_micro"; then ok=yes fi fi fi fi fi fi if test $ok = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes ($libgcrypt_config_version)" >&5 $as_echo "yes ($libgcrypt_config_version)" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test $ok = yes; then # If we have a recent libgcrypt, we should also check that the # API is compatible if test "$req_libgcrypt_api" -gt 0 ; then tmp=`$LIBGCRYPT_CONFIG --api-version 2>/dev/null || echo 0` if test "$tmp" -gt 0 ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking LIBGCRYPT API version" >&5 $as_echo_n "checking LIBGCRYPT API version... " >&6; } if test "$req_libgcrypt_api" -eq "$tmp" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: okay" >&5 $as_echo "okay" >&6; } else ok=no { $as_echo "$as_me:${as_lineno-$LINENO}: result: does not match. want=$req_libgcrypt_api got=$tmp" >&5 $as_echo "does not match. want=$req_libgcrypt_api got=$tmp" >&6; } fi fi fi fi if test $ok = yes; then LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags` LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs` gcrypt=1 libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none` if test x"$libgcrypt_config_host" != xnone ; then if test x"$libgcrypt_config_host" != x"$host" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** *** The config script $LIBGCRYPT_CONFIG was *** built for $libgcrypt_config_host and thus may not match the *** used host $host. *** You may want to use the configure option --with-libgcrypt-prefix *** to specify a matching config script. ***" >&5 $as_echo "$as_me: WARNING: *** *** The config script $LIBGCRYPT_CONFIG was *** built for $libgcrypt_config_host and thus may not match the *** used host $host. *** You may want to use the configure option --with-libgcrypt-prefix *** to specify a matching config script. ***" >&2;} fi fi else LIBGCRYPT_CFLAGS="" LIBGCRYPT_LIBS="" : fi if test $gcrypt = 0 then as_fn_error $? "gnoMint needs libgcrypt" "$LINENO" 5 fi pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNOMINT" >&5 $as_echo_n "checking for GNOMINT... " >&6; } if test -n "$GNOMINT_CFLAGS"; then pkg_cv_GNOMINT_CFLAGS="$GNOMINT_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQUIRED \\ gthread-2.0 >= \$GLIB_REQUIRED \\ gconf-2.0 >= \$GCONF_REQUIRED \\ gtk+-2.0 >= \$GTK_REQUIRED \\ gdk-pixbuf-2.0 \\ gnutls >= \$GNUTLS_REQUIRED \\ \""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQUIRED \ gthread-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gtk+-2.0 >= $GTK_REQUIRED \ gdk-pixbuf-2.0 \ gnutls >= $GNUTLS_REQUIRED \ ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GNOMINT_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= $GLIB_REQUIRED \ gthread-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gtk+-2.0 >= $GTK_REQUIRED \ gdk-pixbuf-2.0 \ gnutls >= $GNUTLS_REQUIRED \ " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GNOMINT_LIBS"; then pkg_cv_GNOMINT_LIBS="$GNOMINT_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQUIRED \\ gthread-2.0 >= \$GLIB_REQUIRED \\ gconf-2.0 >= \$GCONF_REQUIRED \\ gtk+-2.0 >= \$GTK_REQUIRED \\ gdk-pixbuf-2.0 \\ gnutls >= \$GNUTLS_REQUIRED \\ \""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQUIRED \ gthread-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gtk+-2.0 >= $GTK_REQUIRED \ gdk-pixbuf-2.0 \ gnutls >= $GNUTLS_REQUIRED \ ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GNOMINT_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= $GLIB_REQUIRED \ gthread-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gtk+-2.0 >= $GTK_REQUIRED \ gdk-pixbuf-2.0 \ gnutls >= $GNUTLS_REQUIRED \ " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GNOMINT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "glib-2.0 >= $GLIB_REQUIRED \ gthread-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gtk+-2.0 >= $GTK_REQUIRED \ gdk-pixbuf-2.0 \ gnutls >= $GNUTLS_REQUIRED \ " 2>&1` else GNOMINT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "glib-2.0 >= $GLIB_REQUIRED \ gthread-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gtk+-2.0 >= $GTK_REQUIRED \ gdk-pixbuf-2.0 \ gnutls >= $GNUTLS_REQUIRED \ " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GNOMINT_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (glib-2.0 >= $GLIB_REQUIRED \ gthread-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gtk+-2.0 >= $GTK_REQUIRED \ gdk-pixbuf-2.0 \ gnutls >= $GNUTLS_REQUIRED \ ) were not met: $GNOMINT_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GNOMINT_CFLAGS and GNOMINT_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables GNOMINT_CFLAGS and GNOMINT_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else GNOMINT_CFLAGS=$pkg_cv_GNOMINT_CFLAGS GNOMINT_LIBS=$pkg_cv_GNOMINT_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi ####################### # Check for readline. ######################## ac_fn_c_check_header_mongrel "$LINENO" "readline/readline.h" "ac_cv_header_readline_readline_h" "$ac_includes_default" if test "x$ac_cv_header_readline_readline_h" = xyes; then : readline_found=true else as_fn_error $? "libreadline is needed for compiling gnoMint." "$LINENO" 5 fi old_LIBS=$LIBS LIBS="-lreadline" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : READLINE_LIBS="-lreadline" else LIBS="$LIBS -ltermcap" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : READLINE_LIBS="-lreadline -ltermcap" else as_fn_error $? "Cannot figure out how to link with the readline library; see config.log for more information" "$LINENO" 5 fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$old_LIBS pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNOMINTCLI" >&5 $as_echo_n "checking for GNOMINTCLI... " >&6; } if test -n "$GNOMINTCLI_CFLAGS"; then pkg_cv_GNOMINTCLI_CFLAGS="$GNOMINTCLI_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQUIRED \\ gconf-2.0 >= \$GCONF_REQUIRED \\ gnutls >= \$GNUTLS_REQUIRED \\ \""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gnutls >= $GNUTLS_REQUIRED \ ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GNOMINTCLI_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gnutls >= $GNUTLS_REQUIRED \ " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test -n "$GNOMINTCLI_LIBS"; then pkg_cv_GNOMINTCLI_LIBS="$GNOMINTCLI_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQUIRED \\ gconf-2.0 >= \$GCONF_REQUIRED \\ gnutls >= \$GNUTLS_REQUIRED \\ \""; } >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gnutls >= $GNUTLS_REQUIRED \ ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_GNOMINTCLI_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gnutls >= $GNUTLS_REQUIRED \ " 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi else pkg_failed=untried fi if test $pkg_failed = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then GNOMINTCLI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "glib-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gnutls >= $GNUTLS_REQUIRED \ " 2>&1` else GNOMINTCLI_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "glib-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gnutls >= $GNUTLS_REQUIRED \ " 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GNOMINTCLI_PKG_ERRORS" >&5 as_fn_error $? "Package requirements (glib-2.0 >= $GLIB_REQUIRED \ gconf-2.0 >= $GCONF_REQUIRED \ gnutls >= $GNUTLS_REQUIRED \ ) were not met: $GNOMINTCLI_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GNOMINTCLI_CFLAGS and GNOMINTCLI_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables GNOMINTCLI_CFLAGS and GNOMINTCLI_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else GNOMINTCLI_CFLAGS=$pkg_cv_GNOMINTCLI_CFLAGS GNOMINTCLI_LIBS=$pkg_cv_GNOMINTCLI_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gnutls >= $GNUTLS_ADVANCED_FEATURES_MINIMUM_VERSION (for advanced features)" >&5 $as_echo_n "checking whether gnutls >= $GNUTLS_ADVANCED_FEATURES_MINIMUM_VERSION (for advanced features)... " >&6; } if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gnutls >= \$GNUTLS_ADVANCED_FEATURES_MINIMUM_VERSION\""; } >&5 ($PKG_CONFIG --exists --print-errors "gnutls >= $GNUTLS_ADVANCED_FEATURES_MINIMUM_VERSION") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then have_advanced_gnutls=yes else have_advanced_gnutls=no fi if test "x$have_advanced_gnutls" = "xyes"; then cat >>confdefs.h <<_ACEOF #define ADVANCED_GNUTLS "yes" _ACEOF { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test -n "$PKG_CONFIG" && \ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"iso-codes >= \$ISO_CODES_REQUIRED\""; } >&5 ($PKG_CONFIG --exists --print-errors "iso-codes >= $ISO_CODES_REQUIRED") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then have_iso_codes=yes else have_iso_codes=no fi if test "x$have_iso_codes" = "xyes"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether iso-codes has iso-639 and iso-3166 domains" >&5 $as_echo_n "checking whether iso-codes has iso-639 and iso-3166 domains... " >&6; } if $PKG_CONFIG --variable=domains iso-codes | grep 639 > /dev/null && \ $PKG_CONFIG --variable=domains iso-codes | grep 3166 > /dev/null ; then result=yes else result=no have_iso_codes=no fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result" >&5 $as_echo "$result" >&6; } fi GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0` if false; then GCONF_SCHEMAS_INSTALL_TRUE= GCONF_SCHEMAS_INSTALL_FALSE='#' else GCONF_SCHEMAS_INSTALL_TRUE='#' GCONF_SCHEMAS_INSTALL_FALSE= fi GCONFTOOL="" # Extract the first word of "gconftool-2", so it can be a program name with args. set dummy gconftool-2; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_GCONFTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$GCONFTOOL"; then ac_cv_prog_GCONFTOOL="$GCONFTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_GCONFTOOL="gconftool-2" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi GCONFTOOL=$ac_cv_prog_GCONFTOOL if test -n "$GCONFTOOL"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GCONFTOOL" >&5 $as_echo "$GCONFTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test x"$GCONFTOOL" = x; then as_fn_error $? "gconftool-2 executable not found in your path - should be installed with GConf" "$LINENO" 5 fi if test "x$GCONF_SCHEMA_INSTALL_SOURCE" = "x"; then GCONF_SCHEMA_CONFIG_SOURCE=`gconftool-2 --get-default-source` else GCONF_SCHEMA_CONFIG_SOURCE=$GCONF_SCHEMA_INSTALL_SOURCE fi # Check whether --with-gconf-source was given. if test "${with_gconf_source+set}" = set; then : withval=$with_gconf_source; GCONF_SCHEMA_CONFIG_SOURCE="$withval" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation" >&5 $as_echo "Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation" >&6; } if test "x$GCONF_SCHEMA_FILE_DIR" = "x"; then GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas' fi # Check whether --with-gconf-schema-file-dir was given. if test "${with_gconf_schema_file_dir+set}" = set; then : withval=$with_gconf_schema_file_dir; GCONF_SCHEMA_FILE_DIR="$withval" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files" >&5 $as_echo "Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files" >&6; } # Check whether --enable-schemas-install was given. if test "${enable_schemas_install+set}" = set; then : enableval=$enable_schemas_install; case ${enableval} in yes|no) ;; *) as_fn_error $? "bad value ${enableval} for --enable-schemas-install" "$LINENO" 5 ;; esac fi if test "$enable_schemas_install" != no; then GCONF_SCHEMAS_INSTALL_TRUE= GCONF_SCHEMAS_INSTALL_FALSE='#' else GCONF_SCHEMAS_INSTALL_TRUE='#' GCONF_SCHEMAS_INSTALL_FALSE= fi # Check whether --enable-debug was given. if test "${enable_debug+set}" = set; then : enableval=$enable_debug; use_debug="Yes"; $as_echo "#define debug 1" >>confdefs.h else use_debug="No" fi # Check whether --enable-debug-signal was given. if test "${enable_debug_signal+set}" = set; then : enableval=$enable_debug_signal; use_debug_sig="Yes"; $as_echo "#define debug_signal 1" >>confdefs.h else use_debug_sig="No" fi if test "x$GCC" = "xyes"; then CFLAGS="-Wall -Werror " if test "x$use_debug" = "xYes"; then CFLAGS="$CFLAGS -g -O0" fi fi ac_config_files="$ac_config_files Makefile src/Makefile m4/Makefile gui/Makefile po/Makefile.in mime/Makefile gconf/Makefile gnomint.spec" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs, see configure's option --config-cache. # It is not useful on other systems. If it contains results you don't # want to keep, you may remove or edit it. # # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # # `ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* `ac_cv_foo' will be assigned the # following values. _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. # So, we kill variables containing newlines. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. ( for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space=' '; set) 2>&1` in #( *${as_nl}ac_space=\ *) # `set' does not quote correctly, so add quotes: double-quote # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; #( *) # `set' quotes correctly as required by POSIX, so do not add quotes. sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) | sed ' /^ac_cv_env_/b end t clear :clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ :end' >>confcache if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then if test "x$cache_file" != "x/dev/null"; then { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} if test ! -f "$cache_file" || test -h "$cache_file"; then cat confcache >"$cache_file" else case $cache_file in #( */* | ?:*) mv -f confcache "$cache_file"$$ && mv -f "$cache_file"$$ "$cache_file" ;; #( *) mv -f confcache "$cache_file" ;; esac fi fi else { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' # Transform confdefs.h into DEFS. # Protect against shell expansion while executing Makefile rules. # Protect against Makefile macro expansion. # # If the first sed substitution is executed (which looks for macros that # take arguments), then branch to the quote section. Otherwise, # look for a macro that doesn't take arguments. ac_script=' :mline /\\$/{ N s,\\\n,, b mline } t clear :clear s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g t quote s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g t quote b any :quote s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g s/\[/\\&/g s/\]/\\&/g s/\$/$$/g H :any ${ g s/^\n// s/\n/ /g p } ' DEFS=`sed -n "$ac_script" confdefs.h` ac_libobjs= ac_ltlibobjs= U= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' ac_i=`$as_echo "$ac_i" | sed "$ac_script"` # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR # will be set to the directory where LIBOBJS objects are built. as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs { $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 $as_echo_n "checking that generated files are newer than configure... " >&6; } if test -n "$am_sleep_pid"; then # Hide warnings about reused PIDs. wait $am_sleep_pid 2>/dev/null fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5 $as_echo "done" >&6; } if test -n "$EXEEXT"; then am__EXEEXT_TRUE= am__EXEEXT_FALSE='#' else am__EXEEXT_TRUE='#' am__EXEEXT_FALSE= fi if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then as_fn_error $? "conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi ac_config_commands="$ac_config_commands po/stamp-it" if test -z "${GCONF_SCHEMAS_INSTALL_TRUE}" && test -z "${GCONF_SCHEMAS_INSTALL_FALSE}"; then as_fn_error $? "conditional \"GCONF_SCHEMAS_INSTALL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${GCONF_SCHEMAS_INSTALL_TRUE}" && test -z "${GCONF_SCHEMAS_INSTALL_FALSE}"; then as_fn_error $? "conditional \"GCONF_SCHEMAS_INSTALL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} as_write_fail=0 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} export SHELL _ASEOF cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with STATUS, using 1 if that was 0. as_fn_error () { as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi $as_echo "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -pR' fi else as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi # as_fn_executable_p FILE # ----------------------- # Test if FILE is an executable regular file. as_fn_executable_p () { test -f "$1" && test -x "$1" } # as_fn_executable_p as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" exec 6>&1 ## ----------------------------------- ## ## Main body of $CONFIG_STATUS script. ## ## ----------------------------------- ## _ASEOF test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" This file was extended by gnoMint $as_me 1.3.0, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS CONFIG_LINKS = $CONFIG_LINKS CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ on `(hostname || uname -n) 2>/dev/null | sed 1q` " _ACEOF case $ac_config_files in *" "*) set x $ac_config_files; shift; ac_config_files=$*;; esac cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # Files that config.status was made for. config_files="$ac_config_files" config_commands="$ac_config_commands" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ \`$as_me' instantiates files and other configuration actions from templates according to the current configuration. Unless the files and actions are specified as TAGs, all are instantiated by default. Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit --config print configuration, then exit -q, --quiet, --silent do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE Configuration files: $config_files Configuration commands: $config_commands Report bugs to <>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ gnoMint config.status 1.3.0 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" Copyright (C) 2012 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." ac_pwd='$ac_pwd' srcdir='$srcdir' INSTALL='$INSTALL' MKDIR_P='$MKDIR_P' AWK='$AWK' test -n "\$AWK" || AWK=awk _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # The default lists apply if the user does not specify any file. ac_need_defaults=: while test $# != 0 do case $1 in --*=?*) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` ac_shift=: ;; --*=) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg= ac_shift=: ;; *) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; esac case $ac_option in # Handling of the options. -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) $as_echo "$ac_cs_version"; exit ;; --config | --confi | --conf | --con | --co | --c ) $as_echo "$ac_cs_config"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; '') as_fn_error $? "missing file argument" ;; esac as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --he | --h | --help | --hel | -h ) $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. -*) as_fn_error $? "unrecognized option: \`$1' Try \`$0 --help' for more information." ;; *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; esac shift done ac_configure_extra_args= if $ac_cs_silent; then exec 6>/dev/null ac_configure_extra_args="$ac_configure_extra_args --silent" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 if \$ac_cs_recheck; then set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion shift \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 CONFIG_SHELL='$SHELL' export CONFIG_SHELL exec "\$@" fi _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX $as_echo "$ac_log" } >&5 _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # # INIT-COMMANDS # AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH sed_quote_subst='$sed_quote_subst' double_quote_subst='$double_quote_subst' delay_variable_subst='$delay_variable_subst' enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`' macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`' macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`' enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`' host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`' host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`' build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`' build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`' build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`' SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`' Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`' GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`' EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`' FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`' LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`' NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`' LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`' max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`' ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`' exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`' lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`' lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`' lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`' lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`' lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`' reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`' reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`' OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`' deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`' file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`' file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`' want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`' DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`' sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`' AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`' AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`' archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`' STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`' RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`' old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`' old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`' old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`' lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`' CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`' CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`' compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`' lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`' need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`' MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`' DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`' NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`' LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`' OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`' OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`' libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`' shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`' extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`' archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`' enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`' export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`' whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`' compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`' old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`' old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`' archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`' archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`' module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`' module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`' with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`' allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`' no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`' hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`' hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`' hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`' hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`' hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`' hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`' hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`' inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`' link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`' always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`' export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`' exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`' include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`' prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`' postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`' file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`' variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`' need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`' need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`' version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`' runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`' shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`' shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`' libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`' library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`' soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`' install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`' postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`' postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`' finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`' finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $SED "$delay_single_quote_subst"`' hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`' old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`' striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`' LTCC='$LTCC' LTCFLAGS='$LTCFLAGS' compiler='$compiler_DEFAULT' # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF \$1 _LTECHO_EOF' } # Quote evaled strings. for var in SHELL \ ECHO \ PATH_SEPARATOR \ SED \ GREP \ EGREP \ FGREP \ LD \ NM \ LN_S \ lt_SP2NL \ lt_NL2SP \ reload_flag \ OBJDUMP \ deplibs_check_method \ file_magic_cmd \ file_magic_glob \ want_nocaseglob \ DLLTOOL \ sharedlib_from_linklib_cmd \ AR \ AR_FLAGS \ archiver_list_spec \ STRIP \ RANLIB \ CC \ CFLAGS \ compiler \ lt_cv_sys_global_symbol_pipe \ lt_cv_sys_global_symbol_to_cdecl \ lt_cv_sys_global_symbol_to_c_name_address \ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ nm_file_list_spec \ lt_prog_compiler_no_builtin_flag \ lt_prog_compiler_pic \ lt_prog_compiler_wl \ lt_prog_compiler_static \ lt_cv_prog_compiler_c_o \ need_locks \ MANIFEST_TOOL \ DSYMUTIL \ NMEDIT \ LIPO \ OTOOL \ OTOOL64 \ shrext_cmds \ export_dynamic_flag_spec \ whole_archive_flag_spec \ compiler_needs_object \ with_gnu_ld \ allow_undefined_flag \ no_undefined_flag \ hardcode_libdir_flag_spec \ hardcode_libdir_separator \ exclude_expsyms \ include_expsyms \ file_list_spec \ variables_saved_for_relink \ libname_spec \ library_names_spec \ soname_spec \ install_override_mode \ finish_eval \ old_striplib \ striplib; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Double-quote double-evaled strings. for var in reload_cmds \ old_postinstall_cmds \ old_postuninstall_cmds \ old_archive_cmds \ extract_expsyms_cmds \ old_archive_from_new_cmds \ old_archive_from_expsyms_cmds \ archive_cmds \ archive_expsym_cmds \ module_cmds \ module_expsym_cmds \ export_symbols_cmds \ prelink_cmds \ postlink_cmds \ postinstall_cmds \ postuninstall_cmds \ finish_cmds \ sys_lib_search_path_spec \ sys_lib_dlsearch_path_spec; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done ac_aux_dir='$ac_aux_dir' xsi_shell='$xsi_shell' lt_shell_append='$lt_shell_append' # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes INIT. if test -n "\${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi PACKAGE='$PACKAGE' VERSION='$VERSION' TIMESTAMP='$TIMESTAMP' RM='$RM' ofile='$ofile' _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Handling of arguments. for ac_config_target in $ac_config_targets do case $ac_config_target in "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "m4/Makefile") CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;; "gui/Makefile") CONFIG_FILES="$CONFIG_FILES gui/Makefile" ;; "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "mime/Makefile") CONFIG_FILES="$CONFIG_FILES mime/Makefile" ;; "gconf/Makefile") CONFIG_FILES="$CONFIG_FILES gconf/Makefile" ;; "gnomint.spec") CONFIG_FILES="$CONFIG_FILES gnomint.spec" ;; "po/stamp-it") CONFIG_COMMANDS="$CONFIG_COMMANDS po/stamp-it" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands fi # Have a temporary directory for convenience. Make it in the build tree # simply because there is no reason against having it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. # Hook for its removal unless debugging. # Note that there is a small window in which the directory will not be cleaned: # after its creation but before its name has been assigned to `$tmp'. $debug || { tmp= ac_tmp= trap 'exit_status=$? : "${ac_tmp:=$tmp}" { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status ' 0 trap 'as_fn_exit 1' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && test -d "$tmp" } || { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 ac_tmp=$tmp # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. # This happens for instance with `./config.status config.h'. if test -n "$CONFIG_FILES"; then ac_cr=`echo X | tr X '\015'` # On cygwin, bash can eat \r inside `` if the user requested igncr. # But we know of no other shell where ac_cr would be empty at this # point, so we can use a bashism as a fallback. if test "x$ac_cr" = x; then eval ac_cr=\$\'\\r\' fi ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then ac_cs_awk_cr='\\r' else ac_cs_awk_cr=$ac_cr fi echo 'BEGIN {' >"$ac_tmp/subs1.awk" && _ACEOF { echo "cat >conf$$subs.awk <<_ACEOF" && echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && echo "_ACEOF" } >conf$$subs.sh || as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do . ./conf$$subs.sh || as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done rm -f conf$$subs.sh cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && _ACEOF sed -n ' h s/^/S["/; s/!.*/"]=/ p g s/^[^!]*!// :repl t repl s/'"$ac_delim"'$// t delim :nl h s/\(.\{148\}\)..*/\1/ t more1 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ p n b repl :more1 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t nl :delim h s/\(.\{148\}\)..*/\1/ t more2 s/["\\]/\\&/g; s/^/"/; s/$/"/ p b :more2 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t delim ' >$CONFIG_STATUS || ac_write_fail=1 rm -f conf$$subs.awk cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 _ACAWK cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && for (key in S) S_is_set[key] = 1 FS = "" } { line = $ 0 nfields = split(line, field, "@") substed = 0 len = length(field[1]) for (i = 2; i < nfields; i++) { key = field[i] keylen = length(key) if (S_is_set[key]) { value = S[key] line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) len += length(value) + length(field[++i]) substed = 1 } else len += 1 + keylen } print line } _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" else cat fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 _ACEOF # VPATH may cause trouble with some makes, so we remove sole $(srcdir), # ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ h s/// s/^/:/ s/[ ]*$/:/ s/:\$(srcdir):/:/g s/:\${srcdir}:/:/g s/:@srcdir@:/:/g s/^:*// s/:*$// x s/\(=[ ]*\).*/\1/ G s/\n// s/^[^=]*=[ ]*$// }' fi cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 fi # test -n "$CONFIG_FILES" eval set X " :F $CONFIG_FILES :C $CONFIG_COMMANDS" shift for ac_tag do case $ac_tag in :[FHLC]) ac_mode=$ac_tag; continue;; esac case $ac_mode$ac_tag in :[FHL]*:*);; :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac ac_save_IFS=$IFS IFS=: set x $ac_tag IFS=$ac_save_IFS shift ac_file=$1 shift case $ac_mode in :L) ac_source=$1;; :[FH]) ac_file_inputs= for ac_f do case $ac_f in -) ac_f="$ac_tmp/stdin";; *) # Look for the file first in the build tree, then in the source tree # (if the path is not absolute). The absolute path cannot be DOS-style, # because $ac_f cannot contain `:'. test -f "$ac_f" || case $ac_f in [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac as_fn_append ac_file_inputs " '$ac_f'" done # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ configure_input='Generated from '` $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 $as_echo "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. case $configure_input in #( *\&* | *\|* | *\\* ) ac_sed_conf_input=`$as_echo "$configure_input" | sed 's/[\\\\&|]/\\\\&/g'`;; #( *) ac_sed_conf_input=$configure_input;; esac case $ac_tag in *:-:* | *:-) cat >"$ac_tmp/stdin" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac ac_dir=`$as_dirname -- "$ac_file" || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix case $ac_mode in :F) # # CONFIG_FILE # case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac ac_MKDIR_P=$MKDIR_P case $MKDIR_P in [\\/$]* | ?:[\\/]* ) ;; */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; esac _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # If the template does not know about datarootdir, expand it. # FIXME: This hack should be removed a few years after 2.60. ac_datarootdir_hack=; ac_datarootdir_seen= ac_sed_dataroot=' /datarootdir/ { p q } /@datadir@/p /@docdir@/p /@infodir@/p /@localedir@/p /@mandir@/p' case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_datarootdir_hack=' s&@datadir@&$datadir&g s&@docdir@&$docdir&g s&@infodir@&$infodir&g s&@localedir@&$localedir&g s&@mandir@&$mandir&g s&\\\${datarootdir}&$datarootdir&g' ;; esac _ACEOF # Neutralize VPATH when `$srcdir' = `.'. # Shell code in configure.ac might set extrasub. # FIXME: do we really want to maintain this feature? cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_sed_extra="$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s|@configure_input@|$ac_sed_conf_input|;t t s&@top_builddir@&$ac_top_builddir_sub&;t t s&@top_build_prefix@&$ac_top_build_prefix&;t t s&@srcdir@&$ac_srcdir&;t t s&@abs_srcdir@&$ac_abs_srcdir&;t t s&@top_srcdir@&$ac_top_srcdir&;t t s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t s&@builddir@&$ac_builddir&;t t s&@abs_builddir@&$ac_abs_builddir&;t t s&@abs_top_builddir@&$ac_abs_top_builddir&;t t s&@INSTALL@&$ac_INSTALL&;t t s&@MKDIR_P@&$ac_MKDIR_P&;t t $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ "$ac_tmp/out"`; test -z "$ac_out"; } && { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&5 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&2;} rm -f "$ac_tmp/stdin" case $ac_file in -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; esac \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 $as_echo "$as_me: executing $ac_file commands" >&6;} ;; esac case $ac_file$ac_mode in "depfiles":C) test x"$AMDEP_TRUE" != x"" || { # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. case $CONFIG_FILES in *\'*) eval set x "$CONFIG_FILES" ;; *) set x $CONFIG_FILES ;; esac shift for mf do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named 'Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # Grep'ing the whole file is not good either: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ X"$mf" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running 'make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "$am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ X"$file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir=$dirpart/$fdir; as_fn_mkdir_p # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done } ;; "libtool":C) # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes. if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi cfgfile="${ofile}T" trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. # Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2008, 2009, 2010, 2011 Free Software # Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is part of GNU Libtool. # # GNU Libtool is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation; either version 2 of # the License, or (at your option) any later version. # # As a special exception to the GNU General Public License, # if you distribute this file as part of a program or library that # is built using GNU Libtool, you may include this file under the # same distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Libtool; see the file COPYING. If not, a copy # can be downloaded from http://www.gnu.org/licenses/gpl.html, or # obtained by writing to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # The names of the tagged configurations supported by this script. available_tags="" # ### BEGIN LIBTOOL CONFIG # Whether or not to build static libraries. build_old_libs=$enable_static # Which release of libtool.m4 was used? macro_version=$macro_version macro_revision=$macro_revision # Whether or not to build shared libraries. build_libtool_libs=$enable_shared # What type of objects to build. pic_mode=$pic_mode # Whether or not to optimize for fast installation. fast_install=$enable_fast_install # Shell to use when invoking shell scripts. SHELL=$lt_SHELL # An echo program that protects backslashes. ECHO=$lt_ECHO # The PATH separator for the build system. PATH_SEPARATOR=$lt_PATH_SEPARATOR # The host system. host_alias=$host_alias host=$host host_os=$host_os # The build system. build_alias=$build_alias build=$build build_os=$build_os # A sed program that does not truncate output. SED=$lt_SED # Sed that helps us avoid accidentally triggering echo(1) options like -n. Xsed="\$SED -e 1s/^X//" # A grep program that handles long lines. GREP=$lt_GREP # An ERE matcher. EGREP=$lt_EGREP # A literal string matcher. FGREP=$lt_FGREP # A BSD- or MS-compatible name lister. NM=$lt_NM # Whether we need soft or hard links. LN_S=$lt_LN_S # What is the maximum length of a command? max_cmd_len=$max_cmd_len # Object file suffix (normally "o"). objext=$ac_objext # Executable file suffix (normally ""). exeext=$exeext # whether the shell understands "unset". lt_unset=$lt_unset # turn spaces into newlines. SP2NL=$lt_lt_SP2NL # turn newlines into spaces. NL2SP=$lt_lt_NL2SP # convert \$build file names to \$host format. to_host_file_cmd=$lt_cv_to_host_file_cmd # convert \$build files to toolchain format. to_tool_file_cmd=$lt_cv_to_tool_file_cmd # An object symbol dumper. OBJDUMP=$lt_OBJDUMP # Method to check whether dependent libraries are shared objects. deplibs_check_method=$lt_deplibs_check_method # Command to use when deplibs_check_method = "file_magic". file_magic_cmd=$lt_file_magic_cmd # How to find potential files when deplibs_check_method = "file_magic". file_magic_glob=$lt_file_magic_glob # Find potential files using nocaseglob when deplibs_check_method = "file_magic". want_nocaseglob=$lt_want_nocaseglob # DLL creation program. DLLTOOL=$lt_DLLTOOL # Command to associate shared and link libraries. sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd # The archiver. AR=$lt_AR # Flags to create an archive. AR_FLAGS=$lt_AR_FLAGS # How to feed a file listing to the archiver. archiver_list_spec=$lt_archiver_list_spec # A symbol stripping program. STRIP=$lt_STRIP # Commands used to install an old-style archive. RANLIB=$lt_RANLIB old_postinstall_cmds=$lt_old_postinstall_cmds old_postuninstall_cmds=$lt_old_postuninstall_cmds # Whether to use a lock for old archive extraction. lock_old_archive_extraction=$lock_old_archive_extraction # A C compiler. LTCC=$lt_CC # LTCC compiler flags. LTCFLAGS=$lt_CFLAGS # Take the output of nm and produce a listing of raw symbols and C names. global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe # Transform the output of nm in a proper C declaration. global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl # Transform the output of nm in a C name address pair. global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address # Transform the output of nm in a C name address pair when lib prefix is needed. global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix # Specify filename containing input files for \$NM. nm_file_list_spec=$lt_nm_file_list_spec # The root where to search for dependent libraries,and in which our libraries should be installed. lt_sysroot=$lt_sysroot # The name of the directory that contains temporary libtool files. objdir=$objdir # Used to examine libraries when file_magic_cmd begins with "file". MAGIC_CMD=$MAGIC_CMD # Must we lock files when doing compilation? need_locks=$lt_need_locks # Manifest tool. MANIFEST_TOOL=$lt_MANIFEST_TOOL # Tool to manipulate archived DWARF debug symbol files on Mac OS X. DSYMUTIL=$lt_DSYMUTIL # Tool to change global to local symbols on Mac OS X. NMEDIT=$lt_NMEDIT # Tool to manipulate fat objects and archives on Mac OS X. LIPO=$lt_LIPO # ldd/readelf like tool for Mach-O binaries on Mac OS X. OTOOL=$lt_OTOOL # ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. OTOOL64=$lt_OTOOL64 # Old archive suffix (normally "a"). libext=$libext # Shared library suffix (normally ".so"). shrext_cmds=$lt_shrext_cmds # The commands to extract the exported symbol list from a shared archive. extract_expsyms_cmds=$lt_extract_expsyms_cmds # Variables whose values should be saved in libtool wrapper scripts and # restored at link time. variables_saved_for_relink=$lt_variables_saved_for_relink # Do we need the "lib" prefix for modules? need_lib_prefix=$need_lib_prefix # Do we need a version for libraries? need_version=$need_version # Library versioning type. version_type=$version_type # Shared library runtime path variable. runpath_var=$runpath_var # Shared library path variable. shlibpath_var=$shlibpath_var # Is shlibpath searched before the hard-coded library search path? shlibpath_overrides_runpath=$shlibpath_overrides_runpath # Format of library name prefix. libname_spec=$lt_libname_spec # List of archive names. First name is the real one, the rest are links. # The last name is the one that the linker finds with -lNAME library_names_spec=$lt_library_names_spec # The coded name of the library, if different from the real name. soname_spec=$lt_soname_spec # Permission mode override for installation of shared libraries. install_override_mode=$lt_install_override_mode # Command to use after installation of a shared archive. postinstall_cmds=$lt_postinstall_cmds # Command to use after uninstallation of a shared archive. postuninstall_cmds=$lt_postuninstall_cmds # Commands used to finish a libtool library installation in a directory. finish_cmds=$lt_finish_cmds # As "finish_cmds", except a single script fragment to be evaled but # not shown. finish_eval=$lt_finish_eval # Whether we should hardcode library paths into libraries. hardcode_into_libs=$hardcode_into_libs # Compile-time system search path for libraries. sys_lib_search_path_spec=$lt_sys_lib_search_path_spec # Run-time system search path for libraries. sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec # Whether dlopen is supported. dlopen_support=$enable_dlopen # Whether dlopen of programs is supported. dlopen_self=$enable_dlopen_self # Whether dlopen of statically linked programs is supported. dlopen_self_static=$enable_dlopen_self_static # Commands to strip libraries. old_striplib=$lt_old_striplib striplib=$lt_striplib # The linker used to build libraries. LD=$lt_LD # How to create reloadable object files. reload_flag=$lt_reload_flag reload_cmds=$lt_reload_cmds # Commands used to build an old-style archive. old_archive_cmds=$lt_old_archive_cmds # A language specific compiler. CC=$lt_compiler # Is the compiler the GNU compiler? with_gcc=$GCC # Compiler flag to turn off builtin functions. no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag # Additional compiler flags for building library objects. pic_flag=$lt_lt_prog_compiler_pic # How to pass a linker flag through the compiler. wl=$lt_lt_prog_compiler_wl # Compiler flag to prevent dynamic linking. link_static_flag=$lt_lt_prog_compiler_static # Does compiler simultaneously support -c and -o options? compiler_c_o=$lt_lt_cv_prog_compiler_c_o # Whether or not to add -lc for building shared libraries. build_libtool_need_lc=$archive_cmds_need_lc # Whether or not to disallow shared libs when runtime libs are static. allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes # Compiler flag to allow reflexive dlopens. export_dynamic_flag_spec=$lt_export_dynamic_flag_spec # Compiler flag to generate shared objects directly from archives. whole_archive_flag_spec=$lt_whole_archive_flag_spec # Whether the compiler copes with passing no objects directly. compiler_needs_object=$lt_compiler_needs_object # Create an old-style archive from a shared archive. old_archive_from_new_cmds=$lt_old_archive_from_new_cmds # Create a temporary old-style archive to link instead of a shared archive. old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds # Commands used to build a shared archive. archive_cmds=$lt_archive_cmds archive_expsym_cmds=$lt_archive_expsym_cmds # Commands used to build a loadable module if different from building # a shared archive. module_cmds=$lt_module_cmds module_expsym_cmds=$lt_module_expsym_cmds # Whether we are building with GNU ld or not. with_gnu_ld=$lt_with_gnu_ld # Flag that allows shared libraries with undefined symbols to be built. allow_undefined_flag=$lt_allow_undefined_flag # Flag that enforces no undefined symbols. no_undefined_flag=$lt_no_undefined_flag # Flag to hardcode \$libdir into a binary during linking. # This must work even if \$libdir does not exist hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec # Whether we need a single "-rpath" flag with a separated argument. hardcode_libdir_separator=$lt_hardcode_libdir_separator # Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes # DIR into the resulting binary. hardcode_direct=$hardcode_direct # Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes # DIR into the resulting binary and the resulting library dependency is # "absolute",i.e impossible to change by setting \${shlibpath_var} if the # library is relocated. hardcode_direct_absolute=$hardcode_direct_absolute # Set to "yes" if using the -LDIR flag during linking hardcodes DIR # into the resulting binary. hardcode_minus_L=$hardcode_minus_L # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR # into the resulting binary. hardcode_shlibpath_var=$hardcode_shlibpath_var # Set to "yes" if building a shared library automatically hardcodes DIR # into the library and all subsequent libraries and executables linked # against it. hardcode_automatic=$hardcode_automatic # Set to yes if linker adds runtime paths of dependent libraries # to runtime path list. inherit_rpath=$inherit_rpath # Whether libtool must link a program against all its dependency libraries. link_all_deplibs=$link_all_deplibs # Set to "yes" if exported symbols are required. always_export_symbols=$always_export_symbols # The commands to list exported symbols. export_symbols_cmds=$lt_export_symbols_cmds # Symbols that should not be listed in the preloaded symbols. exclude_expsyms=$lt_exclude_expsyms # Symbols that must always be exported. include_expsyms=$lt_include_expsyms # Commands necessary for linking programs (against libraries) with templates. prelink_cmds=$lt_prelink_cmds # Commands necessary for finishing linking programs. postlink_cmds=$lt_postlink_cmds # Specify filename containing input files. file_list_spec=$lt_file_list_spec # How to hardcode a shared library path into an executable. hardcode_action=$hardcode_action # ### END LIBTOOL CONFIG _LT_EOF case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi _LT_EOF ;; esac ltmain="$ac_aux_dir/ltmain.sh" # We use sed instead of cat because bash on DJGPP gets confused if # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? sed '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) if test x"$xsi_shell" = xyes; then sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ func_dirname ()\ {\ \ case ${1} in\ \ */*) func_dirname_result="${1%/*}${2}" ;;\ \ * ) func_dirname_result="${3}" ;;\ \ esac\ } # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_basename ()$/,/^} # func_basename /c\ func_basename ()\ {\ \ func_basename_result="${1##*/}"\ } # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ func_dirname_and_basename ()\ {\ \ case ${1} in\ \ */*) func_dirname_result="${1%/*}${2}" ;;\ \ * ) func_dirname_result="${3}" ;;\ \ esac\ \ func_basename_result="${1##*/}"\ } # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ func_stripname ()\ {\ \ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ \ # positional parameters, so assign one to ordinary parameter first.\ \ func_stripname_result=${3}\ \ func_stripname_result=${func_stripname_result#"${1}"}\ \ func_stripname_result=${func_stripname_result%"${2}"}\ } # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ func_split_long_opt ()\ {\ \ func_split_long_opt_name=${1%%=*}\ \ func_split_long_opt_arg=${1#*=}\ } # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ func_split_short_opt ()\ {\ \ func_split_short_opt_arg=${1#??}\ \ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ } # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ func_lo2o ()\ {\ \ case ${1} in\ \ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ \ *) func_lo2o_result=${1} ;;\ \ esac\ } # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_xform ()$/,/^} # func_xform /c\ func_xform ()\ {\ func_xform_result=${1%.*}.lo\ } # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_arith ()$/,/^} # func_arith /c\ func_arith ()\ {\ func_arith_result=$(( $* ))\ } # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_len ()$/,/^} # func_len /c\ func_len ()\ {\ func_len_result=${#1}\ } # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: fi if test x"$lt_shell_append" = xyes; then sed -e '/^func_append ()$/,/^} # func_append /c\ func_append ()\ {\ eval "${1}+=\\${2}"\ } # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ func_append_quoted ()\ {\ \ func_quote_for_eval "${2}"\ \ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ } # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: # Save a `func_append' function call where possible by direct use of '+=' sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: else # Save a `func_append' function call even when '+=' is not available sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: fi if test x"$_lt_function_replace_fail" = x":"; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 $as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} fi mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" ;; "default-1":C) case "$CONFIG_FILES" in *po/Makefile.in*) sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile esac ;; "po/stamp-it":C) if ! grep "^# INTLTOOL_MAKEFILE$" "po/Makefile.in" > /dev/null ; then as_fn_error $? "po/Makefile.in.in was not created by intltoolize." "$LINENO" 5 fi rm -f "po/stamp-it" "po/stamp-it.tmp" "po/POTFILES" "po/Makefile.tmp" >"po/stamp-it.tmp" sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/po/POTFILES.in" | sed '$!s/$/ \\/' >"po/POTFILES" sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r po/POTFILES } ' "po/Makefile.in" >"po/Makefile" rm -f "po/Makefile.tmp" mv "po/stamp-it.tmp" "po/stamp-it" ;; esac done # for ac_tag as_fn_exit 0 _ACEOF ac_clean_files=$ac_clean_files_save test $ac_write_fail = 0 || as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open # by configure, so config.status won't be able to write to it; its # output is simply discarded. So we exec the FD to /dev/null, # effectively closing config.log, so it can be properly (re)opened and # appended to by config.status. When coming back to configure, we # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || as_fn_exit 1 fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi echo " Configure summary: Source code location .......: ${srcdir} Compiler ...................: ${CC} Compiler flags .............: ${CFLAGS} Installing into prefix .....: ${prefix} ALL_LINGUAS ................: ${ALL_LINGUAS} Type make to build ${PACKAGE_STRING} " gnomint-1.3.0/intltool-merge.in0000664000175000017500000000000012672102304013365 00000000000000gnomint-1.3.0/Makefile.am0000664000175000017500000000166012672052326012155 00000000000000ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} SUBDIRS = src po gui mime gconf DIST_SUBDIRS = src po gui mime gconf AM_CPPFLAGS = \ -I$(top_srcdir) EXTRA_DIST = \ AUTHORS \ BUGS \ MAINTAINERS \ NEWS \ README \ TODO \ intltool-extract.in \ intltool-merge.in \ intltool-update.in pkgconfigdir=$(libdir)/pkgconfig pkgconfig_DATA = # to include gnomint.spec in the distro dist-hook: gnomint.spec @cp gnomint.spec $(distdir) ; \ if test -d "$(srcdir)/.git"; \ then \ echo Creating ChangeLog && \ ( cd "$(top_srcdir)" && \ echo '# Generated by Makefile. Do not edit.'; echo; \ $(top_srcdir)/missing --run git log --stat ) > ChangeLog.tmp \ && mv -f ChangeLog.tmp $(distdir)/ChangeLog \ || ( rm -f ChangeLog.tmp ; \ echo Failed to generate ChangeLog >&2 ); \ else \ echo A git clone is required to generate a ChangeLog >&2; \ fi DISTCLEANFILES = \ intltool-extract \ intltool-merge \ intltool-update gnomint-1.3.0/compile0000755000175000017500000001624512672052510011475 00000000000000#! /bin/sh # Wrapper for compilers which do not understand '-c -o'. scriptversion=2012-10-14.11; # UTC # Copyright (C) 1999-2014 Free Software Foundation, Inc. # Written by Tom Tromey . # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # This file is maintained in Automake, please report # bugs to or send patches to # . nl=' ' # We need space, tab and new line, in precisely that order. Quoting is # there to prevent tools from complaining about whitespace usage. IFS=" "" $nl" file_conv= # func_file_conv build_file lazy # Convert a $build file to $host form and store it in $file # Currently only supports Windows hosts. If the determined conversion # type is listed in (the comma separated) LAZY, no conversion will # take place. func_file_conv () { file=$1 case $file in / | /[!/]*) # absolute file, and not a UNC file if test -z "$file_conv"; then # lazily determine how to convert abs files case `uname -s` in MINGW*) file_conv=mingw ;; CYGWIN*) file_conv=cygwin ;; *) file_conv=wine ;; esac fi case $file_conv/,$2, in *,$file_conv,*) ;; mingw/*) file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` ;; cygwin/*) file=`cygpath -m "$file" || echo "$file"` ;; wine/*) file=`winepath -w "$file" || echo "$file"` ;; esac ;; esac } # func_cl_dashL linkdir # Make cl look for libraries in LINKDIR func_cl_dashL () { func_file_conv "$1" if test -z "$lib_path"; then lib_path=$file else lib_path="$lib_path;$file" fi linker_opts="$linker_opts -LIBPATH:$file" } # func_cl_dashl library # Do a library search-path lookup for cl func_cl_dashl () { lib=$1 found=no save_IFS=$IFS IFS=';' for dir in $lib_path $LIB do IFS=$save_IFS if $shared && test -f "$dir/$lib.dll.lib"; then found=yes lib=$dir/$lib.dll.lib break fi if test -f "$dir/$lib.lib"; then found=yes lib=$dir/$lib.lib break fi if test -f "$dir/lib$lib.a"; then found=yes lib=$dir/lib$lib.a break fi done IFS=$save_IFS if test "$found" != yes; then lib=$lib.lib fi } # func_cl_wrapper cl arg... # Adjust compile command to suit cl func_cl_wrapper () { # Assume a capable shell lib_path= shared=: linker_opts= for arg do if test -n "$eat"; then eat= else case $1 in -o) # configure might choose to run compile as 'compile cc -o foo foo.c'. eat=1 case $2 in *.o | *.[oO][bB][jJ]) func_file_conv "$2" set x "$@" -Fo"$file" shift ;; *) func_file_conv "$2" set x "$@" -Fe"$file" shift ;; esac ;; -I) eat=1 func_file_conv "$2" mingw set x "$@" -I"$file" shift ;; -I*) func_file_conv "${1#-I}" mingw set x "$@" -I"$file" shift ;; -l) eat=1 func_cl_dashl "$2" set x "$@" "$lib" shift ;; -l*) func_cl_dashl "${1#-l}" set x "$@" "$lib" shift ;; -L) eat=1 func_cl_dashL "$2" ;; -L*) func_cl_dashL "${1#-L}" ;; -static) shared=false ;; -Wl,*) arg=${1#-Wl,} save_ifs="$IFS"; IFS=',' for flag in $arg; do IFS="$save_ifs" linker_opts="$linker_opts $flag" done IFS="$save_ifs" ;; -Xlinker) eat=1 linker_opts="$linker_opts $2" ;; -*) set x "$@" "$1" shift ;; *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) func_file_conv "$1" set x "$@" -Tp"$file" shift ;; *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) func_file_conv "$1" mingw set x "$@" "$file" shift ;; *) set x "$@" "$1" shift ;; esac fi shift done if test -n "$linker_opts"; then linker_opts="-link$linker_opts" fi exec "$@" $linker_opts exit 1 } eat= case $1 in '') echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: compile [--help] [--version] PROGRAM [ARGS] Wrapper for compilers which do not understand '-c -o'. Remove '-o dest.o' from ARGS, run PROGRAM with the remaining arguments, and rename the output as expected. If you are trying to build a whole package this is not the right script to run: please start by reading the file 'INSTALL'. Report bugs to . EOF exit $? ;; -v | --v*) echo "compile $scriptversion" exit $? ;; cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) func_cl_wrapper "$@" # Doesn't return... ;; esac ofile= cfile= for arg do if test -n "$eat"; then eat= else case $1 in -o) # configure might choose to run compile as 'compile cc -o foo foo.c'. # So we strip '-o arg' only if arg is an object. eat=1 case $2 in *.o | *.obj) ofile=$2 ;; *) set x "$@" -o "$2" shift ;; esac ;; *.c) cfile=$1 set x "$@" "$1" shift ;; *) set x "$@" "$1" shift ;; esac fi shift done if test -z "$ofile" || test -z "$cfile"; then # If no '-o' option was seen then we might have been invoked from a # pattern rule where we don't need one. That is ok -- this is a # normal compilation that the losing compiler can handle. If no # '.c' file was seen then we are probably linking. That is also # ok. exec "$@" fi # Name of file we expect compiler to create. cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` # Create the lock directory. # Note: use '[/\\:.-]' here to ensure that we don't use the same name # that we are using for the .o file. Also, base the name on the expected # object file name, since that is what matters with a parallel build. lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d while true; do if mkdir "$lockdir" >/dev/null 2>&1; then break fi sleep 1 done # FIXME: race condition here if user kills between mkdir and trap. trap "rmdir '$lockdir'; exit 1" 1 2 15 # Run the compile. "$@" ret=$? if test -f "$cofile"; then test "$cofile" = "$ofile" || mv "$cofile" "$ofile" elif test -f "${cofile}bj"; then test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile" fi rmdir "$lockdir" exit $ret # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: gnomint-1.3.0/AUTHORS0000664000175000017500000000022612672052326011166 00000000000000David Marín Carreño Ahmed Baizid Jaroslav Imrich Staněk Luboš gnomint-1.3.0/Makefile.in0000664000175000017500000007226612672104235012175 00000000000000# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/intltool.m4 \ $(top_srcdir)/m4/isc-posix.m4 $(top_srcdir)/m4/libtool.m4 \ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ $(am__configure_deps) $(am__DIST_COMMON) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno config.status.lineno mkinstalldirs = $(install_sh) -d CONFIG_CLEAN_FILES = gnomint.spec CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ ctags-recursive dvi-recursive html-recursive info-recursive \ install-data-recursive install-dvi-recursive \ install-exec-recursive install-html-recursive \ install-info-recursive install-pdf-recursive \ install-ps-recursive install-recursive installcheck-recursive \ installdirs-recursive pdf-recursive ps-recursive \ tags-recursive uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(pkgconfigdir)" DATA = $(pkgconfig_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive am__recursive_targets = \ $(RECURSIVE_TARGETS) \ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ cscope distdir dist dist-all distcheck am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is # *not* preserved. am__uniquify_input = $(AWK) '\ BEGIN { nonempty = 0; } \ { items[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in items) print i; }; } \ ' # Make sure the list of sources is unique. This is necessary because, # e.g., the same source file might be shared among _SOURCES variables # for different programs/libraries. am__define_uniq_tagged_files = \ list='$(am__tagged_files)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` ETAGS = etags CTAGS = ctags CSCOPE = cscope am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/gnomint.spec.in \ AUTHORS COPYING ChangeLog INSTALL NEWS README TODO compile \ config.guess config.sub depcomp install-sh ltmain.sh missing DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ if test -d "$(distdir)"; then \ find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ && rm -rf "$(distdir)" \ || { sleep 5 && rm -rf "$(distdir)"; }; \ else :; fi am__post_remove_distdir = $(am__remove_distdir) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best DIST_TARGETS = dist-gzip distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} ALL_LINGUAS = @ALL_LINGUAS@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ GCONFTOOL = @GCONFTOOL@ GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@ GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GLIB_GENMARSHAL = @GLIB_GENMARSHAL@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ GNOMINTCLI_CFLAGS = @GNOMINTCLI_CFLAGS@ GNOMINTCLI_LIBS = @GNOMINTCLI_LIBS@ GNOMINT_CFLAGS = @GNOMINT_CFLAGS@ GNOMINT_LIBS = @GNOMINT_LIBS@ GREP = @GREP@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@ INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@ INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@ INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBGCRYPT_CFLAGS = @LIBGCRYPT_CFLAGS@ LIBGCRYPT_CONFIG = @LIBGCRYPT_CONFIG@ LIBGCRYPT_LIBS = @LIBGCRYPT_LIBS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGFMT_OPTS = @MSGFMT_OPTS@ MSGMERGE = @MSGMERGE@ NM = @NM@ NMEDIT = @NMEDIT@ OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ OTOOL = @OTOOL@ OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ READLINE_LIBS = @READLINE_LIBS@ SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SQLITE_CFLAGS = @SQLITE_CFLAGS@ SQLITE_LIBS = @SQLITE_LIBS@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ intltool__v_merge_options_ = @intltool__v_merge_options_@ intltool__v_merge_options_0 = @intltool__v_merge_options_0@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ SUBDIRS = src po gui mime gconf DIST_SUBDIRS = src po gui mime gconf AM_CPPFLAGS = \ -I$(top_srcdir) EXTRA_DIST = \ AUTHORS \ BUGS \ MAINTAINERS \ NEWS \ README \ TODO \ intltool-extract.in \ intltool-merge.in \ intltool-update.in pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = DISTCLEANFILES = \ intltool-extract \ intltool-merge \ intltool-update all: all-recursive .SUFFIXES: am--refresh: Makefile @: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(am__cd) $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) $(am__aclocal_m4_deps): gnomint.spec: $(top_builddir)/config.status $(srcdir)/gnomint.spec.in cd $(top_builddir) && $(SHELL) ./config.status $@ mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs distclean-libtool: -rm -f libtool config.lt install-pkgconfigDATA: $(pkgconfig_DATA) @$(NORMAL_INSTALL) @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \ done uninstall-pkgconfigDATA: @$(NORMAL_UNINSTALL) @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir) # This directory's subdirectories are mostly independent; you can cd # into them and run 'make' without going through this Makefile. # To change the values of 'make' variables: instead of editing Makefiles, # (1) if the variable is set in 'config.status', edit 'config.status' # (which will cause the Makefiles to be regenerated when you run 'make'); # (2) otherwise, pass the desired values on the 'make' command line. $(am__recursive_targets): @fail=; \ if $(am__make_keepgoing); then \ failcom='fail=yes'; \ else \ failcom='exit 1'; \ fi; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" ID: $(am__tagged_files) $(am__define_uniq_tagged_files); mkid -fID $$unique tags: tags-recursive TAGS: tags tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ $(am__define_uniq_tagged_files); \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: ctags-recursive CTAGS: ctags ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) $(am__define_uniq_tagged_files); \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" cscope: cscope.files test ! -s cscope.files \ || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) clean-cscope: -rm -f cscope.files cscope.files: clean-cscope cscopelist cscopelist: cscopelist-recursive cscopelist-am: $(am__tagged_files) list='$(am__tagged_files)'; \ case "$(srcdir)" in \ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ *) sdir=$(subdir)/$(srcdir) ;; \ esac; \ for i in $$list; do \ if test -f "$$i"; then \ echo "$(subdir)/$$i"; \ else \ echo "$$sdir/$$i"; \ fi; \ done >> $(top_builddir)/cscope.files distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f cscope.out cscope.in.out cscope.po.out cscope.files distdir: $(DISTFILES) $(am__remove_distdir) test -d "$(distdir)" || mkdir "$(distdir)" @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ $(am__make_dryrun) \ || test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook -test -n "$(am__skip_mode_fix)" \ || find "$(distdir)" -type d ! -perm -755 \ -exec chmod u+rwx,go+rx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r "$(distdir)" dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__post_remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 $(am__post_remove_distdir) dist-lzip: distdir tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz $(am__post_remove_distdir) dist-xz: distdir tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz $(am__post_remove_distdir) dist-tarZ: distdir @echo WARNING: "Support for distribution archives compressed with" \ "legacy program 'compress' is deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__post_remove_distdir) dist-shar: distdir @echo WARNING: "Support for shar distribution archives is" \ "deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__post_remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__post_remove_distdir) dist dist-all: $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' $(am__post_remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lz*) \ lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ *.tar.xz*) \ xz -dc $(distdir).tar.xz | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir) chmod u+w $(distdir) mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst chmod a-w $(distdir) test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && am__cwd=`pwd` \ && $(am__cd) $(distdir)/_build/sub \ && ../../configure \ $(AM_DISTCHECK_CONFIGURE_FLAGS) \ $(DISTCHECK_CONFIGURE_FLAGS) \ --srcdir=../.. --prefix="$$dc_install_base" \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ && $(MAKE) $(AM_MAKEFLAGS) uninstall \ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ } || { rm -rf "$$dc_destdir"; exit 1; }) \ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ && cd "$$am__cwd" \ || exit 1 $(am__post_remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: @test -n '$(distuninstallcheck_dir)' || { \ echo 'ERROR: trying to run $@ with an empty' \ '$$(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ $(am__cd) '$(distuninstallcheck_dir)' || { \ echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ fi ; \ $(distuninstallcheck_listfiles) ; \ exit 1; } >&2 distcleancheck: distclean @if test '$(srcdir)' = . ; then \ echo "ERROR: distcleancheck can only run from a VPATH build" ; \ exit 1 ; \ fi @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left in build directory after distclean:" ; \ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am check: check-recursive all-am: Makefile $(DATA) installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(pkgconfigdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f Makefile distclean-am: clean-am distclean-generic distclean-libtool \ distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-pkgconfigDATA install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-pkgconfigDATA .MAKE: $(am__recursive_targets) install-am install-strip .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ am--refresh check check-am clean clean-cscope clean-generic \ clean-libtool cscope cscopelist-am ctags ctags-am dist \ dist-all dist-bzip2 dist-gzip dist-hook dist-lzip dist-shar \ dist-tarZ dist-xz dist-zip distcheck distclean \ distclean-generic distclean-libtool distclean-tags \ distcleancheck distdir distuninstallcheck dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-pkgconfigDATA install-ps install-ps-am install-strip \ installcheck installcheck-am installdirs installdirs-am \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am uninstall-pkgconfigDATA .PRECIOUS: Makefile # to include gnomint.spec in the distro dist-hook: gnomint.spec @cp gnomint.spec $(distdir) ; \ if test -d "$(srcdir)/.git"; \ then \ echo Creating ChangeLog && \ ( cd "$(top_srcdir)" && \ echo '# Generated by Makefile. Do not edit.'; echo; \ $(top_srcdir)/missing --run git log --stat ) > ChangeLog.tmp \ && mv -f ChangeLog.tmp $(distdir)/ChangeLog \ || ( rm -f ChangeLog.tmp ; \ echo Failed to generate ChangeLog >&2 ); \ else \ echo A git clone is required to generate a ChangeLog >&2; \ fi # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: gnomint-1.3.0/TODO0000664000175000017500000000150412672052326010606 00000000000000To-do list in gnoMint ===================== - Issues about certificates expiration: * Visual distinction * Checkings for avoiding the use of certificates later than their expiring date. (Perhaps allowing it in a hidden non-standard-compliant mode??) - Support for Issuer and Subject alternative names - Support for CRL distribution point - Allow deleting imported certificates (perhaps deleting whole certificate hierarchies). - Option to re-new certificate -> generate CSR from Cert. - While importing a certificate, detect if it corresponds to a previous CSR and, perhaps after asking, copy its private key as the private key of the new certificate. - Implement revoking causes, and CRL serial number. (Support for these subjects must be previously implemented in GnuTLS). gnomint-1.3.0/BUGS0000664000175000017500000000000012672052326010567 00000000000000gnomint-1.3.0/po/0000775000175000017500000000000012672104243010610 500000000000000gnomint-1.3.0/po/POTFILES.in0000664000175000017500000000217012672052326012311 00000000000000[encoding: UTF-8] # List of source files containing translatable strings. # Please keep this file sorted alphabetically. gconf/gnomint.schemas.in gui/certificate_popup_menu.ui gui/certificate_properties_dialog.ui gui/change_password_dialog.ui gui/creation_process_window.ui gui/csr_popup_menu.ui gui/csr_properties_dialog.ui gui/dh_parameters_dialog.ui gui/export_certificate_dialog.ui gui/get_db_password_dialog.ui gui/get_password_dialog.ui gui/get_pkey_dialog.ui gui/gnomint.desktop.in gui/import_file_or_directory_dialog.ui gui/import_password_dialog.ui gui/main_window.ui gui/new_ca_window.ui gui/new_cert_window.ui gui/new_crl_dialog.ui gui/new_req_window.ui gui/preferences_dialog.ui mime/gnomint.xml.in src/ca.c src/ca-cli.c src/ca-cli-callbacks.c src/ca_creation.c src/ca_file.c src/ca_policy.c src/certificate_properties.c src/creation_process_window.c src/crl.c src/csr_creation.c src/csr_properties.c src/dialog.c src/export.c src/gnomint-cli.c src/import.c src/main.c src/new_ca_window.c src/new_cert.c src/new_req_window.c src/preferences.c src/preferences-gui.c src/preferences-window.c src/pkey_manage.c src/tls.c src/uint160.c gnomint-1.3.0/po/Makefile.in.in0000644000000000000000000001575612501770177013172 00000000000000# Makefile for program source directory in GNU NLS utilities package. # Copyright (C) 1995, 1996, 1997 by Ulrich Drepper # Copyright (C) 2004-2008 Rodney Dawes # # This file may be copied and used freely without restrictions. It may # be used in projects which are not available under a GNU Public License, # but which still want to provide support for the GNU gettext functionality. # # - Modified by Owen Taylor to use GETTEXT_PACKAGE # instead of PACKAGE and to look for po2tbl in ./ not in intl/ # # - Modified by jacob berkman to install # Makefile.in.in and po2tbl.sed.in for use with glib-gettextize # # - Modified by Rodney Dawes for use with intltool # # We have the following line for use by intltoolize: # INTLTOOL_MAKEFILE GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ PACKAGE = @PACKAGE@ VERSION = @VERSION@ SHELL = @SHELL@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ top_builddir = @top_builddir@ VPATH = @srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ datadir = @datadir@ datarootdir = @datarootdir@ libdir = @libdir@ localedir = @localedir@ subdir = po install_sh = @install_sh@ # Automake >= 1.8 provides @mkdir_p@. # Until it can be supposed, use the safe fallback: mkdir_p = $(install_sh) -d INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ GMSGFMT = @GMSGFMT@ MSGFMT = @MSGFMT@ XGETTEXT = @XGETTEXT@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ MSGMERGE = INTLTOOL_EXTRACT="$(INTLTOOL_EXTRACT)" XGETTEXT="$(XGETTEXT)" srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist GENPOT = INTLTOOL_EXTRACT="$(INTLTOOL_EXTRACT)" XGETTEXT="$(XGETTEXT)" srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot ALL_LINGUAS = @ALL_LINGUAS@ PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; else echo "$(ALL_LINGUAS)"; fi) USER_LINGUAS=$(shell if test -n "$(LINGUAS)"; then LLINGUAS="$(LINGUAS)"; ALINGUAS="$(ALL_LINGUAS)"; for lang in $$LLINGUAS; do if test -n "`grep \^$$lang$$ $(srcdir)/LINGUAS 2>/dev/null`" -o -n "`echo $$ALINGUAS|tr ' ' '\n'|grep \^$$lang$$`"; then printf "$$lang "; fi; done; fi) USE_LINGUAS=$(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else if test -n "$(PO_LINGUAS)"; then LLINGUAS="$(PO_LINGUAS)"; else LLINGUAS="$(ALL_LINGUAS)"; fi; fi; for lang in $$LLINGUAS; do printf "$$lang "; done) POFILES=$(shell LINGUAS="$(PO_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.po "; done) DISTFILES = Makefile.in.in POTFILES.in $(POFILES) EXTRA_DISTFILES = ChangeLog POTFILES.skip Makevars LINGUAS POTFILES = \ # This comment gets stripped out CATALOGS=$(shell LINGUAS="$(USE_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.gmo "; done) .SUFFIXES: .SUFFIXES: .po .pox .gmo .mo .msg .cat AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ INTLTOOL_V_MSGFMT = $(INTLTOOL__v_MSGFMT_$(V)) INTLTOOL__v_MSGFMT_= $(INTLTOOL__v_MSGFMT_$(AM_DEFAULT_VERBOSITY)) INTLTOOL__v_MSGFMT_0 = @echo " MSGFMT" $@; .po.pox: $(MAKE) $(GETTEXT_PACKAGE).pot $(MSGMERGE) $* $(GETTEXT_PACKAGE).pot -o $*.pox .po.mo: $(INTLTOOL_V_MSGFMT)$(MSGFMT) -o $@ $< .po.gmo: $(INTLTOOL_V_MSGFMT)file=`echo $* | sed 's,.*/,,'`.gmo \ && rm -f $$file && $(GMSGFMT) -o $$file $< .po.cat: sed -f ../intl/po2msg.sed < $< > $*.msg \ && rm -f $@ && gencat $@ $*.msg all: all-@USE_NLS@ all-yes: $(CATALOGS) all-no: $(GETTEXT_PACKAGE).pot: $(POTFILES) $(GENPOT) install: install-data install-data: install-data-@USE_NLS@ install-data-no: all install-data-yes: all linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \ $(mkdir_p) $$dir; \ if test -r $$lang.gmo; then \ $(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $$lang.gmo as $$dir/$(GETTEXT_PACKAGE).mo"; \ else \ $(INSTALL_DATA) $(srcdir)/$$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $(srcdir)/$$lang.gmo as" \ "$$dir/$(GETTEXT_PACKAGE).mo"; \ fi; \ if test -r $$lang.gmo.m; then \ $(INSTALL_DATA) $$lang.gmo.m $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $$lang.gmo.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ if test -r $(srcdir)/$$lang.gmo.m ; then \ $(INSTALL_DATA) $(srcdir)/$$lang.gmo.m \ $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $(srcdir)/$$lang.gmo.m as" \ "$$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ true; \ fi; \ fi; \ done # Empty stubs to satisfy archaic automake needs dvi info ctags tags CTAGS TAGS ID: # Define this as empty until I found a useful application. install-exec installcheck: uninstall: linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \ rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \ done check: all $(GETTEXT_PACKAGE).pot rm -f missing notexist srcdir=$(srcdir) $(INTLTOOL_UPDATE) -m if [ -r missing -o -r notexist ]; then \ exit 1; \ fi mostlyclean: rm -f *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp rm -f .intltool-merge-cache clean: mostlyclean distclean: clean rm -f Makefile Makefile.in POTFILES stamp-it rm -f *.mo *.msg *.cat *.cat.m *.gmo maintainer-clean: distclean @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." rm -f Makefile.in.in distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) dist distdir: $(DISTFILES) dists="$(DISTFILES)"; \ extra_dists="$(EXTRA_DISTFILES)"; \ for file in $$extra_dists; do \ test -f $(srcdir)/$$file && dists="$$dists $(srcdir)/$$file"; \ done; \ for file in $$dists; do \ test -f $$file || file="$(srcdir)/$$file"; \ ln $$file $(distdir) 2> /dev/null \ || cp -p $$file $(distdir); \ done update-po: Makefile $(MAKE) $(GETTEXT_PACKAGE).pot tmpdir=`pwd`; \ linguas="$(USE_LINGUAS)"; \ for lang in $$linguas; do \ echo "$$lang:"; \ result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \ if $$result; then \ if cmp $(srcdir)/$$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ rm -f $$tmpdir/$$lang.new.po; \ else \ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ :; \ else \ echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ rm -f $$tmpdir/$$lang.new.po; \ exit 1; \ fi; \ fi; \ else \ echo "msgmerge for $$lang.gmo failed!"; \ rm -f $$tmpdir/$$lang.new.po; \ fi; \ done Makefile POTFILES: stamp-it @if test ! -f $@; then \ rm -f stamp-it; \ $(MAKE) stamp-it; \ fi stamp-it: Makefile.in.in $(top_builddir)/config.status POTFILES.in cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \ $(SHELL) ./config.status # Tell versions [3.59,3.63) of GNU make not to export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: gnomint-1.3.0/po/sk.po0000664000175000017500000023012212672052326011511 00000000000000# Slovak translation for gnomint # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the gnomint package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: gnomint\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2009-06-03 23:09+0200\n" "PO-Revision-Date: 2010-04-02 04:51+0000\n" "Last-Translator: David Marín \n" "Language-Team: Slovak \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-08-11 09:00+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "Automatický export certifikátov pre gnome-keyring" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "Viditeľnosť žiadostí o certifikát" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "Viditeľnosť zrušených certifikátov" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" "Veľkosť (šírka,výška) okna gnoMint po spustení. Nemôže byť menšia než " "(320,200)." #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "Či majú byť žiadosti o certifikát viditeľné." #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" "Či sú vytvorené alebo importované certifikáty automaticky exportované do " "úložiska gnome-keyring." #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "Či majú byť zrušené certifikáty viditeľné." #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "Veľkosť okna" #: ../gui/gnomint.glade.h:1 msgid " " msgstr " " #: ../gui/gnomint.glade.h:2 msgid "CSR subject" msgstr "Subjekt zo žiadosti o vydanie certifikátu" #: ../gui/gnomint.glade.h:3 msgid "Certificate fields" msgstr "Polia certifikátu" #: ../gui/gnomint.glade.h:4 msgid "Certificate hierarchy" msgstr "Hierarchia certifikátov" #: ../gui/gnomint.glade.h:5 msgid "Certificate purposes" msgstr "Účely certifikátu" #: ../gui/gnomint.glade.h:6 msgid "Certificate subject" msgstr "Subjekt certifikátu" #: ../gui/gnomint.glade.h:7 msgid "Certificate uses" msgstr "Použitie certifikátu" #: ../gui/gnomint.glade.h:8 msgid "Emmited by" msgstr "Vydaný" #: ../gui/gnomint.glade.h:9 msgid "Fingerprints" msgstr "Odtlačky prstov" #: ../gui/gnomint.glade.h:10 msgid "Inherited fields from CA subject" msgstr "Položky zdedené zo subjektu CA" #: ../gui/gnomint.glade.h:11 msgid "Purposes of new generated certificates" msgstr "Účely novo generovaných certifikátov" #: ../gui/gnomint.glade.h:12 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in the internal database." msgstr "" "Privátny kľúč prislúchajúci k tejto žiadosti o vydanie certifikátu sa " "nachádza v internej databáze." #: ../gui/gnomint.glade.h:13 msgid "This certificate has been verified for the following uses:" msgstr "Tento certifikát bol overený pre nasledujúce použitia:" #: ../gui/gnomint.glade.h:14 msgid "Uses of new generated certificates" msgstr "Použitie novo generovaných certifikátov" #: ../gui/gnomint.glade.h:15 msgid "Validity" msgstr "Platnosť" #: ../gui/gnomint.glade.h:16 msgid "New Certificate Revocation List" msgstr "Nový Zoznam Zrušených Certifikátov" #: ../gui/gnomint.glade.h:17 msgid "CA Properties\n" msgstr "Vlastnosti CA\n" #: ../gui/gnomint.glade.h:19 msgid "CA Root certificate properties\n" msgstr "Vlastnosti certifikátu koreňovej CA\n" #: ../gui/gnomint.glade.h:21 msgid "Certificate Request Properties\n" msgstr "Vlastnosti Žiadosti o Vydanie Certifikátu\n" #: ../gui/gnomint.glade.h:23 msgid "" "Choose private key file\n" "\n" "For doing the selected operation, you must provide the file where resides " "the private key corresponding to the certificate:" msgstr "" "Vyberte súbor s privátnym kľúčom\n" "\n" "Pre vykonanie vybranej operácie musíte vybrať súbor s privátnym kľúčom " "prislúchajúcim certifikátu:" #: ../gui/gnomint.glade.h:26 msgid "New Certificate Properties\n" msgstr "Vlastnosti Nového Certifikátu\n" #: ../gui/gnomint.glade.h:28 msgid "Password protection\n" msgstr "Ochrana heslom\n" #: ../gui/gnomint.glade.h:30 msgid "" "Export both (private and public) parts to a password-protected PKCS#12 " "file. This kind of file can be imported by other common programs, such as " "web or mail clients." msgstr "" "Exportovať obe časti (privátnu i verejnú) do súboru PKCS#12 chráneného " "heslom. Tento typ súboru je možné importovať do iných programov ako sú " "napríklad webové prehliadače alebo e-mailoví klienti." #: ../gui/gnomint.glade.h:31 msgid "Export only the certificate to a public file, in PEM format." msgstr "Exportovať len certifikát do v PEM formáte." #: ../gui/gnomint.glade.h:32 msgid "" "Export the saved private key to a PEM file. This option should only be " "used for exporting certificates that will be used in unattended servers." msgstr "" "Exportovať uložený privátny kľúč do PEM súboru. Táto možnosť by mala byť " "použitá len pri exportovaní certifikátov, ktoré budú používané v serveroch " "bez obsluhy." #: ../gui/gnomint.glade.h:33 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the certificate." msgstr "" "\r\n" "Exportovať uložený privátny kľúč do súboru PKCS#8 chráneného heslom. K " "tomuto súboru by mal pristupovať len vlastníkov certifikátu." #: ../gui/gnomint.glade.h:34 msgid "" "Import a directory containing the structure of\n" "a whole CA made with OpenSSL ." msgstr "" "Importovať adresár obsahujúci štruktúru\n" "celej CA vytvorenej pomocou OpenSSL." #: ../gui/gnomint.glade.h:36 msgid "" "Import a single file, encoded in DER or PEM format, containing " "certificates, private keys (encrypted or plain), signing requests (CSRs), " "revocation lists (CRLs) or PKCS#12 packages." msgstr "" "Importovať jeden súbor kódovaný v DER alebo PEM formáte obsahujúci " "certifikáty, privátne kľúče (šifrované alebo nešifrované), žiadosti o " "vydanie certifikátu (CSR), zoznamy zrušených certifikátov (CRL) alebo súbory " "PKCS#12." #: ../gui/gnomint.glade.h:37 msgid "" "\n" "It is recommended that all the certificates generated by a CA share the same " "properties.\n" "If you want to generate certificates with different properties, you should " "create a hierarchy of CAs, each one with its own policy for certificate " "generation.\n" "\n" "Please, define the maximum set of properties for the certificates that this " "CA will be able to generate:\n" msgstr "" "\n" "Odporúča sa, aby všetky certifikáty generované jednou CA mali rovnaké " "vlastnosti.\n" "Ak chcete generovať certifikáty s rôznymi vlastnosťami, mali by ste vytvoriť " "hierarchiu CA, každú s vlastnou politikou pre vydávanie certifikátov.\n" "\n" "Prosím definujte maximálnu množinu vlastností pre certifikáty, ktoré bude " "môcť táto CA generovať:\n" #: ../gui/gnomint.glade.h:43 msgid "#Description#" msgstr "#Popis#" #: ../gui/gnomint.glade.h:44 msgid "" "PKCS#3 files containing Diffie·Hellman parameters are used by " "some cryptographic \n" "applications for a secure interchange of their keys over insecure " "channels." msgstr "" "Súbory PKCS#3 obsahujúce Diffie·Hellman parametre sú " "používané niektorými kryptografickými \n" "aplikáciami na bezpečnú výmenu kľúčov po nezabezpečených " "kanáloch." #: ../gui/gnomint.glade.h:46 msgid "" "The part that is being imported has the description:" msgstr "Importovaná časť má popis:" #: ../gui/gnomint.glade.h:47 msgid "" "The subject of the new certificate request can inherit information " "from one of the existing Certification Authorities. This is a must if the " "policy of the CA you are going to use is defined to force some fields of a " "certificate subject to be the same as the ones in the CA cert " "subject." msgstr "" "Subjekt novej žiadosti o vydanie certifikátu môže zdediť informácie " "od jednej z existujúcich Certifikačných Autorít. Je to nevyhnutné v " "prípadoch, keď politika použitej CA vyžaduje v subjekte certifikátu " "prítomnosť rovnakých polí ako sú v subjekte certifikátu CA." #: ../gui/gnomint.glade.h:48 msgid "Activated on" msgstr "Aktivované" #: ../gui/gnomint.glade.h:49 msgid "Add CSR" msgstr "Pridať žiadosť o vydanie certifikátu" #: ../gui/gnomint.glade.h:50 msgid "Add _Certificate Request" msgstr "Pridať _žiadosť o vydanie certifikátu" #: ../gui/gnomint.glade.h:51 msgid "Add a new Certificate Signing Request" msgstr "Pridať novú žiadosť o vydanie certifikátu" #: ../gui/gnomint.glade.h:52 msgid "Add an autosigned CA" msgstr "Pridať self-signed CA" #: ../gui/gnomint.glade.h:53 msgid "Add autosigned CA certificate" msgstr "Pridať certifikát self-signed CA" #: ../gui/gnomint.glade.h:54 ../src/certificate_properties.c:1130 #: ../src/tls.c:1082 msgid "Any purpose" msgstr "Ľubovoľný účel" #: ../gui/gnomint.glade.h:55 msgid "" "Automatically export created certificates to \n" "Gnome-keyring certificate store" msgstr "" "Automaticky exportovať vytvorené certifikáty do \n" "úložiska gnome-keyring." #: ../gui/gnomint.glade.h:57 msgid "Both parts." msgstr "Obe časti." #: ../gui/gnomint.glade.h:58 msgid "CA Policy" msgstr "Politika CA" #: ../gui/gnomint.glade.h:59 msgid "" "CA Root Certificate \n" "Common Name (CN):" msgstr "" "Bežné meno (CN) \n" "z certifikátu Koreňovej CA:" #: ../gui/gnomint.glade.h:61 msgid "CA properties" msgstr "Vlastnosti CA" #: ../gui/gnomint.glade.h:62 msgid "CACN" msgstr "CACN" #: ../gui/gnomint.glade.h:63 msgid "CAO" msgstr "CAO" #: ../gui/gnomint.glade.h:64 msgid "CAOU" msgstr "CAOU" #: ../gui/gnomint.glade.h:65 ../src/certificate_properties.c:358 #: ../src/tls.c:1056 msgid "CRL signing" msgstr "Vydávanie CRL" #: ../gui/gnomint.glade.h:66 msgid "CSR properties - gnoMint" msgstr "Vlastnosti žiadosti o vydanie certifikátu - gnoMint" #: ../gui/gnomint.glade.h:67 msgid "CertActivationDate" msgstr "" #: ../gui/gnomint.glade.h:68 msgid "CertExpirationDate" msgstr "" #: ../gui/gnomint.glade.h:69 msgid "CertSN" msgstr "" #: ../gui/gnomint.glade.h:70 msgid "" "Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:72 msgid "Certificate DN" msgstr "" #: ../gui/gnomint.glade.h:73 msgid "Certificate _Signing Requests" msgstr "" #: ../gui/gnomint.glade.h:74 msgid "Certificate properties" msgstr "" #: ../gui/gnomint.glade.h:75 msgid "Certificate properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:76 ../src/tls.c:1039 msgid "Certification Authority" msgstr "" #: ../gui/gnomint.glade.h:77 msgid "Change database pass_word" msgstr "" #: ../gui/gnomint.glade.h:78 msgid "Choose CA for signing the CSR" msgstr "" #: ../gui/gnomint.glade.h:79 msgid "Choose private key file. gnoMint" msgstr "" #: ../gui/gnomint.glade.h:80 msgid "City" msgstr "" #: ../gui/gnomint.glade.h:81 msgid "City: " msgstr "" #: ../gui/gnomint.glade.h:82 ../src/certificate_properties.c:1126 #: ../src/tls.c:1074 msgid "Code signing" msgstr "" #: ../gui/gnomint.glade.h:83 msgid "Common Name (CN)" msgstr "" #: ../gui/gnomint.glade.h:84 msgid "Country" msgstr "" #: ../gui/gnomint.glade.h:85 msgid "Country:" msgstr "" #: ../gui/gnomint.glade.h:86 msgid "Create a new database" msgstr "" #: ../gui/gnomint.glade.h:87 msgid "Creating CA Root Certificate" msgstr "" #: ../gui/gnomint.glade.h:88 msgid "Creating new CA - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:89 msgid "DSA" msgstr "" #: ../gui/gnomint.glade.h:90 ../src/certificate_properties.c:352 #: ../src/tls.c:1050 msgid "Data encipherment" msgstr "" #: ../gui/gnomint.glade.h:91 msgid "Database password protection - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:92 msgid "Delete the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:93 msgid "Details" msgstr "" #: ../gui/gnomint.glade.h:94 ../src/certificate_properties.c:346 #: ../src/tls.c:1044 msgid "Digital signature" msgstr "" #: ../gui/gnomint.glade.h:95 msgid "Don't inherit any fields from existing Certification Authorities" msgstr "" #: ../gui/gnomint.glade.h:96 msgid "E_xport" msgstr "" #: ../gui/gnomint.glade.h:97 ../src/certificate_properties.c:1127 #: ../src/tls.c:1076 msgid "Email protection" msgstr "" #: ../gui/gnomint.glade.h:98 msgid "" "Enter new password again \n" "for confirmation:" msgstr "" #: ../gui/gnomint.glade.h:100 msgid "Enter password - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:101 msgid "Enter password again for confirmation:" msgstr "" #: ../gui/gnomint.glade.h:102 msgid "Expires on" msgstr "" #: ../gui/gnomint.glade.h:103 msgid "Export certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:104 msgid "Export options" msgstr "" #: ../gui/gnomint.glade.h:105 msgid "Exports the CSR so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:106 msgid "" "Exports the certificate so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:107 msgid "Extrac_t private key" msgstr "" #: ../gui/gnomint.glade.h:108 msgid "Extract Private Key" msgstr "" #: ../gui/gnomint.glade.h:109 msgid "Extract the private key of the selected item into a external file" msgstr "" #: ../gui/gnomint.glade.h:110 msgid "Extract the saved private key to an external file or device" msgstr "" #: ../gui/gnomint.glade.h:111 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the CSR will be used" msgstr "" #: ../gui/gnomint.glade.h:115 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the certificate will be used" msgstr "" #: ../gui/gnomint.glade.h:119 msgid "General" msgstr "" #: ../gui/gnomint.glade.h:120 msgid "General Preferences - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:121 msgid "Generate D_H parameters..." msgstr "" #: ../gui/gnomint.glade.h:122 msgid "Generate _CRL" msgstr "" #: ../gui/gnomint.glade.h:123 msgid "Generate the current Certificate Revocation List" msgstr "" #: ../gui/gnomint.glade.h:124 msgid "Hours between CRL updates:" msgstr "" #: ../gui/gnomint.glade.h:125 msgid "Import a single file." msgstr "" #: ../gui/gnomint.glade.h:126 msgid "Import a whole directory." msgstr "" #: ../gui/gnomint.glade.h:127 msgid "Import selection - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:128 msgid "" "Inherit fields according to selected Certification Authority and its policy." msgstr "" #: ../gui/gnomint.glade.h:129 ../src/certificate_properties.c:354 #: ../src/tls.c:1052 msgid "Key agreement" msgstr "" #: ../gui/gnomint.glade.h:130 ../src/certificate_properties.c:350 #: ../src/tls.c:1048 msgid "Key encipherment" msgstr "" #: ../gui/gnomint.glade.h:131 msgid "MD5 fingerprint" msgstr "" #: ../gui/gnomint.glade.h:132 msgid "MD5FINGERPRINT" msgstr "" #: ../gui/gnomint.glade.h:133 msgid "" "Maximum number of months before expiration of the new generated certificates:" msgstr "" #: ../gui/gnomint.glade.h:134 msgid "Months before certificate expiration:" msgstr "" #: ../gui/gnomint.glade.h:135 msgid "Months before root certificate expiration:" msgstr "" #: ../gui/gnomint.glade.h:136 msgid "New CA - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:137 msgid "New CRL - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:138 msgid "New Certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:139 msgid "New Diffie-Hellman parameters - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:140 msgid "" "New certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:142 msgid "New certificate request - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:143 ../src/certificate_properties.c:348 #: ../src/tls.c:1046 msgid "Non repudiation" msgstr "" #: ../gui/gnomint.glade.h:144 ../src/certificate_properties.c:1129 #: ../src/tls.c:1080 msgid "OCSP signing" msgstr "" #: ../gui/gnomint.glade.h:145 msgid "Only the private key (crypted)." msgstr "" #: ../gui/gnomint.glade.h:146 msgid "Only the private key (uncrypted)." msgstr "" #: ../gui/gnomint.glade.h:147 msgid "Only the pu_blic part." msgstr "" #: ../gui/gnomint.glade.h:148 msgid "Open _recents" msgstr "" #: ../gui/gnomint.glade.h:149 msgid "Open an existing database" msgstr "" #: ../gui/gnomint.glade.h:150 msgid "Organization" msgstr "" #: ../gui/gnomint.glade.h:151 msgid "Organization (O)" msgstr "" #: ../gui/gnomint.glade.h:152 msgid "Organization Unit:" msgstr "" #: ../gui/gnomint.glade.h:153 msgid "Organization:" msgstr "" #: ../gui/gnomint.glade.h:154 msgid "Organizational Unit (OU)" msgstr "" #: ../gui/gnomint.glade.h:155 msgid "Organizational unit" msgstr "" #: ../gui/gnomint.glade.h:156 msgid "Password (confirm):" msgstr "" #: ../gui/gnomint.glade.h:157 msgid "Password protect" msgstr "" #: ../gui/gnomint.glade.h:158 msgid "Password:" msgstr "" #: ../gui/gnomint.glade.h:159 msgid "Please, choose the file:" msgstr "" #: ../gui/gnomint.glade.h:160 msgid "Please, choose the more suitable option for what you want to import:" msgstr "" #: ../gui/gnomint.glade.h:161 msgid "" "Please, choose which part of the saved certificate you want to export:" msgstr "" #: ../gui/gnomint.glade.h:162 msgid "" "Please, enter current\n" "password:" msgstr "" #: ../gui/gnomint.glade.h:164 msgid "" "Please, enter new \n" "password:" msgstr "" #: ../gui/gnomint.glade.h:166 msgid "Please, enter password" msgstr "" #: ../gui/gnomint.glade.h:167 msgid "Please, enter password:" msgstr "" #: ../gui/gnomint.glade.h:168 msgid "Please, enter the prime size, in bits:" msgstr "" #: ../gui/gnomint.glade.h:169 msgid "" "Please, select the CA for which a Certificate \n" "Revocation List is going to be created:" msgstr "" #: ../gui/gnomint.glade.h:171 msgid "Private key bit length:" msgstr "" #: ../gui/gnomint.glade.h:172 msgid "Private key type:" msgstr "" #: ../gui/gnomint.glade.h:173 msgid "" "Protect CA database private \n" "keys with password:" msgstr "" #: ../gui/gnomint.glade.h:175 msgid "" "Protect CA database private keys\n" "with password:" msgstr "" #: ../gui/gnomint.glade.h:177 msgid "RSA" msgstr "" #: ../gui/gnomint.glade.h:178 msgid "Remember this password during this gnoMint session" msgstr "" #: ../gui/gnomint.glade.h:179 msgid "Revo_ke" msgstr "" #: ../gui/gnomint.glade.h:180 msgid "Revoke" msgstr "" #: ../gui/gnomint.glade.h:181 msgid "Revoke the selected certificate" msgstr "" #: ../gui/gnomint.glade.h:182 msgid "Revokes the selected certificate" msgstr "" #: ../gui/gnomint.glade.h:183 msgid "Root certificate prop" msgstr "" #: ../gui/gnomint.glade.h:184 msgid "SHA1 fingerprint" msgstr "" #: ../gui/gnomint.glade.h:185 msgid "SHA1FINGERPRINT" msgstr "" #: ../gui/gnomint.glade.h:186 msgid "Serial number" msgstr "" #: ../gui/gnomint.glade.h:187 msgid "Shows the CSR properties window" msgstr "" #: ../gui/gnomint.glade.h:188 msgid "Shows the certificate properties window" msgstr "" #: ../gui/gnomint.glade.h:189 msgid "Sign" msgstr "" #: ../gui/gnomint.glade.h:190 msgid "Sign the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:191 msgid "State or Province name" msgstr "" #: ../gui/gnomint.glade.h:192 msgid "State or Province name: " msgstr "" #: ../gui/gnomint.glade.h:193 msgid "SubjectCN" msgstr "" #: ../gui/gnomint.glade.h:194 msgid "SubjectO" msgstr "" #: ../gui/gnomint.glade.h:195 msgid "SubjectOU" msgstr "" #: ../gui/gnomint.glade.h:196 msgid "TLS Web client" msgstr "" #: ../gui/gnomint.glade.h:197 msgid "TLS Web server" msgstr "" #: ../gui/gnomint.glade.h:198 msgid "" "The whole selected file, or some of its elements, seems to be cyphered using " "a password or passphrase.\n" "\n" "For importing the file into gnoMint database, you must provide an appropiate " "password." msgstr "" #: ../gui/gnomint.glade.h:201 msgid "" "This action requires using one or more private keys saved in the CA " "database.\n" "\n" "Please insert the database password." msgstr "" #: ../gui/gnomint.glade.h:204 ../src/certificate_properties.c:1128 #: ../src/tls.c:1078 msgid "Time stamping" msgstr "" #: ../gui/gnomint.glade.h:205 msgid "" "You are about to create and export a set of Diffie·Hellman parameters " "into a PKCS#3 structure file." msgstr "" #: ../gui/gnomint.glade.h:206 msgid "" "You are about to sign a Certificate Signing Request, and this way, creating " "a new certificate. Please check the certificate properties." msgstr "" #: ../gui/gnomint.glade.h:207 msgid "" "You are about to sign a Certificate Signing Request. Please, choose the " "Certification Authority you are going to use for signing it." msgstr "" #: ../gui/gnomint.glade.h:208 msgid "_Add self-signed CA" msgstr "" #: ../gui/gnomint.glade.h:209 msgid "_Certificates" msgstr "" #: ../gui/gnomint.glade.h:210 msgid "_Edit" msgstr "" #: ../gui/gnomint.glade.h:211 msgid "_Help" msgstr "" #: ../gui/gnomint.glade.h:212 msgid "_Import" msgstr "" #: ../gui/gnomint.glade.h:213 msgid "_New certificate database" msgstr "" #: ../gui/gnomint.glade.h:214 msgid "_No" msgstr "" #: ../gui/gnomint.glade.h:215 msgid "_Open certificate database" msgstr "" #: ../gui/gnomint.glade.h:216 msgid "_Revoked Certificates" msgstr "" #: ../gui/gnomint.glade.h:217 msgid "_Save certificate database as..." msgstr "" #: ../gui/gnomint.glade.h:218 msgid "_Save filename in the database for automatic loading" msgstr "" #: ../gui/gnomint.glade.h:219 msgid "_Sign" msgstr "" #: ../gui/gnomint.glade.h:220 msgid "_View" msgstr "" #: ../gui/gnomint.glade.h:221 msgid "_Yes" msgstr "" #: ../gui/gnomint.glade.h:222 msgid "gnoMint" msgstr "" #: ../gui/gnomint.glade.h:223 msgid "gtk-cancel" msgstr "" #: ../gui/gnomint.glade.h:224 msgid "gtk-ok" msgstr "" #: ../gui/gnomint.glade.h:225 msgid "label" msgstr "" #: ../gui/gnomint.glade.h:226 msgid "may differ" msgstr "" #: ../gui/gnomint.glade.h:227 msgid "must be the same" msgstr "" #: ../gui/gnomint.glade.h:228 msgid "page 3" msgstr "" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "" #: ../src/ca.c:147 msgid "Certificates" msgstr "" #: ../src/ca.c:263 msgid "Certificate Signing Requests" msgstr "" #: ../src/ca.c:304 ../src/ca-cli-callbacks.c:168 ../src/ca-cli-callbacks.c:178 #: ../src/ca-cli-callbacks.c:189 ../src/ca-cli-callbacks.c:547 #: ../src/ca-cli-callbacks.c:551 ../src/ca-cli-callbacks.c:1162 #: ../src/ca-cli-callbacks.c:1166 ../src/certificate_properties.c:178 #: ../src/certificate_properties.c:183 msgid "%m/%d/%Y %R GMT" msgstr "" #: ../src/ca.c:448 ../src/certificate_properties.c:531 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "" #: ../src/ca.c:483 msgid "Serial" msgstr "" #: ../src/ca.c:490 msgid "Activation" msgstr "" #: ../src/ca.c:497 msgid "Expiration" msgstr "" #: ../src/ca.c:504 msgid "Revocation" msgstr "" #: ../src/ca.c:791 msgid "Export certificate" msgstr "" #: ../src/ca.c:798 msgid "Export certificate signing request" msgstr "" #: ../src/ca.c:813 ../src/ca.c:849 ../src/ca.c:859 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "" #: ../src/ca.c:815 ../src/ca.c:851 ../src/ca.c:861 msgid "There was an error while exporting CSR." msgstr "" #: ../src/ca.c:874 ../src/ca.c:1040 msgid "Certificate exported successfully" msgstr "" #: ../src/ca.c:881 msgid "Certificate signing request exported successfully" msgstr "" #: ../src/ca.c:900 msgid "Export crypted private key" msgstr "" #: ../src/ca.c:929 ../src/ca.c:981 msgid "Private key exported successfully" msgstr "" #: ../src/ca.c:951 msgid "Export uncrypted private key" msgstr "" #: ../src/ca.c:1002 msgid "Export whole certificate in PKCS#12 package" msgstr "" #: ../src/ca.c:1073 msgid "Export CSR - gnoMint" msgstr "" #: ../src/ca.c:1078 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" #: ../src/ca.c:1083 msgid "" "Export the Certificate Signing Request to a public file, in PEM " "format." msgstr "" #: ../src/ca.c:1088 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" #: ../src/ca.c:1146 msgid "Unexpected error" msgstr "" #: ../src/ca.c:1196 msgid "Are you sure you want to revoke this certificate?" msgstr "" #: ../src/ca.c:1235 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "" #: ../src/ca.c:1512 msgid "Change CA password - gnoMint" msgstr "" #: ../src/ca.c:1530 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" #: ../src/ca.c:1545 msgid "Error while changing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1554 msgid "Password changed successfully" msgstr "" #: ../src/ca.c:1564 ../src/ca-cli-callbacks.c:1002 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1574 msgid "Password established successfully" msgstr "" #: ../src/ca.c:1584 msgid "Error while removing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1593 msgid "Password removed successfully" msgstr "" #: ../src/ca.c:1731 msgid "Save Diffie-Hellman parameters" msgstr "" #: ../src/ca.c:1757 msgid "Diffie-Hellman parameters saved successfully" msgstr "" #. Import single file #: ../src/ca.c:1826 msgid "Select PEM file to import" msgstr "" #: ../src/ca.c:1847 #, c-format msgid "Problem when importing '%s' file" msgstr "" #: ../src/ca.c:1860 msgid "Select directory to import" msgstr "" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "" #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "" #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "" #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "" #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "" #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "" #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "" #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "" #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "" #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "" #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "" #: ../src/ca-cli.c:55 msgid "" "Generate a new CRL for the given CA, saving it into the file " msgstr "" #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "" #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "" #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "" #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "" #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "" #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "" #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "" #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "" #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "" #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "" #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr "" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr "" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "" #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:638 msgid "Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:140 #, c-format msgid "CertList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:143 msgid "CertList IsCA|Y\t" msgstr "" #: ../src/ca-cli-callbacks.c:145 msgid "CertList IsCA|N\t" msgstr "" #: ../src/ca-cli-callbacks.c:150 #, c-format msgid "CertList Subject|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:153 msgid "CertList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:155 msgid "CertList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:158 msgid "CertList PKeyInDB|Y\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:160 msgid "CertList PKeyInDB|N\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:164 msgid "CertList Activation|\t" msgstr "" #: ../src/ca-cli-callbacks.c:169 #, c-format msgid "CertList Activation|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:174 msgid "CertList Expiration|\t" msgstr "" #: ../src/ca-cli-callbacks.c:179 #, c-format msgid "CertList Expiration|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:185 msgid "CertList Revocation|\n" msgstr "" #: ../src/ca-cli-callbacks.c:190 #, c-format msgid "CertList Revocation|%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:207 #, c-format msgid "Certificates in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:208 #, c-format msgid "" "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "" #: ../src/ca-cli-callbacks.c:211 #, c-format msgid "\t\tRevocation\n" msgstr "" #: ../src/ca-cli-callbacks.c:221 #, c-format msgid "CsrList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "CsrList ParentID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 msgid "CsrList ParentID|\t" msgstr "" #: ../src/ca-cli-callbacks.c:228 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "" #: ../src/ca-cli-callbacks.c:231 msgid "CsrList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:233 msgid "CsrList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:236 msgid "CsrList PKeyInDB|Y\n" msgstr "" #: ../src/ca-cli-callbacks.c:238 msgid "CsrList PKeyInDB|N\n" msgstr "" #: ../src/ca-cli-callbacks.c:246 #, c-format msgid "Certificate Requests in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:247 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "" #: ../src/ca-cli-callbacks.c:275 ../src/ca-cli-callbacks.c:945 #: ../src/ca-cli-callbacks.c:1310 ../src/ca-cli-callbacks.c:1339 msgid "The given CA id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:328 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:330 ../src/ca-cli-callbacks.c:453 msgid "Enter country (C)" msgstr "" #: ../src/ca-cli-callbacks.c:336 ../src/ca-cli-callbacks.c:459 msgid "Enter state or province (ST)" msgstr "" #: ../src/ca-cli-callbacks.c:342 ../src/ca-cli-callbacks.c:465 msgid "Enter locality or city (L)" msgstr "" #: ../src/ca-cli-callbacks.c:348 ../src/ca-cli-callbacks.c:471 msgid "Enter organization (O)" msgstr "" #: ../src/ca-cli-callbacks.c:354 ../src/ca-cli-callbacks.c:477 msgid "Enter organizational unit (OU)" msgstr "" #: ../src/ca-cli-callbacks.c:360 ../src/ca-cli-callbacks.c:483 msgid "Enter common name (CN)" msgstr "" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:493 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "" #: ../src/ca-cli-callbacks.c:382 ../src/ca-cli-callbacks.c:505 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "" #: ../src/ca-cli-callbacks.c:386 #, c-format msgid "These are the provided CSR properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:388 ../src/ca-cli-callbacks.c:526 #: ../src/ca-cli-callbacks.c:1152 ../src/ca-cli-callbacks.c:1204 #, c-format msgid "Subject:\n" msgstr "" #: ../src/ca-cli-callbacks.c:389 ../src/ca-cli-callbacks.c:527 #, c-format msgid "\tDistinguished Name: " msgstr "" #: ../src/ca-cli-callbacks.c:403 ../src/ca-cli-callbacks.c:541 #, c-format msgid "Key pair\n" msgstr "" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:542 #, c-format msgid "\tType: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:543 #, c-format msgid "\tKey bitlength: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:407 ../src/ca-cli-callbacks.c:554 msgid "Do you want to change anything? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:411 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:412 ../src/ca-cli-callbacks.c:559 msgid "Are you sure? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:417 ../src/ca-cli-callbacks.c:564 #: ../src/ca-cli-callbacks.c:648 ../src/ca-cli-callbacks.c:779 #: ../src/ca-cli-callbacks.c:902 ../src/ca-cli-callbacks.c:931 #: ../src/ca-cli-callbacks.c:997 ../src/ca-cli-callbacks.c:1024 #: ../src/ca-cli-callbacks.c:1052 ../src/ca-cli-callbacks.c:1067 #: ../src/ca-cli-callbacks.c:1369 ../src/ca-cli-callbacks.c:1412 #, c-format msgid "Operation cancelled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:451 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "" #: ../src/ca-cli-callbacks.c:510 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" #: ../src/ca-cli-callbacks.c:524 #, c-format msgid "These are the provided new CA properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:544 #, c-format msgid "Validity\n" msgstr "" #: ../src/ca-cli-callbacks.c:545 ../src/ca-cli-callbacks.c:1160 #, c-format msgid "Validity:\n" msgstr "" #: ../src/ca-cli-callbacks.c:548 ../src/ca-cli-callbacks.c:1163 #, c-format msgid "\tActivated on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:552 ../src/ca-cli-callbacks.c:1167 #, c-format msgid "\tExpires on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:558 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:632 #: ../src/ca-cli-callbacks.c:1137 msgid "The given certificate id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:591 ../src/ca-cli-callbacks.c:615 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:608 ../src/ca-cli-callbacks.c:760 #: ../src/ca-cli-callbacks.c:915 ../src/ca-cli-callbacks.c:1193 msgid "The given CSR id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:638 msgid "This certificate will be revoked." msgstr "" #: ../src/ca-cli-callbacks.c:644 #, c-format msgid "Certificate revoked.\n" msgstr "" #: ../src/ca-cli-callbacks.c:658 ../src/ca-cli-callbacks.c:1174 #, c-format msgid "Certificate uses:\n" msgstr "" #: ../src/ca-cli-callbacks.c:661 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:663 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:667 #, c-format msgid "* CRL signing use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:669 #, c-format msgid "* CRL signing use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:673 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:675 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:679 ../src/ca-cli-callbacks.c:681 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:685 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:687 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:691 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:693 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:697 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:699 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:702 #, c-format msgid "Certificate purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:705 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:707 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:711 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:713 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:717 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:719 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:723 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:725 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:729 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:731 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:735 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:737 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:741 #, c-format msgid "* Any purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:743 #, c-format msgid "* Any purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:767 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:769 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "" #: ../src/ca-cli-callbacks.c:772 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" #: ../src/ca-cli-callbacks.c:782 #, c-format msgid "" "The certificate will be generated with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:800 ../src/ca-cli-callbacks.c:888 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:803 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:806 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:808 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:812 msgid "* Enable CRL Signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:814 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:818 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:820 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:824 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:826 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:830 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:832 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:836 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:838 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:842 msgid "Enable Key Agreement use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:844 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:848 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:850 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:854 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:856 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:860 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:862 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:866 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:868 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:872 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:874 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:878 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:883 msgid "Enable any purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:899 #, c-format msgid "Certificate signed.\n" msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This Certificate Signing Request will be deleted." msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:927 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "" #: ../src/ca-cli-callbacks.c:952 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:969 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "" #: ../src/ca-cli-callbacks.c:978 #, c-format msgid "" "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Currently, the database is not password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Do you want to password protect it? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:991 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password:" msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:995 ../src/ca-cli-callbacks.c:1065 msgid "The introduced passwords are distinct." msgstr "" #: ../src/ca-cli-callbacks.c:1006 #, c-format msgid "Password established successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Nothing done.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Currently, the database IS password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:1021 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1022 ../src/ca-cli-callbacks.c:1050 msgid "Please, insert the current database password (Empty to cancel): " msgstr "" #: ../src/ca-cli-callbacks.c:1029 ../src/ca-cli-callbacks.c:1057 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" #: ../src/ca-cli-callbacks.c:1034 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1039 #, c-format msgid "Password removed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1049 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1061 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password:" msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:1073 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1079 #, c-format msgid "Password changed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1097 msgid "Problem when importing the given file." msgstr "" #: ../src/ca-cli-callbacks.c:1100 #, c-format msgid "File imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1116 #, c-format msgid "Directory imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1145 #, c-format msgid "Certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1149 #, c-format msgid "\tSerial number: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1157 #: ../src/ca-cli-callbacks.c:1205 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1154 #: ../src/ca-cli-callbacks.c:1157 ../src/ca-cli-callbacks.c:1158 msgid "None." msgstr "" #: ../src/ca-cli-callbacks.c:1154 ../src/ca-cli-callbacks.c:1158 #: ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tUnique ID: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1156 #, c-format msgid "Issuer:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1169 #, c-format msgid "Fingerprints:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1170 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1171 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1202 #, c-format msgid "Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1275 msgid "Generated certs inherit Country from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1276 msgid "Generated certs inherit State from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1277 msgid "Generated certs inherit Locality from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1278 msgid "Generated certs inherit Organization from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1279 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1280 msgid "Country in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1281 msgid "State in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1282 msgid "Locality in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1283 msgid "Organization in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1284 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "" #: ../src/ca-cli-callbacks.c:1285 msgid "Maximum number of hours between CRL updates " msgstr "" #: ../src/ca-cli-callbacks.c:1286 msgid "Maximum number of months before expiration of new certs " msgstr "" #: ../src/ca-cli-callbacks.c:1287 msgid "CA use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1288 msgid "CRL Sign use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1289 msgid "Non reputation use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1290 msgid "Digital signature use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1291 msgid "Key encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1292 msgid "Key agreement use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1293 msgid "Data encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1294 msgid "TLS web server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1295 msgid "TLS web client purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1296 msgid "Time stamping purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1297 msgid "Code signing server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1298 msgid "Email protection purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1299 msgid "OCSP signing purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1300 msgid "Any purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1314 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1316 #, c-format msgid "" "\n" "Policies:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1318 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1344 msgid "The given policy id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1356 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1360 ../src/ca-cli-callbacks.c:1404 msgid "Are you sure? Yes/[No] : " msgstr "" #: ../src/ca-cli-callbacks.c:1365 #, c-format msgid "Policy set correctly to '%d'.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1379 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1381 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1382 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "" #: ../src/ca-cli-callbacks.c:1394 msgid "The given preference id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1400 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1422 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1423 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1424 ../src/ca-cli-callbacks.c:1425 #: ../src/main.c:502 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " David Marín https://launchpad.net/~davefx\n" " jariq https://launchpad.net/~jariq" #: ../src/ca-cli-callbacks.c:1425 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1432 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1450 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1465 #, c-format msgid "%s version %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1474 #, c-format msgid "Available commands:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "===================\n" msgstr "" #: ../src/ca-cli-callbacks.c:1485 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "" #: ../src/ca_creation.c:144 msgid "CA generated successfully" msgstr "" #: ../src/ca_file.c:196 #, c-format msgid "Error opening filename '%s'" msgstr "" #: ../src/ca_file.c:299 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" #: ../src/ca_file.c:1311 msgid "Cannot find parent CA in database" msgstr "" #: ../src/ca_file.c:1499 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "" #: ../src/ca_file.c:1930 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" #: ../src/ca_file.c:1933 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" #: ../src/certificate_properties.c:356 ../src/tls.c:1054 msgid "Certificate signing" msgstr "" #: ../src/certificate_properties.c:360 msgid "Key encipherment only" msgstr "" #: ../src/certificate_properties.c:362 msgid "Key decipherment only" msgstr "" #: ../src/certificate_properties.c:376 msgid "Version" msgstr "" #: ../src/certificate_properties.c:411 msgid "Serial Number" msgstr "" #: ../src/certificate_properties.c:427 ../src/certificate_properties.c:1060 msgid "Signature" msgstr "" #: ../src/certificate_properties.c:430 ../src/certificate_properties.c:558 #: ../src/certificate_properties.c:561 ../src/certificate_properties.c:1027 msgid "Algorithm" msgstr "" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:594 ../src/certificate_properties.c:622 #: ../src/certificate_properties.c:1030 msgid "Parameters" msgstr "" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:622 ../src/certificate_properties.c:624 #: ../src/certificate_properties.c:635 ../src/certificate_properties.c:644 #: ../src/certificate_properties.c:1031 msgid "(unknown)" msgstr "" #: ../src/certificate_properties.c:465 msgid "Issuer" msgstr "" #: ../src/certificate_properties.c:493 msgid "Validity" msgstr "" #: ../src/certificate_properties.c:496 msgid "Not Before" msgstr "" #: ../src/certificate_properties.c:499 msgid "Not After" msgstr "" #: ../src/certificate_properties.c:555 msgid "Subject Public Key Info" msgstr "" #: ../src/certificate_properties.c:568 msgid "RSA PublicKey" msgstr "" #: ../src/certificate_properties.c:578 msgid "Modulus" msgstr "" #: ../src/certificate_properties.c:584 msgid "Public Exponent" msgstr "" #: ../src/certificate_properties.c:617 msgid "DSA PublicKey" msgstr "" #: ../src/certificate_properties.c:624 msgid "Subject Public Key" msgstr "" #: ../src/certificate_properties.c:635 msgid "Issuer Unique ID" msgstr "" #: ../src/certificate_properties.c:644 msgid "Subject Unique ID" msgstr "" #: ../src/certificate_properties.c:666 ../src/certificate_properties.c:689 #: ../src/certificate_properties.c:758 ../src/certificate_properties.c:862 #: ../src/certificate_properties.c:890 ../src/certificate_properties.c:930 #: ../src/certificate_properties.c:987 ../src/certificate_properties.c:1112 msgid "Value" msgstr "" #: ../src/certificate_properties.c:728 ../src/certificate_properties.c:832 msgid "DNS Name" msgstr "" #: ../src/certificate_properties.c:733 ../src/certificate_properties.c:837 msgid "RFC822 Name" msgstr "" #: ../src/certificate_properties.c:738 ../src/certificate_properties.c:842 msgid "URI" msgstr "" #: ../src/certificate_properties.c:744 msgid "IP" msgstr "" #: ../src/certificate_properties.c:751 ../src/certificate_properties.c:855 msgid "Directory Name" msgstr "" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "TRUE" msgstr "" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "FALSE" msgstr "" #: ../src/certificate_properties.c:790 msgid "CA" msgstr "" #: ../src/certificate_properties.c:794 msgid "Path Length Constraint" msgstr "" #: ../src/certificate_properties.c:848 msgid "IP Address" msgstr "" #: ../src/certificate_properties.c:963 msgid "Extensions" msgstr "" #: ../src/certificate_properties.c:972 msgid "Critical" msgstr "" #: ../src/certificate_properties.c:1000 msgid "Certificate" msgstr "" #: ../src/certificate_properties.c:1025 msgid "Signature Algorithm" msgstr "" #: ../src/certificate_properties.c:1108 msgid "Name" msgstr "" #: ../src/certificate_properties.c:1124 ../src/tls.c:1070 msgid "TLS WWW Server" msgstr "" #: ../src/certificate_properties.c:1125 msgid "TLS WWW Client" msgstr "" #: ../src/certificate_properties.c:1131 msgid "Subject Directory Attributes" msgstr "" #: ../src/certificate_properties.c:1132 msgid "Subject Key Identifier" msgstr "" #: ../src/certificate_properties.c:1133 msgid "Key Usage" msgstr "" #: ../src/certificate_properties.c:1134 msgid "Private Key Usage Period" msgstr "" #: ../src/certificate_properties.c:1135 msgid "Subject Alternative Name" msgstr "" #: ../src/certificate_properties.c:1136 msgid "Basic Constraints" msgstr "" #: ../src/certificate_properties.c:1137 msgid "Name Constraints" msgstr "" #: ../src/certificate_properties.c:1138 msgid "CRL Distribution Points" msgstr "" #: ../src/certificate_properties.c:1139 msgid "Certificate Policies" msgstr "" #: ../src/certificate_properties.c:1140 msgid "Policy Mappings" msgstr "" #: ../src/certificate_properties.c:1141 msgid "Authority Key Identifier" msgstr "" #: ../src/certificate_properties.c:1142 msgid "Policy Constraints" msgstr "" #: ../src/certificate_properties.c:1143 msgid "Extended Key Usage" msgstr "" #: ../src/certificate_properties.c:1144 msgid "Delta CRL Distribution Point" msgstr "" #: ../src/certificate_properties.c:1145 msgid "Inhibit Any-Policy" msgstr "" #: ../src/creation_process_window.c:79 msgid "CA creation process finished" msgstr "" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "" #: ../src/creation_process_window.c:274 msgid "Creating Certificate Signing Request" msgstr "" #: ../src/crl.c:250 msgid "Export Certificate Revocation List" msgstr "" #: ../src/crl.c:280 msgid "CRL generated successfully" msgstr "" #: ../src/crl.c:309 ../src/crl.c:371 ../src/crl.c:382 msgid "There was an error while exporting CRL." msgstr "" #: ../src/crl.c:320 msgid "There was an error while getting revoked certificates." msgstr "" #: ../src/crl.c:336 ../src/crl.c:355 msgid "There was an error while generating CRL." msgstr "" #: ../src/crl.c:363 msgid "There was an error while writing CRL." msgstr "" #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "" #: ../src/csr_properties.c:78 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" #: ../src/dialog.c:79 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" #: ../src/dialog.c:103 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "" #: ../src/dialog.c:104 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "" #: ../src/dialog.c:372 msgid "To do. Feature not implemented yet." msgstr "" #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "" #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "" #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "" #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "" #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "" #: ../src/export.c:110 msgid "Operation cancelled." msgstr "" #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "" #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "" #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "" #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "" #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "" #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "" #: ../src/gnomint-cli.c:59 ../src/main.c:129 #, c-format msgid "Failed to initialize: %s\n" msgstr "" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "" #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "" #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "" #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "" #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "" #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "" #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "" #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "" #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "" #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "" #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" #: ../src/main.c:126 msgid "- A graphical Certification Authority manager" msgstr "" #: ../src/main.c:285 msgid "Create new CA database" msgstr "" #: ../src/main.c:323 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" #: ../src/main.c:336 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "" #: ../src/main.c:357 msgid "Open CA database" msgstr "" #: ../src/main.c:380 ../src/main.c:420 #, c-format msgid "Problem when opening '%s' CA database" msgstr "" #: ../src/main.c:445 msgid "Save CA database as..." msgstr "" #: ../src/main.c:497 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" #: ../src/main.c:498 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" #: ../src/new_cert.c:329 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:335 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:341 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:347 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:353 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:799 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" #: ../src/new_cert.c:815 msgid "Error while signing CSR." msgstr "" #: ../src/pkey_manage.c:80 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" #: ../src/pkey_manage.c:125 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" #: ../src/pkey_manage.c:171 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:187 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:191 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" #. The file cannot be opened #: ../src/pkey_manage.c:196 msgid "The file designated in database couldn't be opened." msgstr "" #. The file doesn't exist #: ../src/pkey_manage.c:201 msgid "The file designated in database doesn't exist." msgstr "" #: ../src/pkey_manage.c:760 ../src/pkey_manage.c:811 msgid "The given password doesn't match the one used in the database" msgstr "" #: ../src/pkey_manage.c:798 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" #: ../src/pkey_manage.c:799 msgid "Please insert the database password:" msgstr "" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "" #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:553 ../src/tls.c:855 #, c-format msgid "Error exporting private key to PEM structure." msgstr "" #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "" #: ../src/tls.c:441 ../src/tls.c:689 #, c-format msgid "Error when setting certificate version" msgstr "" #: ../src/tls.c:451 ../src/tls.c:702 #, c-format msgid "Error when setting certificate serial number" msgstr "" #: ../src/tls.c:460 ../src/tls.c:711 #, c-format msgid "Error when setting activation time" msgstr "" #: ../src/tls.c:465 ../src/tls.c:719 #, c-format msgid "Error when setting expiration time" msgstr "" #: ../src/tls.c:511 ../src/tls.c:768 #, c-format msgid "Error when setting basicConstraint extension" msgstr "" #: ../src/tls.c:516 ../src/tls.c:810 #, c-format msgid "Error when setting keyUsage extension" msgstr "" #: ../src/tls.c:527 ../src/tls.c:784 #, c-format msgid "Error when setting subject key identifier extension" msgstr "" #: ../src/tls.c:531 ../src/tls.c:758 #, c-format msgid "Error when setting authority key identifier extension" msgstr "" #: ../src/tls.c:541 #, c-format msgid "Error when signing self-signed certificate" msgstr "" #: ../src/tls.c:571 #, c-format msgid "Error when initializing csr structure" msgstr "" #: ../src/tls.c:575 #, c-format msgid "Error when setting csr version" msgstr "" #: ../src/tls.c:608 #, c-format msgid "Error when signing self-signed csr" msgstr "" #: ../src/tls.c:619 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "" #: ../src/tls.c:673 #, c-format msgid "Error when initializing crt structure" msgstr "" #: ../src/tls.c:681 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "" #: ../src/tls.c:840 #, c-format msgid "Error when signing certificate" msgstr "" #: ../src/tls.c:1058 msgid "Key encipher only" msgstr "" #: ../src/tls.c:1060 msgid "Key decipher only" msgstr "" #: ../src/tls.c:1072 msgid "TLS WWW Client." msgstr "" gnomint-1.3.0/po/ca.po0000664000175000017500000030023312672052326011460 00000000000000# Catalan translation for gnomint # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the gnomint package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: gnomint\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2009-06-03 23:09+0200\n" "PO-Revision-Date: 2010-04-05 14:02+0000\n" "Last-Translator: Sergio Oller \n" "Language-Team: Catalan \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-08-11 09:00+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "Exporta automàticament els certificats a gnome-keyring" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "Visibilitat de sol·licituds de certificació" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "Visibilitat de certificats revocats" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" "La mida (amplada, alçada) de gnoMint al iniciar-se. No pot ser menor a " "(320,200)." #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "Si les sol·licituds de certificat han de ser visibles." #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" "Si els certificats tot just creats o importats són exportats automàticament " "al magatzem de certificats de gnome-keyring." #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "Si els certificats revocats han de ser visibles" #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "Mida de la finestra" #: ../gui/gnomint.glade.h:1 msgid " " msgstr " " #: ../gui/gnomint.glade.h:2 msgid "CSR subject" msgstr "Titular de la sol·licitud" #: ../gui/gnomint.glade.h:3 msgid "Certificate fields" msgstr "Camps del certificat" #: ../gui/gnomint.glade.h:4 msgid "Certificate hierarchy" msgstr "Jerarquia de certificats" #: ../gui/gnomint.glade.h:5 msgid "Certificate purposes" msgstr "Finalitats del certificat" #: ../gui/gnomint.glade.h:6 msgid "Certificate subject" msgstr "Titular del certificat" #: ../gui/gnomint.glade.h:7 msgid "Certificate uses" msgstr "Usos del certificat" #: ../gui/gnomint.glade.h:8 msgid "Emmited by" msgstr "Emès per" #: ../gui/gnomint.glade.h:9 msgid "Fingerprints" msgstr "Empremtes" #: ../gui/gnomint.glade.h:10 msgid "Inherited fields from CA subject" msgstr "Camps heretats del titular de l'entitat certificadora (CA)" #: ../gui/gnomint.glade.h:11 msgid "Purposes of new generated certificates" msgstr "Finalitats possibles dels nous certificats" #: ../gui/gnomint.glade.h:12 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in the internal database." msgstr "" "La clau privada corresponent a aquesta petició de certificació està " "emmagatzemada a la base de dades interna." #: ../gui/gnomint.glade.h:13 msgid "This certificate has been verified for the following uses:" msgstr "S'ha verificat aquest certificat per als següents usos:" #: ../gui/gnomint.glade.h:14 msgid "Uses of new generated certificates" msgstr "Usos possibles dels nous certificats generats" #: ../gui/gnomint.glade.h:15 msgid "Validity" msgstr "Validesa" #: ../gui/gnomint.glade.h:16 msgid "New Certificate Revocation List" msgstr "Nova llista de certificats revocats (CRL)" #: ../gui/gnomint.glade.h:17 msgid "CA Properties\n" msgstr "Propietats de la CA\n" #: ../gui/gnomint.glade.h:19 msgid "CA Root certificate properties\n" msgstr "Propietats del certificat arrel de la CA\n" #: ../gui/gnomint.glade.h:21 msgid "Certificate Request Properties\n" msgstr "Propietats de la sol·licitud de certificat\n" #: ../gui/gnomint.glade.h:23 msgid "" "Choose private key file\n" "\n" "For doing the selected operation, you must provide the file where resides " "the private key corresponding to the certificate:" msgstr "" "Seleccioneu el fitxer amb la clau privada\n" "\n" "Per a realitzar la operació seleccionada, heu de proporcionar el fitxer on " "resideix la clau privada corresponent al certificat:" #: ../gui/gnomint.glade.h:26 msgid "New Certificate Properties\n" msgstr "Propietats del nou certificat\n" #: ../gui/gnomint.glade.h:28 msgid "Password protection\n" msgstr "Xifrat amb contrasenya\n" #: ../gui/gnomint.glade.h:30 msgid "" "Export both (private and public) parts to a password-protected PKCS#12 " "file. This kind of file can be imported by other common programs, such as " "web or mail clients." msgstr "" "Exporta ambdues parts (pública i privada) a un fitxer PKCS#12 protegit " "amb contrasenya. Aquest tipus de fitxers poden ser importats per altres " "programes comuns, com ara clients web o de correu electrònic." #: ../gui/gnomint.glade.h:31 msgid "Export only the certificate to a public file, in PEM format." msgstr "Exporta només el certificat a un fitxer públic en format PEM" #: ../gui/gnomint.glade.h:32 msgid "" "Export the saved private key to a PEM file. This option should only be " "used for exporting certificates that will be used in unattended servers." msgstr "" "Exporta la clau privada emmagatzemada a un fitxer PEM. Aquesta opció " "només s'ha d'utilitzar per exportar certificats que s'utilitzin en servidors " "desatesos." #: ../gui/gnomint.glade.h:33 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the certificate." msgstr "" "Exporta la clau privada emmagatzemada a un fitxer PKCS#8 protegit amb " "contrasenya. Aquest fitxer només ha de ser accessible pel titular del " "certificat. " #: ../gui/gnomint.glade.h:34 msgid "" "Import a directory containing the structure of\n" "a whole CA made with OpenSSL ." msgstr "" "Importa directori que contingui l'estructura\n" "complerta d'una CA produïda amb OpenSSL." #: ../gui/gnomint.glade.h:36 msgid "" "Import a single file, encoded in DER or PEM format, containing " "certificates, private keys (encrypted or plain), signing requests (CSRs), " "revocation lists (CRLs) or PKCS#12 packages." msgstr "" "Importa un únic fitxer, en format DER o PEM, que conté certificats, claus " "privades (xifrades o en net), solicituds de signatura de certificats (CSRs), " "llistes de revocació (CRLs) o paquets PKCS#12." #: ../gui/gnomint.glade.h:37 msgid "" "\n" "It is recommended that all the certificates generated by a CA share the same " "properties.\n" "If you want to generate certificates with different properties, you should " "create a hierarchy of CAs, each one with its own policy for certificate " "generation.\n" "\n" "Please, define the maximum set of properties for the certificates that this " "CA will be able to generate:\n" msgstr "" "\n" "Es recomana que tots els certificats generats per la CA comparteixin les " "mateixes propietats.\n" "Si desitja generar certificats amb propietats diferents, hauria de crear una " "jerarquia de CAs, cadascuna amb la seva pròpia política per la generació de " "certificats.\n" "\n" "Defineixi el conjunt màxim de propietats pels certificats que aquesta " "Entitat Certificadora (CA) podrà atorgar:\n" #: ../gui/gnomint.glade.h:43 msgid "#Description#" msgstr "#Descripció#" #: ../gui/gnomint.glade.h:44 msgid "" "PKCS#3 files containing Diffie·Hellman parameters are used by " "some cryptographic \n" "applications for a secure interchange of their keys over insecure " "channels." msgstr "" "Els fitxers PKCS#3 amb paràmetres Diffie-Hellman s'utilitzen per " "algunes aplicacions\n" "criptogràfiques per a realitzar intercanvis segurs de les seves claus a " "canals insegurs." #: ../gui/gnomint.glade.h:46 msgid "" "The part that is being imported has the description:" msgstr "La part que s'importa té la descripció:" #: ../gui/gnomint.glade.h:47 msgid "" "The subject of the new certificate request can inherit information " "from one of the existing Certification Authorities. This is a must if the " "policy of the CA you are going to use is defined to force some fields of a " "certificate subject to be the same as the ones in the CA cert " "subject." msgstr "" "El titular de la nova sol·licitud de certificat pot heretar " "informació d'una de les entitats certificadores (CA) existents. Això és " "imprescindible si la política de la CA que vulgueu utilitzar per a signar el " "certificat requereix que camps siguin iguals en el certificat de l'entitat i " "en els seus certificats fills." #: ../gui/gnomint.glade.h:48 msgid "Activated on" msgstr "Activat a" #: ../gui/gnomint.glade.h:49 msgid "Add CSR" msgstr "Afegir CSR" #: ../gui/gnomint.glade.h:50 msgid "Add _Certificate Request" msgstr "Afegir _sol·licitud de certificació" #: ../gui/gnomint.glade.h:51 msgid "Add a new Certificate Signing Request" msgstr "Afegir una nova sol·licitud de signatura del certificat" #: ../gui/gnomint.glade.h:52 msgid "Add an autosigned CA" msgstr "Afegir una entitat certificadora (CA) auto-signada" #: ../gui/gnomint.glade.h:53 msgid "Add autosigned CA certificate" msgstr "Afegir certificat de la CA auto-signat" #: ../gui/gnomint.glade.h:54 ../src/certificate_properties.c:1130 #: ../src/tls.c:1082 msgid "Any purpose" msgstr "Qualsevol propòsit" #: ../gui/gnomint.glade.h:55 msgid "" "Automatically export created certificates to \n" "Gnome-keyring certificate store" msgstr "" "Exportar automàticament els certificats creats al \n" "magatzem de certificats de Gnome-keyring." #: ../gui/gnomint.glade.h:57 msgid "Both parts." msgstr "Ambdues parts." #: ../gui/gnomint.glade.h:58 msgid "CA Policy" msgstr "Política de la CA" #: ../gui/gnomint.glade.h:59 msgid "" "CA Root Certificate \n" "Common Name (CN):" msgstr "" "Nom comú (CN) del\n" "certificat arrrel de la CA:" #: ../gui/gnomint.glade.h:61 msgid "CA properties" msgstr "Propietats de la CA" #: ../gui/gnomint.glade.h:62 msgid "CACN" msgstr "CACN" #: ../gui/gnomint.glade.h:63 msgid "CAO" msgstr "CAO" #: ../gui/gnomint.glade.h:64 msgid "CAOU" msgstr "CAOU" #: ../gui/gnomint.glade.h:65 ../src/certificate_properties.c:358 #: ../src/tls.c:1056 msgid "CRL signing" msgstr "Signatura de CRLs" #: ../gui/gnomint.glade.h:66 msgid "CSR properties - gnoMint" msgstr "Propietats de la sol·licitud - gnoMint" #: ../gui/gnomint.glade.h:67 msgid "CertActivationDate" msgstr "Data d'activació" #: ../gui/gnomint.glade.h:68 msgid "CertExpirationDate" msgstr "Data de caducitat" #: ../gui/gnomint.glade.h:69 msgid "CertSN" msgstr "Núm de sèrie" #: ../gui/gnomint.glade.h:70 msgid "" "Certificate \n" "Common Name (CN):" msgstr "" "Nom comú (CN) del \n" "certificat:" #: ../gui/gnomint.glade.h:72 msgid "Certificate DN" msgstr "Descriptor (DN) del certificat" #: ../gui/gnomint.glade.h:73 msgid "Certificate _Signing Requests" msgstr "_Sol·licituds de signatura de certificats" #: ../gui/gnomint.glade.h:74 msgid "Certificate properties" msgstr "Propietats del certificat" #: ../gui/gnomint.glade.h:75 msgid "Certificate properties - gnoMint" msgstr "Propietats del certificat - gnoMint" #: ../gui/gnomint.glade.h:76 ../src/tls.c:1039 msgid "Certification Authority" msgstr "Entitat certificadora" #: ../gui/gnomint.glade.h:77 msgid "Change database pass_word" msgstr "Canvia _contrasenya de la base de dades" #: ../gui/gnomint.glade.h:78 msgid "Choose CA for signing the CSR" msgstr "" "Sel·leccioneu l'entitat certificadora (CA) que signarà la sol·licitud (CSR)" #: ../gui/gnomint.glade.h:79 msgid "Choose private key file. gnoMint" msgstr "Sel·lecciona el fitxer amb la clau privada. gnoMint" #: ../gui/gnomint.glade.h:80 msgid "City" msgstr "Ciutat" #: ../gui/gnomint.glade.h:81 msgid "City: " msgstr "Ciutat: " #: ../gui/gnomint.glade.h:82 ../src/certificate_properties.c:1126 #: ../src/tls.c:1074 msgid "Code signing" msgstr "Signatura de codi" #: ../gui/gnomint.glade.h:83 msgid "Common Name (CN)" msgstr "Nom comú (CN)" #: ../gui/gnomint.glade.h:84 msgid "Country" msgstr "País" #: ../gui/gnomint.glade.h:85 msgid "Country:" msgstr "País:" #: ../gui/gnomint.glade.h:86 msgid "Create a new database" msgstr "Crea una base de dades nova" #: ../gui/gnomint.glade.h:87 msgid "Creating CA Root Certificate" msgstr "Creant un certificat arrel de la CA" #: ../gui/gnomint.glade.h:88 msgid "Creating new CA - gnoMint" msgstr "Creant una CA nova - gnoMint" #: ../gui/gnomint.glade.h:89 msgid "DSA" msgstr "DSA" #: ../gui/gnomint.glade.h:90 ../src/certificate_properties.c:352 #: ../src/tls.c:1050 msgid "Data encipherment" msgstr "Xifratge de dades" #: ../gui/gnomint.glade.h:91 msgid "Database password protection - gnoMint" msgstr "Contrasenya de protecció de la base de dades - gnoMint" #: ../gui/gnomint.glade.h:92 msgid "Delete the selected Certificate Signing Request" msgstr "Esborra la sol·licitud de signatura de certificat sel·leccionada" #: ../gui/gnomint.glade.h:93 msgid "Details" msgstr "Detalls" #: ../gui/gnomint.glade.h:94 ../src/certificate_properties.c:346 #: ../src/tls.c:1044 msgid "Digital signature" msgstr "Signatura digital" #: ../gui/gnomint.glade.h:95 msgid "Don't inherit any fields from existing Certification Authorities" msgstr "No heretis cap camp de les Entitats Certificadores (CA) existents" #: ../gui/gnomint.glade.h:96 msgid "E_xport" msgstr "E_xporta" #: ../gui/gnomint.glade.h:97 ../src/certificate_properties.c:1127 #: ../src/tls.c:1076 msgid "Email protection" msgstr "Protecció de correu electrònic" #: ../gui/gnomint.glade.h:98 msgid "" "Enter new password again \n" "for confirmation:" msgstr "" "Torni a introduir la nova \n" "contrasenya per confirmar:" #: ../gui/gnomint.glade.h:100 msgid "Enter password - gnoMint" msgstr "Introdueixi contrasenya - gnoMint" #: ../gui/gnomint.glade.h:101 msgid "Enter password again for confirmation:" msgstr "Torni a introduir la contrasenya per confirmar:" #: ../gui/gnomint.glade.h:102 msgid "Expires on" msgstr "Caduca el" #: ../gui/gnomint.glade.h:103 msgid "Export certificate - gnoMint" msgstr "Exporta el certificat - gnoMint" #: ../gui/gnomint.glade.h:104 msgid "Export options" msgstr "Opcions d'exportació" #: ../gui/gnomint.glade.h:105 msgid "Exports the CSR so it can be imported by any other application" msgstr "" "Exporta la sol·lititud de signatura del certificat de manera que pugui ser " "importada per qualsevol altra aplicació" #: ../gui/gnomint.glade.h:106 msgid "" "Exports the certificate so it can be imported by any other application" msgstr "" "Exporta el certificat de manera que pugui ser importat per qualsevol altra " "aplicació" #: ../gui/gnomint.glade.h:107 msgid "Extrac_t private key" msgstr "Ex_treure clau privada" #: ../gui/gnomint.glade.h:108 msgid "Extract Private Key" msgstr "Extreure clau privada" #: ../gui/gnomint.glade.h:109 msgid "Extract the private key of the selected item into a external file" msgstr "Extreu la clau privada de l'element sel·leccionat a un fitxer extern" #: ../gui/gnomint.glade.h:110 msgid "Extract the saved private key to an external file or device" msgstr "Extreu la clau privada emmagatzemada a un fitxer o dispositiu extern" #: ../gui/gnomint.glade.h:111 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the CSR will be used" msgstr "" "Extreu la clau privada del certificat \n" "sel·leccionat, desant-la a un fitxer extern. \n" "Aquest fitxer s'ha de proporcionar \n" "al fer servir la sol·licitud de signatura de certificats" #: ../gui/gnomint.glade.h:115 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the certificate will be used" msgstr "" "Extreu la clau privada del certificat \n" "sel·leccionat, desant-la a un fitxer extern. \n" "Aquest fitxer s'ha de proporcionar \n" "al fer servir el certificat" #: ../gui/gnomint.glade.h:119 msgid "General" msgstr "General" #: ../gui/gnomint.glade.h:120 msgid "General Preferences - gnoMint" msgstr "Preferències generals - gnoMint" #: ../gui/gnomint.glade.h:121 msgid "Generate D_H parameters..." msgstr "Generar els paràmetres D_H" #: ../gui/gnomint.glade.h:122 msgid "Generate _CRL" msgstr "Genera la _CRL" #: ../gui/gnomint.glade.h:123 msgid "Generate the current Certificate Revocation List" msgstr "Genera la llista de revocació de certificats (CRL) actual" #: ../gui/gnomint.glade.h:124 msgid "Hours between CRL updates:" msgstr "Hores entre les actualitzacions de la CRL:" #: ../gui/gnomint.glade.h:125 msgid "Import a single file." msgstr "Importar un únic fitxer." #: ../gui/gnomint.glade.h:126 msgid "Import a whole directory." msgstr "Importar un directori complet." #: ../gui/gnomint.glade.h:127 msgid "Import selection - gnoMint" msgstr "Importa la sel·lecció - gnoMint" #: ../gui/gnomint.glade.h:128 msgid "" "Inherit fields according to selected Certification Authority and its policy." msgstr "" "Heretar camps segons la política de l'entitat certificadora (CA) " "sel·leccionada." #: ../gui/gnomint.glade.h:129 ../src/certificate_properties.c:354 #: ../src/tls.c:1052 msgid "Key agreement" msgstr "Negociació de claus" #: ../gui/gnomint.glade.h:130 ../src/certificate_properties.c:350 #: ../src/tls.c:1048 msgid "Key encipherment" msgstr "Xifratge de claus" #: ../gui/gnomint.glade.h:131 msgid "MD5 fingerprint" msgstr "Emprempta digital MD5" #: ../gui/gnomint.glade.h:132 msgid "MD5FINGERPRINT" msgstr "MD5FINGERPRINT" #: ../gui/gnomint.glade.h:133 msgid "" "Maximum number of months before expiration of the new generated certificates:" msgstr "Nombre màxim de mesos abans de la caducitat dels nous certificats:" #: ../gui/gnomint.glade.h:134 msgid "Months before certificate expiration:" msgstr "Mesos abans de la caducitat del certificat:" #: ../gui/gnomint.glade.h:135 msgid "Months before root certificate expiration:" msgstr "Mesos abans de la caducitat del certificat arrel:" #: ../gui/gnomint.glade.h:136 msgid "New CA - gnoMint" msgstr "Nova CA - gnoMint" #: ../gui/gnomint.glade.h:137 msgid "New CRL - gnoMint" msgstr "Nova CRL - gnoMint" #: ../gui/gnomint.glade.h:138 msgid "New Certificate - gnoMint" msgstr "Nou certificat - gnoMint" #: ../gui/gnomint.glade.h:139 msgid "New Diffie-Hellman parameters - gnoMint" msgstr "Nous paràmetres Diffie-Hellman - gnoMint" #: ../gui/gnomint.glade.h:140 msgid "" "New certificate \n" "Common Name (CN):" msgstr "" "Nom comú (CN) del\n" "nou certificat:" #: ../gui/gnomint.glade.h:142 msgid "New certificate request - gnoMint" msgstr "Nova sol·licitud de certificació - gnoMint" #: ../gui/gnomint.glade.h:143 ../src/certificate_properties.c:348 #: ../src/tls.c:1046 msgid "Non repudiation" msgstr "No repudi" #: ../gui/gnomint.glade.h:144 ../src/certificate_properties.c:1129 #: ../src/tls.c:1080 msgid "OCSP signing" msgstr "Signatura d'OCSP" #: ../gui/gnomint.glade.h:145 msgid "Only the private key (crypted)." msgstr "Només la clau privada (xifrada)." #: ../gui/gnomint.glade.h:146 msgid "Only the private key (uncrypted)." msgstr "Només la clau privada (sense xifrar)." #: ../gui/gnomint.glade.h:147 msgid "Only the pu_blic part." msgstr "Només la part pú_blica" #: ../gui/gnomint.glade.h:148 msgid "Open _recents" msgstr "Obrir _recents" #: ../gui/gnomint.glade.h:149 msgid "Open an existing database" msgstr "Obrir una base de dades existent" #: ../gui/gnomint.glade.h:150 msgid "Organization" msgstr "Organització" #: ../gui/gnomint.glade.h:151 msgid "Organization (O)" msgstr "Organització (O)" #: ../gui/gnomint.glade.h:152 msgid "Organization Unit:" msgstr "Unitat organitzativa:" #: ../gui/gnomint.glade.h:153 msgid "Organization:" msgstr "Organització:" #: ../gui/gnomint.glade.h:154 msgid "Organizational Unit (OU)" msgstr "Unitat organitzativa (OU)" #: ../gui/gnomint.glade.h:155 msgid "Organizational unit" msgstr "Unitat organitzativa" #: ../gui/gnomint.glade.h:156 msgid "Password (confirm):" msgstr "Contrasenya (confirmar):" #: ../gui/gnomint.glade.h:157 msgid "Password protect" msgstr "Protegir amb contrasenya" #: ../gui/gnomint.glade.h:158 msgid "Password:" msgstr "Contrasenya:" #: ../gui/gnomint.glade.h:159 msgid "Please, choose the file:" msgstr "Seleccioneu el fitxer:" #: ../gui/gnomint.glade.h:160 msgid "Please, choose the more suitable option for what you want to import:" msgstr "" "Seleccioneu la opció més adient que representi allò que vol importar:" #: ../gui/gnomint.glade.h:161 msgid "" "Please, choose which part of the saved certificate you want to export:" msgstr "Seleccioneu quina part emmagatzemada del certificat voleu exportar:" #: ../gui/gnomint.glade.h:162 msgid "" "Please, enter current\n" "password:" msgstr "" "Introduïu la contrasenya \n" "actual:" #: ../gui/gnomint.glade.h:164 msgid "" "Please, enter new \n" "password:" msgstr "" "Introduïu la nova\n" "contrasenya:" #: ../gui/gnomint.glade.h:166 msgid "Please, enter password" msgstr "Introduïu la contrasenya" #: ../gui/gnomint.glade.h:167 msgid "Please, enter password:" msgstr "Introduïu la contrasenya:" #: ../gui/gnomint.glade.h:168 msgid "Please, enter the prime size, in bits:" msgstr "Introduïu la mida del nombre primer, en bits:" #: ../gui/gnomint.glade.h:169 msgid "" "Please, select the CA for which a Certificate \n" "Revocation List is going to be created:" msgstr "" "Seleccioneu la CA per a la qual es crearà \n" "una CRL (llista de revocació de certificats)" #: ../gui/gnomint.glade.h:171 msgid "Private key bit length:" msgstr "Mida en bits de la clau privada:" #: ../gui/gnomint.glade.h:172 msgid "Private key type:" msgstr "Tipus de clau privada:" #: ../gui/gnomint.glade.h:173 msgid "" "Protect CA database private \n" "keys with password:" msgstr "" "Protegeix les claus privades de la base \n" "de dades de la CA amb una contrasenya:" #: ../gui/gnomint.glade.h:175 msgid "" "Protect CA database private keys\n" "with password:" msgstr "" "Protegeix amb una contrasenya les claus privades\n" "de la base de dades de la CA:" #: ../gui/gnomint.glade.h:177 msgid "RSA" msgstr "RSA" #: ../gui/gnomint.glade.h:178 msgid "Remember this password during this gnoMint session" msgstr "Recorda aquesta contrasenya durant aquesta sessió de gnoMint" #: ../gui/gnomint.glade.h:179 msgid "Revo_ke" msgstr "Revo_ca" #: ../gui/gnomint.glade.h:180 msgid "Revoke" msgstr "Revoca" #: ../gui/gnomint.glade.h:181 msgid "Revoke the selected certificate" msgstr "Revoca el certificat seleccionat" #: ../gui/gnomint.glade.h:182 msgid "Revokes the selected certificate" msgstr "Revoca el certificat seleccionat" #: ../gui/gnomint.glade.h:183 msgid "Root certificate prop" msgstr "Prop. del certificat arrel" #: ../gui/gnomint.glade.h:184 msgid "SHA1 fingerprint" msgstr "Empremta digital SHA1" #: ../gui/gnomint.glade.h:185 msgid "SHA1FINGERPRINT" msgstr "SHA1FINGERPRINT" #: ../gui/gnomint.glade.h:186 msgid "Serial number" msgstr "Número de sèrie" #: ../gui/gnomint.glade.h:187 msgid "Shows the CSR properties window" msgstr "" "Mostra la finestra de propietats de la sol·licitud de signatura del " "certificat" #: ../gui/gnomint.glade.h:188 msgid "Shows the certificate properties window" msgstr "Mostra la finestra de propietats del certificat" #: ../gui/gnomint.glade.h:189 msgid "Sign" msgstr "Signa" #: ../gui/gnomint.glade.h:190 msgid "Sign the selected Certificate Signing Request" msgstr "Signa la sol·licitud de certificació seleccionada" #: ../gui/gnomint.glade.h:191 msgid "State or Province name" msgstr "Nom de l'estat o província" #: ../gui/gnomint.glade.h:192 msgid "State or Province name: " msgstr "Nom de l'estat o província: " #: ../gui/gnomint.glade.h:193 msgid "SubjectCN" msgstr "Nom habitual (CN)" #: ../gui/gnomint.glade.h:194 msgid "SubjectO" msgstr "Organització (O)" #: ../gui/gnomint.glade.h:195 msgid "SubjectOU" msgstr "Unitat organitzacional (OU)" #: ../gui/gnomint.glade.h:196 msgid "TLS Web client" msgstr "Client WWW TLS" #: ../gui/gnomint.glade.h:197 msgid "TLS Web server" msgstr "Servidor web TLS" #: ../gui/gnomint.glade.h:198 msgid "" "The whole selected file, or some of its elements, seems to be cyphered using " "a password or passphrase.\n" "\n" "For importing the file into gnoMint database, you must provide an appropiate " "password." msgstr "" "Tot el fitxer seleccionat, o algun dels elements que el conformen, sembla " "haver estat xifrat amb una contrasenya.\n" "\n" "A fi d'importar el fitxer a la base de dades de gnoMint, ha de proporcionar " "la contrasenya adient." #: ../gui/gnomint.glade.h:201 msgid "" "This action requires using one or more private keys saved in the CA " "database.\n" "\n" "Please insert the database password." msgstr "" "Aquesta acció requereix emprar una o més claus privades emmagatzemades en la " "base de dades de la AC.\n" "\n" "Introduïu la contrasenya de la base de dades." #: ../gui/gnomint.glade.h:204 ../src/certificate_properties.c:1128 #: ../src/tls.c:1078 msgid "Time stamping" msgstr "Marca horària" #: ../gui/gnomint.glade.h:205 msgid "" "You are about to create and export a set of Diffie·Hellman parameters " "into a PKCS#3 structure file." msgstr "" "Ara es crearà i s'exportarà un conjunt de paràmetres Diffie-Hellman a un " "fitxer amb format PKCS#3." #: ../gui/gnomint.glade.h:206 msgid "" "You are about to sign a Certificate Signing Request, and this way, creating " "a new certificate. Please check the certificate properties." msgstr "" "Ara es signarà una petició de signatura de certificat (CSR), creant un nou " "certificat. Comproveu les propietats del certificat." #: ../gui/gnomint.glade.h:207 msgid "" "You are about to sign a Certificate Signing Request. Please, choose the " "Certification Authority you are going to use for signing it." msgstr "" "Ara es signarà una petició de signatura de certificat (CSR). Escolliu " "l'Entitat Certificadora (CA) que s'emprarà per a signar-la." #: ../gui/gnomint.glade.h:208 msgid "_Add self-signed CA" msgstr "_Afegir entitat certificadora (CA) auto-signada" #: ../gui/gnomint.glade.h:209 msgid "_Certificates" msgstr "_Certificats" #: ../gui/gnomint.glade.h:210 msgid "_Edit" msgstr "_Edita" #: ../gui/gnomint.glade.h:211 msgid "_Help" msgstr "A_juda" #: ../gui/gnomint.glade.h:212 msgid "_Import" msgstr "_Importa" #: ../gui/gnomint.glade.h:213 msgid "_New certificate database" msgstr "_Nova base de dades de certificats" #: ../gui/gnomint.glade.h:214 msgid "_No" msgstr "_No" #: ../gui/gnomint.glade.h:215 msgid "_Open certificate database" msgstr "_Obre una base de dades de certificats" #: ../gui/gnomint.glade.h:216 msgid "_Revoked Certificates" msgstr "Certificats _revocats" #: ../gui/gnomint.glade.h:217 msgid "_Save certificate database as..." msgstr "Anomena i De_sa la base de dades..." #: ../gui/gnomint.glade.h:218 msgid "_Save filename in the database for automatic loading" msgstr "" "_Desa el nom del fitxer a la base de dades per carregar-lo automàticament" #: ../gui/gnomint.glade.h:219 msgid "_Sign" msgstr "_Signa" #: ../gui/gnomint.glade.h:220 msgid "_View" msgstr "_Visualitza" #: ../gui/gnomint.glade.h:221 msgid "_Yes" msgstr "_Sí" #: ../gui/gnomint.glade.h:222 msgid "gnoMint" msgstr "gnoMint" #: ../gui/gnomint.glade.h:223 msgid "gtk-cancel" msgstr "Cancel·la" #: ../gui/gnomint.glade.h:224 msgid "gtk-ok" msgstr "D'acord" #: ../gui/gnomint.glade.h:225 msgid "label" msgstr "etiqueta" #: ../gui/gnomint.glade.h:226 msgid "may differ" msgstr "pot variar" #: ../gui/gnomint.glade.h:227 msgid "must be the same" msgstr "ha de coincidir" #: ../gui/gnomint.glade.h:228 msgid "page 3" msgstr "pàgina 3" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "Gestiona CAs i certificats X.509, fàcilment i de forma gràfica" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "Gestor de CAs X.509 gnoMint." #: ../src/ca.c:147 msgid "Certificates" msgstr "Certificats" #: ../src/ca.c:263 msgid "Certificate Signing Requests" msgstr "Sol·licituds de signatura de certificats" #: ../src/ca.c:304 ../src/ca-cli-callbacks.c:168 ../src/ca-cli-callbacks.c:178 #: ../src/ca-cli-callbacks.c:189 ../src/ca-cli-callbacks.c:547 #: ../src/ca-cli-callbacks.c:551 ../src/ca-cli-callbacks.c:1162 #: ../src/ca-cli-callbacks.c:1166 ../src/certificate_properties.c:178 #: ../src/certificate_properties.c:183 msgid "%m/%d/%Y %R GMT" msgstr "%d/%m/%Y %R GMT" #: ../src/ca.c:448 ../src/certificate_properties.c:531 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "Persona certificada" #: ../src/ca.c:483 msgid "Serial" msgstr "Núm. de sèrie" #: ../src/ca.c:490 msgid "Activation" msgstr "Activació" #: ../src/ca.c:497 msgid "Expiration" msgstr "Venciment" #: ../src/ca.c:504 msgid "Revocation" msgstr "Revocació" #: ../src/ca.c:791 msgid "Export certificate" msgstr "Exporta certificat" #: ../src/ca.c:798 msgid "Export certificate signing request" msgstr "Exporta sol·licitud de signatura de certificat" #: ../src/ca.c:813 ../src/ca.c:849 ../src/ca.c:859 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "Hi ha hagut un error al exportar el certificat." #: ../src/ca.c:815 ../src/ca.c:851 ../src/ca.c:861 msgid "There was an error while exporting CSR." msgstr "" "Ha hagut un error al exportar la sol·licitud de signatura de certificat " "(CSR)," #: ../src/ca.c:874 ../src/ca.c:1040 msgid "Certificate exported successfully" msgstr "Certificat exportat amb èxit." #: ../src/ca.c:881 msgid "Certificate signing request exported successfully" msgstr "Sol·licitud de signatura de certificat exportada amb èxit." #: ../src/ca.c:900 msgid "Export crypted private key" msgstr "Exporta la clau privada xifrada" #: ../src/ca.c:929 ../src/ca.c:981 msgid "Private key exported successfully" msgstr "Clau privada exportada amb èxit." #: ../src/ca.c:951 msgid "Export uncrypted private key" msgstr "Exporta la clau privada sense xifrar" #: ../src/ca.c:1002 msgid "Export whole certificate in PKCS#12 package" msgstr "Exporta tot el certificat en un paquet PKCS#12" #: ../src/ca.c:1073 msgid "Export CSR - gnoMint" msgstr "Exporta sol·licitud de signatura de certificat (CSR) - gnoMint" #: ../src/ca.c:1078 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" "Seleccioneu quina part de la sol·licitud de signatura de certificat (CSR) " "voleu exportar:" #: ../src/ca.c:1083 msgid "" "Export the Certificate Signing Request to a public file, in PEM " "format." msgstr "" "Exporta la sol·licitud de signatura de certificat a un fitxer públic en " "format PEM" #: ../src/ca.c:1088 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" "Exporta la clau privada emmagatzemada a un fitxer PKCS#8 protegit amb " "contrasenya. Aquest fitxer només ha de ser accessible pel titular de la " "sol·licitud de signatura del certificat." #: ../src/ca.c:1146 msgid "Unexpected error" msgstr "Error inesperat" #: ../src/ca.c:1196 msgid "Are you sure you want to revoke this certificate?" msgstr "Esteu segur que voleu revocar aquest certificat?" #: ../src/ca.c:1235 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "" "Esteu segur que voleu eliminar aquesta sol·licitud de signatura de " "certificat (CSR)?" #: ../src/ca.c:1512 msgid "Change CA password - gnoMint" msgstr "Canvia la contrasenya de la CA - gnoMint" #: ../src/ca.c:1530 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" "La contrasenya introduïda no es correspon amb la contrasenya real de la base " "de dades." #: ../src/ca.c:1545 msgid "Error while changing database password. The operation was cancelled." msgstr "" "S'ha produït un error al canviar la contrasenya de la base de dades. S'ha " "cancel·lat la operació." #: ../src/ca.c:1554 msgid "Password changed successfully" msgstr "Contrasenya canviada correctament" #: ../src/ca.c:1564 ../src/ca-cli-callbacks.c:1002 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "" "S'ha produït un error al establir la contrasenya de la base de dades. S'ha " "cancel·lat la operació." #: ../src/ca.c:1574 msgid "Password established successfully" msgstr "La contrasenya s'ha establert amb èxit" #: ../src/ca.c:1584 msgid "Error while removing database password. The operation was cancelled." msgstr "" "S'ha produït un error al eliminar la contrasenya de la base de dades. S'ha " "cancel·lat la operació." #: ../src/ca.c:1593 msgid "Password removed successfully" msgstr "La contrasenya s'ha eliminat amb èxit" #: ../src/ca.c:1731 msgid "Save Diffie-Hellman parameters" msgstr "Desa paràmetres Diffie-Hellman" #: ../src/ca.c:1757 msgid "Diffie-Hellman parameters saved successfully" msgstr "Paràmetres Diffie-Hellman desats correctament" #. Import single file #: ../src/ca.c:1826 msgid "Select PEM file to import" msgstr "Seleccioneu el fitxer PEM a importar" #: ../src/ca.c:1847 #, c-format msgid "Problem when importing '%s' file" msgstr "S'han produït problemes al importar el fitxer '%s'" #: ../src/ca.c:1860 msgid "Select directory to import" msgstr "Seleccioneu el directori a importar" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "newdb " #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "" "Tanca el fitxer actual i crea una nova base de dades amb el nom del fitxer " "indicat" #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "opendb " #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "Tanca el fitxer actual i obre el fitxer amb el nom indicat" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "savedbas " #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "Desa el fitxer actual amb un nom diferent" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "Obtén l'estat actual (fitxer obert, nombre de certificats, etc..)" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "" "Llista els certificats de la base de dades. Amb la opció --see-revoked, " "llista també els certificats revocats." #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "" "Llista les sol·licituds de signatura de certificats (CSR) existents a la " "base de dades" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "add-csr [id-de-la-CA-per-heretar-camps]" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "" "Comença un nou procés de creació de sol·licitud de signatura de certificat " "(CSR)" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "" "Inicia un nou procés de creació d'Entitat Certificadora (CA) auto-signada" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "extractcertpkey " #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" "Extreure la clau privada del certificat amb l'identificador intern " "proporcionat i desar-la al fitxer indicat." #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "extractcsrpkey " #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" "Extreure la clau privada de la CSR amb l'identificador indicat i " "emmagatzemar-la en el fitxer proporcionat." #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "revoke " #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "Revoca el certificat amb l'identificador proporcionat" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "sign " #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "Genera un certificat firmant el CSR proporcionat amb la CA indicada" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "delete " #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "" "Esborra la sol·licitud de signatura del certificat indicada de la base de " "dades" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "crlgen " #: ../src/ca-cli.c:55 msgid "" "Generate a new CRL for the given CA, saving it into the file " msgstr "" "Genera un nou CRL per la CA indicada, desant-lo al fitxer " #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "dhgen " #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" "Genera un nou conjunt de paràmetres DH, desant-lo al fitxer " #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "Canvia la contrasenya de la base de dades actual" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "importfile " #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "Importa el fitxer amb el nom indicat" #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "importdir " #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "" "Importa el directori indicat, interpretant-lo com el directori d'una CA " "realitzada amb OpenSSL" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "showcert " #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "Mostra propietats del certificat indicat" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "showcsr " #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "" "Mostra propietats de la sol·licitud de signatura del certificat indicada" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "showpolicy " #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "Mostra la política de la CA" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "setpolicy " #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "Canvia la política indicada de la CA" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "Mostra les preferències del programa" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "setpreference " #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "Estableix la preferència del programa indicada" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "Mostra el missatge \"Quant al...\"" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "Mostra informació de la garantia" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "Mostra informació sobre la distribució del programa" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "Mostra informació de la versió" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "Mostra (aquest) missatge d'ajuda" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "Tanca la base de dades i surt del programa" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "Obrint la base de dades %s..." #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr " D'acord.\n" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr " Error.\n" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" "\n" "\n" "%s versió %s\n" "%s\n" "\n" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" "Aquest programa es proporciona SENSE QUALSEVOL TIPUS DE GARANTIA; per més\n" "detalls, teclegi 'warranty'.\n" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" "Aquest programa és software lliure; se li anima a distribuir-lo sota " "determinades\n" "condicions; teclegi 'distribution' per a més detalls.\n" "\n" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "Error: Cometes desaparellades\n" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" "Ordre no vàlida. Teclegi 'help' per aconseguir una llista d'ordres " "reconegudes.\n" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "Nombre incorrecte de paràmetres\n" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "Sintaxi: %s\n" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "El fitxer ja existeix, se sobreescriurà." #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:638 msgid "Are you sure? Yes/[No] " msgstr "Esteu segur? Sí/[No] " #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "" "S'han produït problemes al obrir la nova base de dades de la CA '%s'\n" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "S'ha obert el fitxer '%s'\n" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "S'han produït problemes al obrir la base de dades de la CA '%s'\n" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "Fitxer obert actualment: %s\n" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "Nombre de certificats al fitxer: %d\n" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "Nombre de CSRs en el fitxer: %d\n" #: ../src/ca-cli-callbacks.c:140 #, c-format msgid "CertList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:143 msgid "CertList IsCA|Y\t" msgstr "" #: ../src/ca-cli-callbacks.c:145 msgid "CertList IsCA|N\t" msgstr "" #: ../src/ca-cli-callbacks.c:150 #, c-format msgid "CertList Subject|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:153 msgid "CertList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:155 msgid "CertList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:158 msgid "CertList PKeyInDB|Y\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:160 msgid "CertList PKeyInDB|N\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:164 msgid "CertList Activation|\t" msgstr "" #: ../src/ca-cli-callbacks.c:169 #, c-format msgid "CertList Activation|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:174 msgid "CertList Expiration|\t" msgstr "" #: ../src/ca-cli-callbacks.c:179 #, c-format msgid "CertList Expiration|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:185 msgid "CertList Revocation|\n" msgstr "" #: ../src/ca-cli-callbacks.c:190 #, c-format msgid "CertList Revocation|%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:207 #, c-format msgid "Certificates in Database:\n" msgstr "Certificats a la base de dades:\n" #: ../src/ca-cli-callbacks.c:208 #, c-format msgid "" "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "" #: ../src/ca-cli-callbacks.c:211 #, c-format msgid "\t\tRevocation\n" msgstr "\t\tRevocació\n" #: ../src/ca-cli-callbacks.c:221 #, c-format msgid "CsrList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "CsrList ParentID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 msgid "CsrList ParentID|\t" msgstr "" #: ../src/ca-cli-callbacks.c:228 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "" #: ../src/ca-cli-callbacks.c:231 msgid "CsrList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:233 msgid "CsrList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:236 msgid "CsrList PKeyInDB|Y\n" msgstr "" #: ../src/ca-cli-callbacks.c:238 msgid "CsrList PKeyInDB|N\n" msgstr "" #: ../src/ca-cli-callbacks.c:246 #, c-format msgid "Certificate Requests in Database:\n" msgstr "Sol·licituds de certificat a la base de dades:\n" #: ../src/ca-cli-callbacks.c:247 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "Id.\tId. pare\tTitular de la CSR\t\tClau en BD?\n" #: ../src/ca-cli-callbacks.c:275 ../src/ca-cli-callbacks.c:945 #: ../src/ca-cli-callbacks.c:1310 ../src/ca-cli-callbacks.c:1339 msgid "The given CA id. is not valid" msgstr "L'identificador de la CA proporcionat no és vàlid" #: ../src/ca-cli-callbacks.c:328 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "" "Introduïu les dades corresponents al titular de la sol·licitud de signatura " "del certificat:\n" #: ../src/ca-cli-callbacks.c:330 ../src/ca-cli-callbacks.c:453 msgid "Enter country (C)" msgstr "Introduïu el país (C)" #: ../src/ca-cli-callbacks.c:336 ../src/ca-cli-callbacks.c:459 msgid "Enter state or province (ST)" msgstr "Introduïu el nom de l'estat o la província (ST)" #: ../src/ca-cli-callbacks.c:342 ../src/ca-cli-callbacks.c:465 msgid "Enter locality or city (L)" msgstr "Introduïu la localitat o la ciutat (L)" #: ../src/ca-cli-callbacks.c:348 ../src/ca-cli-callbacks.c:471 msgid "Enter organization (O)" msgstr "Introduïu l'organització (O)" #: ../src/ca-cli-callbacks.c:354 ../src/ca-cli-callbacks.c:477 msgid "Enter organizational unit (OU)" msgstr "Introduïu la Unitat organitzativa (OU)" #: ../src/ca-cli-callbacks.c:360 ../src/ca-cli-callbacks.c:483 msgid "Enter common name (CN)" msgstr "Introduïu Nom habitual (CN)" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:493 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "Introduïu el tipus de clau que es crearà (RSA/DSA)" #: ../src/ca-cli-callbacks.c:382 ../src/ca-cli-callbacks.c:505 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "Introduïu la mida de la clau en bits (múltiple de 1024)" #: ../src/ca-cli-callbacks.c:386 #, c-format msgid "These are the provided CSR properties:\n" msgstr "Aquestes són les propietats de la CSR proporcionada:\n" #: ../src/ca-cli-callbacks.c:388 ../src/ca-cli-callbacks.c:526 #: ../src/ca-cli-callbacks.c:1152 ../src/ca-cli-callbacks.c:1204 #, c-format msgid "Subject:\n" msgstr "Titular:\n" #: ../src/ca-cli-callbacks.c:389 ../src/ca-cli-callbacks.c:527 #, c-format msgid "\tDistinguished Name: " msgstr "\tNom distintiu: " #: ../src/ca-cli-callbacks.c:403 ../src/ca-cli-callbacks.c:541 #, c-format msgid "Key pair\n" msgstr "Parella de claus\n" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:542 #, c-format msgid "\tType: %s\n" msgstr "\tTipus: %s\n" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:543 #, c-format msgid "\tKey bitlength: %d\n" msgstr "\tLongitud en bits: %d\n" #: ../src/ca-cli-callbacks.c:407 ../src/ca-cli-callbacks.c:554 msgid "Do you want to change anything? Yes/[No] " msgstr "Voleu canviar quelcom? Sí/[No] " #: ../src/ca-cli-callbacks.c:411 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "" "Ara es crearà una petició de signatura del certificat (CSR) amb aquestes " "propietats." #: ../src/ca-cli-callbacks.c:412 ../src/ca-cli-callbacks.c:559 msgid "Are you sure? [Yes]/No " msgstr "Esteu segur [Sí]/No " #: ../src/ca-cli-callbacks.c:417 ../src/ca-cli-callbacks.c:564 #: ../src/ca-cli-callbacks.c:648 ../src/ca-cli-callbacks.c:779 #: ../src/ca-cli-callbacks.c:902 ../src/ca-cli-callbacks.c:931 #: ../src/ca-cli-callbacks.c:997 ../src/ca-cli-callbacks.c:1024 #: ../src/ca-cli-callbacks.c:1052 ../src/ca-cli-callbacks.c:1067 #: ../src/ca-cli-callbacks.c:1369 ../src/ca-cli-callbacks.c:1412 #, c-format msgid "Operation cancelled.\n" msgstr "Operació cancel·lada\n" #: ../src/ca-cli-callbacks.c:451 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "" "Introduïu les dades corresponents al titular de la nova Entitat " "Certificadora (CA):\n" #: ../src/ca-cli-callbacks.c:510 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" "Introduïu el nombre de mesos abans la caducitat de la nova Entitat " "certificadora" #: ../src/ca-cli-callbacks.c:524 #, c-format msgid "These are the provided new CA properties:\n" msgstr "Aquestes són les propietats proporcionades per a la nova CA:\n" #: ../src/ca-cli-callbacks.c:544 #, c-format msgid "Validity\n" msgstr "Validesa\n" #: ../src/ca-cli-callbacks.c:545 ../src/ca-cli-callbacks.c:1160 #, c-format msgid "Validity:\n" msgstr "Validesa:\n" #: ../src/ca-cli-callbacks.c:548 ../src/ca-cli-callbacks.c:1163 #, c-format msgid "\tActivated on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:552 ../src/ca-cli-callbacks.c:1167 #, c-format msgid "\tExpires on: %s\n" msgstr "\tCaduca el: %s\n" #: ../src/ca-cli-callbacks.c:558 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "" "Es crearà una nova Entitat certificadora (CA) amb aquestes propietats." #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:632 #: ../src/ca-cli-callbacks.c:1137 msgid "The given certificate id. is not valid" msgstr "L'identificador de certificat proporcionat no és vàlid" #: ../src/ca-cli-callbacks.c:591 ../src/ca-cli-callbacks.c:615 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "Clau privada extreta amb èxit al fitxer: '%s'\n" #: ../src/ca-cli-callbacks.c:608 ../src/ca-cli-callbacks.c:760 #: ../src/ca-cli-callbacks.c:915 ../src/ca-cli-callbacks.c:1193 msgid "The given CSR id. is not valid" msgstr "L'identificador de la CSR proporcionat no és vàlid" #: ../src/ca-cli-callbacks.c:638 msgid "This certificate will be revoked." msgstr "Aquest certificat serà revocat." #: ../src/ca-cli-callbacks.c:644 #, c-format msgid "Certificate revoked.\n" msgstr "Certificat revocat.\n" #: ../src/ca-cli-callbacks.c:658 ../src/ca-cli-callbacks.c:1174 #, c-format msgid "Certificate uses:\n" msgstr "Usos del certificat:\n" #: ../src/ca-cli-callbacks.c:661 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "* Ús com a entitat certificadora habilitat.\n" #: ../src/ca-cli-callbacks.c:663 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "* Ús com a entitat certificadora deshabilitat.\n" #: ../src/ca-cli-callbacks.c:667 #, c-format msgid "* CRL signing use enabled.\n" msgstr "* Ús per a la firma de CRLs habilitat.\n" #: ../src/ca-cli-callbacks.c:669 #, c-format msgid "* CRL signing use disabled.\n" msgstr "* Ús per a la firma de CRLs deshabilitat.\n" #: ../src/ca-cli-callbacks.c:673 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "* Ús per a la signatura digital habilitat.\n" #: ../src/ca-cli-callbacks.c:675 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "* Ús per a la signatura digital deshabilitat.\n" #: ../src/ca-cli-callbacks.c:679 ../src/ca-cli-callbacks.c:681 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "Ús per al xifrat de dades habilitat.\n" #: ../src/ca-cli-callbacks.c:685 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "Ús per al xifrat de claus habilitat.\n" #: ../src/ca-cli-callbacks.c:687 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "Ús per al xifrat de claus deshabilitat.\n" #: ../src/ca-cli-callbacks.c:691 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "Ús per al no repudi habilitat.\n" #: ../src/ca-cli-callbacks.c:693 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "Ús per al no repudi deshabilitat.\n" #: ../src/ca-cli-callbacks.c:697 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "Ús per a la negociació de claus habilitat.\n" #: ../src/ca-cli-callbacks.c:699 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "Ús per a la negociació de claus deshabilitat.\n" #: ../src/ca-cli-callbacks.c:702 #, c-format msgid "Certificate purposes:\n" msgstr "Finalitats del certificat:\n" #: ../src/ca-cli-callbacks.c:705 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "* Finalitat per a la protecció del correu electrònic habilitat.\n" #: ../src/ca-cli-callbacks.c:707 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "* Finalitat per a la protecció del correu electrònic deshabilitat.\n" #: ../src/ca-cli-callbacks.c:711 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "* Finalitat per a la firma de codi habilitada.\n" #: ../src/ca-cli-callbacks.c:713 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "* Finalitat per a la firma de codi deshabilitada.\n" #: ../src/ca-cli-callbacks.c:717 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "* Finalitat de client web TLS habilitada.\n" #: ../src/ca-cli-callbacks.c:719 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "* Finalitat de client web TLS deshabilitada.\n" #: ../src/ca-cli-callbacks.c:723 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "* Finalitat de servidor web TLS habilitada.\n" #: ../src/ca-cli-callbacks.c:725 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "* Finalitat de servidor web TLS deshabilitada.\n" #: ../src/ca-cli-callbacks.c:729 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "* Finalitat de marca horària habilitada.\n" #: ../src/ca-cli-callbacks.c:731 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "* Finalitat de marca horària deshabilitada.\n" #: ../src/ca-cli-callbacks.c:735 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "* Finalitat de signatura OCSP habilitada.\n" #: ../src/ca-cli-callbacks.c:737 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "* Finalitat de signatura OCSP deshabilitada.\n" #: ../src/ca-cli-callbacks.c:741 #, c-format msgid "* Any purpose enabled.\n" msgstr "* Qualsevol finalitat habilitada.\n" #: ../src/ca-cli-callbacks.c:743 #, c-format msgid "* Any purpose disabled.\n" msgstr "* Qualsevol finalitat deshabilitada.\n" #: ../src/ca-cli-callbacks.c:767 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "" "Ara es signarà la següent petició de signatura de certificat (CSR):\n" #: ../src/ca-cli-callbacks.c:769 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "amb el certificat corresponent a aquesta CA:\n" #: ../src/ca-cli-callbacks.c:772 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" "Màxim nombre de mesos abans de la caducitat del nou certificat (0 per a " "cancel·lar):" #: ../src/ca-cli-callbacks.c:782 #, c-format msgid "" "The certificate will be generated with the following uses and purposes:\n" msgstr "Aquest certificat s'habilitarà per als següents usos i finalitats:\n" #: ../src/ca-cli-callbacks.c:800 ../src/ca-cli-callbacks.c:888 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "El nou certificat es validarà per als següents usos i finalitats:\n" #: ../src/ca-cli-callbacks.c:803 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "Desitgeu canviar alguna propietat del nou certificat? Sí/[No] " #: ../src/ca-cli-callbacks.c:806 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "* Habilitar ús com Entitat certificadora? [Sí]/No " #: ../src/ca-cli-callbacks.c:808 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "* Ús com a Entitat certificadora deshabilitat per una directiva\n" #: ../src/ca-cli-callbacks.c:812 msgid "* Enable CRL Signing? [Yes]/No " msgstr "* Habilitar ús per a la signatura de CRL? [Sí]/No " #: ../src/ca-cli-callbacks.c:814 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "* Ús per a la signatura de CRL deshabilitat per una directiva\n" #: ../src/ca-cli-callbacks.c:818 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "* Habilitar l'ús per a la signatura digital? [Sí]/No " #: ../src/ca-cli-callbacks.c:820 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "* Ús per a la signatura digital deshabilitat per una directiva\n" #: ../src/ca-cli-callbacks.c:824 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "Habilitar l'ús per al xifratge de dades? [Sí]/No " #: ../src/ca-cli-callbacks.c:826 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "* Ús per al xifratge de dades deshabilitat per una directiva\n" #: ../src/ca-cli-callbacks.c:830 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "Habilitar l'ús per al xifrat de claus? [Sí]/No " #: ../src/ca-cli-callbacks.c:832 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "* Ús per al xifratge de claus deshabilitat per una directiva\n" #: ../src/ca-cli-callbacks.c:836 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "Habilitar l'ús per al no repudi? [Sí]/No " #: ../src/ca-cli-callbacks.c:838 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "* Ús per al no repudi deshabilitat per una directiva\n" #: ../src/ca-cli-callbacks.c:842 msgid "Enable Key Agreement use? [Yes]/No " msgstr "Habilitar l'ús per a negociació de claus? [Sí]/No " #: ../src/ca-cli-callbacks.c:844 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "* Ús per a la negociació de claus deshabilitat per una directiva\n" #: ../src/ca-cli-callbacks.c:848 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "Habilitar la finalitat de protecció de correu electrònic? [Sí]/No " #: ../src/ca-cli-callbacks.c:850 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "" "* Finalitat de protecció del correu electrònic deshabilitada per una " "directiva.\n" #: ../src/ca-cli-callbacks.c:854 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "Habilitar la finalitat de signatura de codi? [Sí]/No " #: ../src/ca-cli-callbacks.c:856 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "* Finalitat de signatura de codi deshabilitada per una directiva.\n" #: ../src/ca-cli-callbacks.c:860 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "Habilitar la finalitat de client web TLS? [Sí]/No " #: ../src/ca-cli-callbacks.c:862 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "* Finalitat de client web TLS deshabilitada per una directiva\n" #: ../src/ca-cli-callbacks.c:866 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "Habilitar la finalitat de servidor web TLS? [Sí]/No " #: ../src/ca-cli-callbacks.c:868 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "* Finalitat de servidor web TLS deshabilitada per una directiva\n" #: ../src/ca-cli-callbacks.c:872 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "Habilitat la finalitat de marcatge temporal? [Sí]/No " #: ../src/ca-cli-callbacks.c:874 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "Finalitat de marcatge temporal deshabilitada per una directiva\n" #: ../src/ca-cli-callbacks.c:878 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "Habilitar la finalitat per a la signatura d'OCSP? [Sí]/No " #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "" "* Finalitat per a la signatura d'OCSP deshabilitada per una directiva\n" #: ../src/ca-cli-callbacks.c:883 msgid "Enable any purpose? [Yes]/No " msgstr "Habilitar l'ús per a qualsevol finalitat? [Sí]/No " #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "" "* L'ús per a qualsevol finalitat s'ha deshabilitat amb una directiva.\n" #: ../src/ca-cli-callbacks.c:893 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "" "S'ha obtingut tota la informació necessària per la generació del certificat." #: ../src/ca-cli-callbacks.c:893 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "" "Voleu continuar amb la signatura i generació del certificat? [Sí]/No " #: ../src/ca-cli-callbacks.c:899 #, c-format msgid "Certificate signed.\n" msgstr "Certificat signat.\n" #: ../src/ca-cli-callbacks.c:921 msgid "This Certificate Signing Request will be deleted." msgstr "La sol·licitud de signatura de certificat (CSR) s'esborrarà." #: ../src/ca-cli-callbacks.c:921 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "Aquesta operació no pot desfer-se. Esteu segur? Sí/[No] " #: ../src/ca-cli-callbacks.c:927 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "Sol·licitud de signatura de certificat esborrada.\n" #: ../src/ca-cli-callbacks.c:952 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "CRL generada amb èxit i desada al fitxer '%s'\n" #: ../src/ca-cli-callbacks.c:969 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "" "La longitud en bits del nombre primer ha de ser múltiple enter de 1024" #: ../src/ca-cli-callbacks.c:978 #, c-format msgid "" "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "" "Els paràmetres Diffie-Hellman s'han creat i s'han desat correctament al " "fitxer '%s'\n" #: ../src/ca-cli-callbacks.c:990 msgid "Currently, the database is not password-protected." msgstr "Actualment la base de dades no es troba protegida per contrasenya." #: ../src/ca-cli-callbacks.c:990 msgid "Do you want to password protect it? [Yes]/No " msgstr "Desitgeu protegir-la amb contrasenya? [Sí]/No " #: ../src/ca-cli-callbacks.c:991 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" "D'acord. Cal proporcionar una contrasenya per a protegir les claus privades " "a\n" "la base de dades, per tal que només les persones autoritzades puguin fer\n" "ús d'elles. Aquesta contrasenya serà sol·licitada cada vegada que gnoMint " "faci ús de\n" "qualsevol clau privada a la base de dades." #: ../src/ca-cli-callbacks.c:994 msgid "Insert password:" msgstr "Introduïu la contrasenya:" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password (confirm):" msgstr "Torneu a introduir la contrasenya:" #: ../src/ca-cli-callbacks.c:995 ../src/ca-cli-callbacks.c:1065 msgid "The introduced passwords are distinct." msgstr "Les contrasenyes introduïdes són diferents." #: ../src/ca-cli-callbacks.c:1006 #, c-format msgid "Password established successfully.\n" msgstr "Contrasenya establerta amb èxit.\n" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Nothing done.\n" msgstr "No s'ha fet res.\n" #: ../src/ca-cli-callbacks.c:1017 msgid "Currently, the database IS password-protected." msgstr "Actualment la base de dades ESTÀ protegida amb contrasenya." #: ../src/ca-cli-callbacks.c:1017 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "Desitgeu eliminar aquesta protecció amb contrasenya? Sí/[No] " #: ../src/ca-cli-callbacks.c:1021 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" "Per eliminar la protecció amb contrasenya, heu de proporcionar la \n" "contrasenya actual.\n" #: ../src/ca-cli-callbacks.c:1022 ../src/ca-cli-callbacks.c:1050 msgid "Please, insert the current database password (Empty to cancel): " msgstr "" "Introduïu la contrasenya actual de la base de dades (Buida per a " "cancel·lar): " #: ../src/ca-cli-callbacks.c:1029 ../src/ca-cli-callbacks.c:1057 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" "La contrasenya actual introduïda\n" "no coincideix amb la contrasenya real de la base de dades." #: ../src/ca-cli-callbacks.c:1034 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" "S'ha produït un error al eliminar la contrasenya de\n" "la base de dades. S'ha cancel·lat l'operació." #: ../src/ca-cli-callbacks.c:1039 #, c-format msgid "Password removed successfully.\n" msgstr "Contrasenya eliminada amb èxit.\n" #: ../src/ca-cli-callbacks.c:1049 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "" "Ha de proporcionar la contrasenya actual de la base de dades abans de " "canviar-la.\n" #: ../src/ca-cli-callbacks.c:1061 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" "D'acord. Heu de proporcionar una nova contrasenya per protegir les claus " "privades a \n" "la base de dades, per tal que només les persones autoritzades puguin fer-les " "servir.\n" "Aquesta contrasenya es demanarà sempre que gnoMint faci ús d'alguna clau\n" "privada a la base de dades." #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password:" msgstr "Introduïu la nova contrasenya:" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password (confirm):" msgstr "Torneu a introduïr la contrasenya:" #: ../src/ca-cli-callbacks.c:1073 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" "S'ha produït un error al canviar la contrasenya de la base de dades. \n" "S'ha cancel·lat la operació" #: ../src/ca-cli-callbacks.c:1079 #, c-format msgid "Password changed successfully.\n" msgstr "La contrasenya s'ha canviat amb èxit.\n" #: ../src/ca-cli-callbacks.c:1097 msgid "Problem when importing the given file." msgstr "S'han produït problemes en importar el fitxer indicat." #: ../src/ca-cli-callbacks.c:1100 #, c-format msgid "File imported successfully.\n" msgstr "Fitxer importat amb èxit.\n" #: ../src/ca-cli-callbacks.c:1116 #, c-format msgid "Directory imported successfully.\n" msgstr "Directori importat amb èxit.\n" #: ../src/ca-cli-callbacks.c:1145 #, c-format msgid "Certificate:\n" msgstr "Certificat:\n" #: ../src/ca-cli-callbacks.c:1149 #, c-format msgid "\tSerial number: %s\n" msgstr "\tNúm. de sèrie: %s\n" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1157 #: ../src/ca-cli-callbacks.c:1205 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "\tNom distintiu (DN): %s\n" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1154 #: ../src/ca-cli-callbacks.c:1157 ../src/ca-cli-callbacks.c:1158 msgid "None." msgstr "Cap." #: ../src/ca-cli-callbacks.c:1154 ../src/ca-cli-callbacks.c:1158 #: ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tUnique ID: %s\n" msgstr "\tIdentificador únic: %s\n" #: ../src/ca-cli-callbacks.c:1156 #, c-format msgid "Issuer:\n" msgstr "Emissor:\n" #: ../src/ca-cli-callbacks.c:1169 #, c-format msgid "Fingerprints:\n" msgstr "Empremtes digitals:\n" #: ../src/ca-cli-callbacks.c:1170 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "\tEmpremta digital SHA1: %s\n" #: ../src/ca-cli-callbacks.c:1171 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "\tEmpremta digital MD5: %s\n" #: ../src/ca-cli-callbacks.c:1202 #, c-format msgid "Certificate Signing Request:\n" msgstr "Sol·licitud de signatura de certificat:\n" #: ../src/ca-cli-callbacks.c:1275 msgid "Generated certs inherit Country from CA " msgstr "" "Els certificats generats hereten el país de la CA " #: ../src/ca-cli-callbacks.c:1276 msgid "Generated certs inherit State from CA " msgstr "" "Els certificats generats hereten l'estat/província de la CA " " " #: ../src/ca-cli-callbacks.c:1277 msgid "Generated certs inherit Locality from CA " msgstr "" "Els certificats generats hereten localitat o ciutat de la CA " " " #: ../src/ca-cli-callbacks.c:1278 msgid "Generated certs inherit Organization from CA " msgstr "" "Els certificats generats hereten l'Organització de la CA " " " #: ../src/ca-cli-callbacks.c:1279 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" "Els certificats generats hereten la unitat organitzacional de la CA " " " #: ../src/ca-cli-callbacks.c:1280 msgid "Country in generated certs must be the same than in CA " msgstr "" "El país dels certificats generats ha de coincidir amb la CA " #: ../src/ca-cli-callbacks.c:1281 msgid "State in generated certs must be the same than in CA " msgstr "" "L'Estat o província dels cert. generats ha de coincidir amb la CA " " " #: ../src/ca-cli-callbacks.c:1282 msgid "Locality in generated certs must be the same than in CA " msgstr "" "La localitat o ciutat dels cert. generats ha de coincidir amb la CA " " " #: ../src/ca-cli-callbacks.c:1283 msgid "Organization in generated certs must be the same than in CA " msgstr "" "L'organització dels cert. generats ha de coincidir amb la de la CA " #: ../src/ca-cli-callbacks.c:1284 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "" "La Unitat Organitzativa dels cert. generats ha de coincidir amb la CA" #: ../src/ca-cli-callbacks.c:1285 msgid "Maximum number of hours between CRL updates " msgstr "" "Nombre màxim d'hores entre actualitzacions de CRLs " #: ../src/ca-cli-callbacks.c:1286 msgid "Maximum number of months before expiration of new certs " msgstr "" "Num. màxim de mesos abans de la caducitat dels nous certificats " #: ../src/ca-cli-callbacks.c:1287 msgid "CA use enabled in generated certs " msgstr "" "Habilitar l'ús com a CA en els certificats generats " " " #: ../src/ca-cli-callbacks.c:1288 msgid "CRL Sign use enabled in generated certs " msgstr "" "Habilitar l'ús per a signatura de CRLs en els certificats generats " " " #: ../src/ca-cli-callbacks.c:1289 msgid "Non reputation use enabled in generated certs " msgstr "" "Habilitar l'ús per al no repudi en els certificats generats " " " #: ../src/ca-cli-callbacks.c:1290 msgid "Digital signature use enabled in generated certs " msgstr "" "Habilita l'ús per a la signatura digital en els cert. generats " " " #: ../src/ca-cli-callbacks.c:1291 msgid "Key encipherment use enabled in generated certs " msgstr "" "Habilita l'ús per al xifratge de claus en els cert. generats " " " #: ../src/ca-cli-callbacks.c:1292 msgid "Key agreement use enabled in generated certs " msgstr "" "Habilita l'ús per a la negociació de claus en els cert. generats " " " #: ../src/ca-cli-callbacks.c:1293 msgid "Data encipherment use enabled in generated certs " msgstr "" "Habilita l'ús per al xifratge de dades en els cert. generats " " " #: ../src/ca-cli-callbacks.c:1294 msgid "TLS web server purpose enabled in generated certs " msgstr "" "Habilita la finalitat de servidor web TLS per als cert. generats " " " #: ../src/ca-cli-callbacks.c:1295 msgid "TLS web client purpose enabled in generated certs " msgstr "" "Habilita la finalitat de client web TLS per als cert. generats " " " #: ../src/ca-cli-callbacks.c:1296 msgid "Time stamping purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1297 msgid "Code signing server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1298 msgid "Email protection purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1299 msgid "OCSP signing purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1300 msgid "Any purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1314 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1316 #, c-format msgid "" "\n" "Policies:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1318 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1344 msgid "The given policy id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1356 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1360 ../src/ca-cli-callbacks.c:1404 msgid "Are you sure? Yes/[No] : " msgstr "" #: ../src/ca-cli-callbacks.c:1365 #, c-format msgid "Policy set correctly to '%d'.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1379 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1381 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1382 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "" #: ../src/ca-cli-callbacks.c:1394 msgid "The given preference id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1400 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1422 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1423 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1424 ../src/ca-cli-callbacks.c:1425 #: ../src/main.c:502 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " David Marín https://launchpad.net/~davefx\n" " Sergio Oller https://launchpad.net/~zeehio" #: ../src/ca-cli-callbacks.c:1425 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1432 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1450 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1465 #, c-format msgid "%s version %s\n" msgstr "%s versió %s\n" #: ../src/ca-cli-callbacks.c:1474 #, c-format msgid "Available commands:\n" msgstr "Ordres disponibles:\n" #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "===================\n" msgstr "===================\n" #: ../src/ca-cli-callbacks.c:1485 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "" #: ../src/ca_creation.c:144 msgid "CA generated successfully" msgstr "" #: ../src/ca_file.c:196 #, c-format msgid "Error opening filename '%s'" msgstr "" #: ../src/ca_file.c:299 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" #: ../src/ca_file.c:1311 msgid "Cannot find parent CA in database" msgstr "" #: ../src/ca_file.c:1499 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "" #: ../src/ca_file.c:1930 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" #: ../src/ca_file.c:1933 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" #: ../src/certificate_properties.c:356 ../src/tls.c:1054 msgid "Certificate signing" msgstr "" #: ../src/certificate_properties.c:360 msgid "Key encipherment only" msgstr "" #: ../src/certificate_properties.c:362 msgid "Key decipherment only" msgstr "" #: ../src/certificate_properties.c:376 msgid "Version" msgstr "Versió" #: ../src/certificate_properties.c:411 msgid "Serial Number" msgstr "Número de sèrie" #: ../src/certificate_properties.c:427 ../src/certificate_properties.c:1060 msgid "Signature" msgstr "Signatura" #: ../src/certificate_properties.c:430 ../src/certificate_properties.c:558 #: ../src/certificate_properties.c:561 ../src/certificate_properties.c:1027 msgid "Algorithm" msgstr "Algorisme" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:594 ../src/certificate_properties.c:622 #: ../src/certificate_properties.c:1030 msgid "Parameters" msgstr "Paràmetres" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:622 ../src/certificate_properties.c:624 #: ../src/certificate_properties.c:635 ../src/certificate_properties.c:644 #: ../src/certificate_properties.c:1031 msgid "(unknown)" msgstr "(desconegut)" #: ../src/certificate_properties.c:465 msgid "Issuer" msgstr "Emissor" #: ../src/certificate_properties.c:493 msgid "Validity" msgstr "Validesa" #: ../src/certificate_properties.c:496 msgid "Not Before" msgstr "" #: ../src/certificate_properties.c:499 msgid "Not After" msgstr "" #: ../src/certificate_properties.c:555 msgid "Subject Public Key Info" msgstr "Informació de clau pública de l'assumpte" #: ../src/certificate_properties.c:568 msgid "RSA PublicKey" msgstr "" #: ../src/certificate_properties.c:578 msgid "Modulus" msgstr "" #: ../src/certificate_properties.c:584 msgid "Public Exponent" msgstr "Exponent públic" #: ../src/certificate_properties.c:617 msgid "DSA PublicKey" msgstr "" #: ../src/certificate_properties.c:624 msgid "Subject Public Key" msgstr "" #: ../src/certificate_properties.c:635 msgid "Issuer Unique ID" msgstr "Identificador únic de l'emissor" #: ../src/certificate_properties.c:644 msgid "Subject Unique ID" msgstr "Identificador únic de l'assumpte" #: ../src/certificate_properties.c:666 ../src/certificate_properties.c:689 #: ../src/certificate_properties.c:758 ../src/certificate_properties.c:862 #: ../src/certificate_properties.c:890 ../src/certificate_properties.c:930 #: ../src/certificate_properties.c:987 ../src/certificate_properties.c:1112 msgid "Value" msgstr "Valor" #: ../src/certificate_properties.c:728 ../src/certificate_properties.c:832 msgid "DNS Name" msgstr "" #: ../src/certificate_properties.c:733 ../src/certificate_properties.c:837 msgid "RFC822 Name" msgstr "" #: ../src/certificate_properties.c:738 ../src/certificate_properties.c:842 msgid "URI" msgstr "URI" #: ../src/certificate_properties.c:744 msgid "IP" msgstr "IP" #: ../src/certificate_properties.c:751 ../src/certificate_properties.c:855 msgid "Directory Name" msgstr "Nom del directori" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "TRUE" msgstr "VERDADER" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "FALSE" msgstr "FALS" #: ../src/certificate_properties.c:790 msgid "CA" msgstr "" #: ../src/certificate_properties.c:794 msgid "Path Length Constraint" msgstr "" #: ../src/certificate_properties.c:848 msgid "IP Address" msgstr "Adreça IP" #: ../src/certificate_properties.c:963 msgid "Extensions" msgstr "Extensions" #: ../src/certificate_properties.c:972 msgid "Critical" msgstr "" #: ../src/certificate_properties.c:1000 msgid "Certificate" msgstr "Certificat" #: ../src/certificate_properties.c:1025 msgid "Signature Algorithm" msgstr "Algorisme de la signatura" #: ../src/certificate_properties.c:1108 msgid "Name" msgstr "Nom" #: ../src/certificate_properties.c:1124 ../src/tls.c:1070 msgid "TLS WWW Server" msgstr "" #: ../src/certificate_properties.c:1125 msgid "TLS WWW Client" msgstr "" #: ../src/certificate_properties.c:1131 msgid "Subject Directory Attributes" msgstr "" #: ../src/certificate_properties.c:1132 msgid "Subject Key Identifier" msgstr "" #: ../src/certificate_properties.c:1133 msgid "Key Usage" msgstr "" #: ../src/certificate_properties.c:1134 msgid "Private Key Usage Period" msgstr "" #: ../src/certificate_properties.c:1135 msgid "Subject Alternative Name" msgstr "" #: ../src/certificate_properties.c:1136 msgid "Basic Constraints" msgstr "" #: ../src/certificate_properties.c:1137 msgid "Name Constraints" msgstr "" #: ../src/certificate_properties.c:1138 msgid "CRL Distribution Points" msgstr "" #: ../src/certificate_properties.c:1139 msgid "Certificate Policies" msgstr "" #: ../src/certificate_properties.c:1140 msgid "Policy Mappings" msgstr "" #: ../src/certificate_properties.c:1141 msgid "Authority Key Identifier" msgstr "" #: ../src/certificate_properties.c:1142 msgid "Policy Constraints" msgstr "" #: ../src/certificate_properties.c:1143 msgid "Extended Key Usage" msgstr "" #: ../src/certificate_properties.c:1144 msgid "Delta CRL Distribution Point" msgstr "" #: ../src/certificate_properties.c:1145 msgid "Inhibit Any-Policy" msgstr "" #: ../src/creation_process_window.c:79 msgid "CA creation process finished" msgstr "" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "" #: ../src/creation_process_window.c:274 msgid "Creating Certificate Signing Request" msgstr "" #: ../src/crl.c:250 msgid "Export Certificate Revocation List" msgstr "" #: ../src/crl.c:280 msgid "CRL generated successfully" msgstr "" #: ../src/crl.c:309 ../src/crl.c:371 ../src/crl.c:382 msgid "There was an error while exporting CRL." msgstr "" #: ../src/crl.c:320 msgid "There was an error while getting revoked certificates." msgstr "" #: ../src/crl.c:336 ../src/crl.c:355 msgid "There was an error while generating CRL." msgstr "" #: ../src/crl.c:363 msgid "There was an error while writing CRL." msgstr "" #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "" #: ../src/csr_properties.c:78 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" #: ../src/dialog.c:79 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" #: ../src/dialog.c:103 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "" #: ../src/dialog.c:104 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "" #: ../src/dialog.c:372 msgid "To do. Feature not implemented yet." msgstr "" #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "" #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "" #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "" #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "" #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "" #: ../src/export.c:110 msgid "Operation cancelled." msgstr "" #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "" #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "" #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "" #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "" #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "" #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "" #: ../src/gnomint-cli.c:59 ../src/main.c:129 #, c-format msgid "Failed to initialize: %s\n" msgstr "" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "" #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "" #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "" #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "" #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "" #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "" #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "" #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "" #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "" #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "" #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" #: ../src/main.c:126 msgid "- A graphical Certification Authority manager" msgstr "" #: ../src/main.c:285 msgid "Create new CA database" msgstr "" #: ../src/main.c:323 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" #: ../src/main.c:336 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "" #: ../src/main.c:357 msgid "Open CA database" msgstr "" #: ../src/main.c:380 ../src/main.c:420 #, c-format msgid "Problem when opening '%s' CA database" msgstr "" #: ../src/main.c:445 msgid "Save CA database as..." msgstr "" #: ../src/main.c:497 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" #: ../src/main.c:498 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" #: ../src/new_cert.c:329 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:335 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:341 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:347 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:353 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:799 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" #: ../src/new_cert.c:815 msgid "Error while signing CSR." msgstr "" #: ../src/pkey_manage.c:80 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" #: ../src/pkey_manage.c:125 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" #: ../src/pkey_manage.c:171 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:187 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:191 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" #. The file cannot be opened #: ../src/pkey_manage.c:196 msgid "The file designated in database couldn't be opened." msgstr "" #. The file doesn't exist #: ../src/pkey_manage.c:201 msgid "The file designated in database doesn't exist." msgstr "" #: ../src/pkey_manage.c:760 ../src/pkey_manage.c:811 msgid "The given password doesn't match the one used in the database" msgstr "" #: ../src/pkey_manage.c:798 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" #: ../src/pkey_manage.c:799 msgid "Please insert the database password:" msgstr "" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "" #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:553 ../src/tls.c:855 #, c-format msgid "Error exporting private key to PEM structure." msgstr "" #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "" #: ../src/tls.c:441 ../src/tls.c:689 #, c-format msgid "Error when setting certificate version" msgstr "" #: ../src/tls.c:451 ../src/tls.c:702 #, c-format msgid "Error when setting certificate serial number" msgstr "" #: ../src/tls.c:460 ../src/tls.c:711 #, c-format msgid "Error when setting activation time" msgstr "" #: ../src/tls.c:465 ../src/tls.c:719 #, c-format msgid "Error when setting expiration time" msgstr "" #: ../src/tls.c:511 ../src/tls.c:768 #, c-format msgid "Error when setting basicConstraint extension" msgstr "" #: ../src/tls.c:516 ../src/tls.c:810 #, c-format msgid "Error when setting keyUsage extension" msgstr "" #: ../src/tls.c:527 ../src/tls.c:784 #, c-format msgid "Error when setting subject key identifier extension" msgstr "" #: ../src/tls.c:531 ../src/tls.c:758 #, c-format msgid "Error when setting authority key identifier extension" msgstr "" #: ../src/tls.c:541 #, c-format msgid "Error when signing self-signed certificate" msgstr "" #: ../src/tls.c:571 #, c-format msgid "Error when initializing csr structure" msgstr "" #: ../src/tls.c:575 #, c-format msgid "Error when setting csr version" msgstr "" #: ../src/tls.c:608 #, c-format msgid "Error when signing self-signed csr" msgstr "" #: ../src/tls.c:619 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "" #: ../src/tls.c:673 #, c-format msgid "Error when initializing crt structure" msgstr "" #: ../src/tls.c:681 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "" #: ../src/tls.c:840 #, c-format msgid "Error when signing certificate" msgstr "S'ha produït un error signant el certificat" #: ../src/tls.c:1058 msgid "Key encipher only" msgstr "Clau per només xifrar" #: ../src/tls.c:1060 msgid "Key decipher only" msgstr "Clau només per desxifrar" #: ../src/tls.c:1072 msgid "TLS WWW Client." msgstr "Client TLS WWW" gnomint-1.3.0/po/fr.po0000664000175000017500000031030112672052326011501 00000000000000# French translations for gnomint package. # Copyright (C) 2007 THE gnomint'S COPYRIGHT HOLDER # This file is distributed under the same license as the gnomint package. # Ahmed , 2007. # msgid "" msgstr "" "Project-Id-Version: gnomint 0.4.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-06-03 23:09+0200\n" "PO-Revision-Date: 2010-06-01 20:04+0000\n" "Last-Translator: David Marín \n" "Language-Team: French\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-08-11 09:00+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "Exportation automatique des certificats à partir de gnome-keyring" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "Affichage des Requêtes de Signature de Certificat" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "Affichage des certificats révoqués" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" "La taille (largeur,hauteur) que gnoMint doit avoir au démarrage. Ne peut pas " "être inférieure à (320,200)." #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "Si les Requêtes de Signature de Certificat doivent être affichées." #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" "Si le certificats créés ou importés sont exportés automatiquement vers la " "base de données de certificats de gnome-keyring." #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "Si les certificats révoqués doivent être affichés." #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "Taille de fenêtre" #: ../gui/gnomint.glade.h:1 msgid " " msgstr " " #: ../gui/gnomint.glade.h:2 msgid "CSR subject" msgstr "Titulaire de la Requête de Signature de Certificat" #: ../gui/gnomint.glade.h:3 msgid "Certificate fields" msgstr "Champs du certificat" #: ../gui/gnomint.glade.h:4 msgid "Certificate hierarchy" msgstr "Hiérarchie des certificats" #: ../gui/gnomint.glade.h:5 msgid "Certificate purposes" msgstr "Applications du certificat" #: ../gui/gnomint.glade.h:6 msgid "Certificate subject" msgstr "Titulaire du certificat" #: ../gui/gnomint.glade.h:7 msgid "Certificate uses" msgstr "Utilisations du certificat" #: ../gui/gnomint.glade.h:8 msgid "Emmited by" msgstr "Émis par" #: ../gui/gnomint.glade.h:9 msgid "Fingerprints" msgstr "Empreintes numériques" #: ../gui/gnomint.glade.h:10 msgid "Inherited fields from CA subject" msgstr "Champs hérités du titulaire de l'Autorité de Certification" #: ../gui/gnomint.glade.h:11 msgid "Purposes of new generated certificates" msgstr "Applications des nouveaux certificats générés" #: ../gui/gnomint.glade.h:12 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in the internal database." msgstr "" "La clé privée associée à cette Requête de Signature de Certificat est " "sauvegardée dans la base de données interne." #: ../gui/gnomint.glade.h:13 msgid "This certificate has been verified for the following uses:" msgstr "Ce certificat a été vérifié pour les utilisations suivantes :" #: ../gui/gnomint.glade.h:14 msgid "Uses of new generated certificates" msgstr "Utilisations des nouveaux certificats générés" #: ../gui/gnomint.glade.h:15 msgid "Validity" msgstr "Validité" #: ../gui/gnomint.glade.h:16 msgid "New Certificate Revocation List" msgstr "Nouvelle Liste de Révocation de Certificats" #: ../gui/gnomint.glade.h:17 msgid "CA Properties\n" msgstr "Propriétés de l'Autorité de Certification\n" #: ../gui/gnomint.glade.h:19 msgid "CA Root certificate properties\n" msgstr "" "Propriétés du certificat racine de l'Autorité de Certification\n" #: ../gui/gnomint.glade.h:21 msgid "Certificate Request Properties\n" msgstr "Propriétés de la Requête de Signature de Certificat\n" #: ../gui/gnomint.glade.h:23 msgid "" "Choose private key file\n" "\n" "For doing the selected operation, you must provide the file where resides " "the private key corresponding to the certificate:" msgstr "" "Sélectionnez le fichier de la clé privée\n" "\n" "Pour effectuer l'opération sélectionnée, vous devez fournir le fichier qui " "contient la clé privée correspondant au certificat :" #: ../gui/gnomint.glade.h:26 msgid "New Certificate Properties\n" msgstr "Propriétés du nouveau certificat\n" #: ../gui/gnomint.glade.h:28 msgid "Password protection\n" msgstr "Protection par mot de passe\n" #: ../gui/gnomint.glade.h:30 msgid "" "Export both (private and public) parts to a password-protected PKCS#12 " "file. This kind of file can be imported by other common programs, such as " "web or mail clients." msgstr "" "Exporter et la partie privée et la partie publique vers un fichier " "protégé par mot de passe au format PKCS#12. Ce type de fichier peut être " "importé par d'autres programmes courants, comme les lecteurs de courrier et " "les navigateurs web." #: ../gui/gnomint.glade.h:31 msgid "Export only the certificate to a public file, in PEM format." msgstr "" "Exporter seulement le certificat vers un fichier public au format PEM." #: ../gui/gnomint.glade.h:32 msgid "" "Export the saved private key to a PEM file. This option should only be " "used for exporting certificates that will be used in unattended servers." msgstr "" "Exporter la clé privée vers un fichier au format PEM. Cette option ne " "doit pas être utilisée que pour exporter les certificats utilisés par des " "serveurs autonomes." #: ../gui/gnomint.glade.h:33 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the certificate." msgstr "" "Exporter la clé privée au format PKCS#8 vers un fichier protégé par mot " "de passe. Ce fichier ne doit être accessible que par le titulaire du " "certificat." #: ../gui/gnomint.glade.h:34 msgid "" "Import a directory containing the structure of\n" "a whole CA made with OpenSSL ." msgstr "" "Importer un répertoire contenant la structure de l'intégralité\n" "d'une Autorité de Certification faite avec OpenSSL." #: ../gui/gnomint.glade.h:36 msgid "" "Import a single file, encoded in DER or PEM format, containing " "certificates, private keys (encrypted or plain), signing requests (CSRs), " "revocation lists (CRLs) or PKCS#12 packages." msgstr "" "Importer un seul fichier, encodé au format DER ou PEM, contenant des " "certificats, des clés privées (chiffrées ou en clair), des Requêtes de " "Signature de Certificats, des Listes de Révocation de Certificats ou des " "paquets au format PKCS#12." #: ../gui/gnomint.glade.h:37 msgid "" "\n" "It is recommended that all the certificates generated by a CA share the same " "properties.\n" "If you want to generate certificates with different properties, you should " "create a hierarchy of CAs, each one with its own policy for certificate " "generation.\n" "\n" "Please, define the maximum set of properties for the certificates that this " "CA will be able to generate:\n" msgstr "" "\n" "Il est recommandé que tous les certificats générés par une Autorité de " "Certification partagent les mêmes propriétés.\n" "Si vous souhaitez générer des certificats avec des propriétés différentes, " "vous devriez créer une hiérarchie d'Autorités de Certifications, chacune " "avec sa propre stratégie de génération de certificats.\n" "\n" "Veuillez définir l'ensemble de propriétés maximum pour les certificats que " "cette Autorité de Certification pourra générer :\n" #: ../gui/gnomint.glade.h:43 msgid "#Description#" msgstr "#Description#" #: ../gui/gnomint.glade.h:44 msgid "" "PKCS#3 files containing Diffie·Hellman parameters are used by " "some cryptographic \n" "applications for a secure interchange of their keys over insecure " "channels." msgstr "" "Les fichiers au format PKCS#3 contenant des paramètres " "Diffie·Hellman sont utilisés par \n" "des applications de cryptographie pour sécuriser les échanges de clés via " "des canaux non sécurisés." #: ../gui/gnomint.glade.h:46 msgid "" "The part that is being imported has the description:" msgstr "La partie qui est importée a la description :" #: ../gui/gnomint.glade.h:47 msgid "" "The subject of the new certificate request can inherit information " "from one of the existing Certification Authorities. This is a must if the " "policy of the CA you are going to use is defined to force some fields of a " "certificate subject to be the same as the ones in the CA cert " "subject." msgstr "" #: ../gui/gnomint.glade.h:48 msgid "Activated on" msgstr "Émis le" #: ../gui/gnomint.glade.h:49 msgid "Add CSR" msgstr "Ajouter une CSR" #: ../gui/gnomint.glade.h:50 msgid "Add _Certificate Request" msgstr "Ajouter une Requête de Signature de _Certificat" #: ../gui/gnomint.glade.h:51 msgid "Add a new Certificate Signing Request" msgstr "Ajouter une nouvelle Requête de Signature de Certificat" #: ../gui/gnomint.glade.h:52 msgid "Add an autosigned CA" msgstr "Ajouter une Autorité de Certification auto-signée" #: ../gui/gnomint.glade.h:53 msgid "Add autosigned CA certificate" msgstr "Ajouter un certificat d'Autorité de Certification auto-signée" #: ../gui/gnomint.glade.h:54 ../src/certificate_properties.c:1130 #: ../src/tls.c:1082 msgid "Any purpose" msgstr "Toute application" #: ../gui/gnomint.glade.h:55 msgid "" "Automatically export created certificates to \n" "Gnome-keyring certificate store" msgstr "" "Exporter automatiquement les certificats créés\n" "vers la base de données de gnome-keyring" #: ../gui/gnomint.glade.h:57 msgid "Both parts." msgstr "Les deux parties." #: ../gui/gnomint.glade.h:58 msgid "CA Policy" msgstr "Stratégie de l'Autorité de Certification" #: ../gui/gnomint.glade.h:59 msgid "" "CA Root Certificate \n" "Common Name (CN):" msgstr "" "Nom commun (CN) du certificat racine \n" "de l'Autorité de Certification :" #: ../gui/gnomint.glade.h:61 msgid "CA properties" msgstr "Proptiétés de l'Autorité de Certification" #: ../gui/gnomint.glade.h:62 msgid "CACN" msgstr "CACN" #: ../gui/gnomint.glade.h:63 msgid "CAO" msgstr "CAO" #: ../gui/gnomint.glade.h:64 msgid "CAOU" msgstr "CAOU" #: ../gui/gnomint.glade.h:65 ../src/certificate_properties.c:358 #: ../src/tls.c:1056 msgid "CRL signing" msgstr "Signature de Liste de Révocation de Certificats" #: ../gui/gnomint.glade.h:66 msgid "CSR properties - gnoMint" msgstr "Propriétés de la CSR - gnoMint" #: ../gui/gnomint.glade.h:67 msgid "CertActivationDate" msgstr "CertActivationDate" #: ../gui/gnomint.glade.h:68 msgid "CertExpirationDate" msgstr "CertExpirationDate" #: ../gui/gnomint.glade.h:69 msgid "CertSN" msgstr "CertSN" #: ../gui/gnomint.glade.h:70 msgid "" "Certificate \n" "Common Name (CN):" msgstr "" "Nom commun \n" "du certificat (CN) :" #: ../gui/gnomint.glade.h:72 msgid "Certificate DN" msgstr "DN du certificat" #: ../gui/gnomint.glade.h:73 msgid "Certificate _Signing Requests" msgstr "Requêtes de _Signature de Certificat" #: ../gui/gnomint.glade.h:74 msgid "Certificate properties" msgstr "Propriétés du certificat" #: ../gui/gnomint.glade.h:75 msgid "Certificate properties - gnoMint" msgstr "Propriétés du certificat - gnoMint" #: ../gui/gnomint.glade.h:76 ../src/tls.c:1039 msgid "Certification Authority" msgstr "Autorité de Certification" #: ../gui/gnomint.glade.h:77 msgid "Change database pass_word" msgstr "Modifier le mot de passe de la base de données" #: ../gui/gnomint.glade.h:78 msgid "Choose CA for signing the CSR" msgstr "Sélectionner la CA pour la signature de la CSR" #: ../gui/gnomint.glade.h:79 msgid "Choose private key file. gnoMint" msgstr "Choisir un fichier de clé privée - gnoMint" #: ../gui/gnomint.glade.h:80 msgid "City" msgstr "Ville" #: ../gui/gnomint.glade.h:81 msgid "City: " msgstr "Ville : " #: ../gui/gnomint.glade.h:82 ../src/certificate_properties.c:1126 #: ../src/tls.c:1074 msgid "Code signing" msgstr "Signature de code" #: ../gui/gnomint.glade.h:83 msgid "Common Name (CN)" msgstr "Nom commun (CN)" #: ../gui/gnomint.glade.h:84 msgid "Country" msgstr "Pays" #: ../gui/gnomint.glade.h:85 msgid "Country:" msgstr "Pays :" #: ../gui/gnomint.glade.h:86 msgid "Create a new database" msgstr "Création d'une nouvelle base de données" #: ../gui/gnomint.glade.h:87 msgid "Creating CA Root Certificate" msgstr "Création du certificat racine de l'Autorité de Certification" #: ../gui/gnomint.glade.h:88 msgid "Creating new CA - gnoMint" msgstr "Création du nouveau CA - gnoMint" #: ../gui/gnomint.glade.h:89 msgid "DSA" msgstr "DSA" #: ../gui/gnomint.glade.h:90 ../src/certificate_properties.c:352 #: ../src/tls.c:1050 msgid "Data encipherment" msgstr "Chiffrement de données" #: ../gui/gnomint.glade.h:91 msgid "Database password protection - gnoMint" msgstr "Protection de la base de données par mot de passe - gnoMint" #: ../gui/gnomint.glade.h:92 msgid "Delete the selected Certificate Signing Request" msgstr "Supprimer le CSR sélectionné" #: ../gui/gnomint.glade.h:93 msgid "Details" msgstr "Détails" #: ../gui/gnomint.glade.h:94 ../src/certificate_properties.c:346 #: ../src/tls.c:1044 msgid "Digital signature" msgstr "Signature numérique" #: ../gui/gnomint.glade.h:95 msgid "Don't inherit any fields from existing Certification Authorities" msgstr "" "N'hériter d'aucun champ provenant d'Autorités de Certification existantes" #: ../gui/gnomint.glade.h:96 msgid "E_xport" msgstr "E_xporter" #: ../gui/gnomint.glade.h:97 ../src/certificate_properties.c:1127 #: ../src/tls.c:1076 msgid "Email protection" msgstr "Protection de courriel" #: ../gui/gnomint.glade.h:98 msgid "" "Enter new password again \n" "for confirmation:" msgstr "" "Entrez encore une fois le nouveau \n" "mot de passe (pour confirmation) :" #: ../gui/gnomint.glade.h:100 msgid "Enter password - gnoMint" msgstr "Entrez le mot de passe - gnoMint" #: ../gui/gnomint.glade.h:101 msgid "Enter password again for confirmation:" msgstr "Entrez encore une fois le mot de passe (pour confirmation) :" #: ../gui/gnomint.glade.h:102 msgid "Expires on" msgstr "Expire le" #: ../gui/gnomint.glade.h:103 msgid "Export certificate - gnoMint" msgstr "Exporter le certificat - gnoMint" #: ../gui/gnomint.glade.h:104 msgid "Export options" msgstr "Options d'exportation" #: ../gui/gnomint.glade.h:105 msgid "Exports the CSR so it can be imported by any other application" msgstr "" "Exporte le CSR de sorte qu'il puisse être importé par d'autre applications" #: ../gui/gnomint.glade.h:106 msgid "" "Exports the certificate so it can be imported by any other application" msgstr "" "Exporte le certificat de sorte qu'il puisse être importé par d'autre " "applications" #: ../gui/gnomint.glade.h:107 msgid "Extrac_t private key" msgstr "Ex_traire la clé privée" #: ../gui/gnomint.glade.h:108 msgid "Extract Private Key" msgstr "Extraire la clé privée" #: ../gui/gnomint.glade.h:109 msgid "Extract the private key of the selected item into a external file" msgstr "" "Extraire la clé privée de l'élément sélectionné dans un fichier externe" #: ../gui/gnomint.glade.h:110 msgid "Extract the saved private key to an external file or device" msgstr "" "Extraire la clé privée sauvegardée dans un fichier externe ou un périphérique" #: ../gui/gnomint.glade.h:111 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the CSR will be used" msgstr "" "Extrait la clé privée du certificat \n" "sélectionné dans la base de donnée vers un \n" "fichier externe. Ce fichier doit être fourni \n" "chaque fois que le CSR est utilisé." #: ../gui/gnomint.glade.h:115 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the certificate will be used" msgstr "" "Extrait la clé privée du certificat \n" "sélectionné dans la base de donnée vers un \n" "fichier externe. Ce fichier doit être fourni \n" "chaque fois que le certificat est utilisé." #: ../gui/gnomint.glade.h:119 msgid "General" msgstr "Général" #: ../gui/gnomint.glade.h:120 msgid "General Preferences - gnoMint" msgstr "Préférences générales - gnoMint" #: ../gui/gnomint.glade.h:121 msgid "Generate D_H parameters..." msgstr "Générer les paramètres DH..." #: ../gui/gnomint.glade.h:122 msgid "Generate _CRL" msgstr "Générer une Liste de Révocation de _Certificats" #: ../gui/gnomint.glade.h:123 msgid "Generate the current Certificate Revocation List" msgstr "Génère la Liste de Révocation de Certificats actuels" #: ../gui/gnomint.glade.h:124 msgid "Hours between CRL updates:" msgstr "" "Nombre d'heures entre les mises à jour de la Liste de Révocation de " "Certificats :" #: ../gui/gnomint.glade.h:125 msgid "Import a single file." msgstr "Importer un seul fichier." #: ../gui/gnomint.glade.h:126 msgid "Import a whole directory." msgstr "Importer l'intégralité d'un répertoire." #: ../gui/gnomint.glade.h:127 msgid "Import selection - gnoMint" msgstr "Importer la sélection - gnoMint" #: ../gui/gnomint.glade.h:128 msgid "" "Inherit fields according to selected Certification Authority and its policy." msgstr "" "Hériter des champs en fonction de l'Autorité de Certification sélectionnée " "et de sa stratégie" #: ../gui/gnomint.glade.h:129 ../src/certificate_properties.c:354 #: ../src/tls.c:1052 msgid "Key agreement" msgstr "Agrément de clé" #: ../gui/gnomint.glade.h:130 ../src/certificate_properties.c:350 #: ../src/tls.c:1048 msgid "Key encipherment" msgstr "Chiffrement de clé" #: ../gui/gnomint.glade.h:131 msgid "MD5 fingerprint" msgstr "Empreinte numérique MD5" #: ../gui/gnomint.glade.h:132 msgid "MD5FINGERPRINT" msgstr "MD5FINGERPRINT" #: ../gui/gnomint.glade.h:133 msgid "" "Maximum number of months before expiration of the new generated certificates:" msgstr "" "Nombre maximum de mois avant l'expiration des nouveaux certificat générés :" #: ../gui/gnomint.glade.h:134 msgid "Months before certificate expiration:" msgstr "Nombre de mois avant l'expiration du certificat :" #: ../gui/gnomint.glade.h:135 msgid "Months before root certificate expiration:" msgstr "Nombre de mois avant l'expiration du certificat racine :" #: ../gui/gnomint.glade.h:136 msgid "New CA - gnoMint" msgstr "Nouvelle Requête de Signature de Certificat - gnoMint" #: ../gui/gnomint.glade.h:137 msgid "New CRL - gnoMint" msgstr "Nouvelle Liste de Révocation de Certificats - gnoMint" #: ../gui/gnomint.glade.h:138 msgid "New Certificate - gnoMint" msgstr "Nouveau certificat - gnoMint" #: ../gui/gnomint.glade.h:139 msgid "New Diffie-Hellman parameters - gnoMint" msgstr "Nouveau paramètres Diffie-Hellman - gnoMint" #: ../gui/gnomint.glade.h:140 msgid "" "New certificate \n" "Common Name (CN):" msgstr "" "Nom commun \n" "du nouveau certificat (CN) :" #: ../gui/gnomint.glade.h:142 msgid "New certificate request - gnoMint" msgstr "Nouvelle demande de certificat - gnoMint" #: ../gui/gnomint.glade.h:143 ../src/certificate_properties.c:348 #: ../src/tls.c:1046 msgid "Non repudiation" msgstr "Non-répudiation" #: ../gui/gnomint.glade.h:144 ../src/certificate_properties.c:1129 #: ../src/tls.c:1080 msgid "OCSP signing" msgstr "Signature OCSP" #: ../gui/gnomint.glade.h:145 msgid "Only the private key (crypted)." msgstr "Seulement la clé privée (chiffrée)." #: ../gui/gnomint.glade.h:146 msgid "Only the private key (uncrypted)." msgstr "Seulement la clé privée (non-chiffrée)." #: ../gui/gnomint.glade.h:147 msgid "Only the pu_blic part." msgstr "Seulement la partie pu_blique." #: ../gui/gnomint.glade.h:148 msgid "Open _recents" msgstr "Ouvrir les certificats utilisés _récemment" #: ../gui/gnomint.glade.h:149 msgid "Open an existing database" msgstr "Ouvrir une base de données existante" #: ../gui/gnomint.glade.h:150 msgid "Organization" msgstr "Organisation" #: ../gui/gnomint.glade.h:151 msgid "Organization (O)" msgstr "Organisation (O)" #: ../gui/gnomint.glade.h:152 msgid "Organization Unit:" msgstr "Unité d'organisation :" #: ../gui/gnomint.glade.h:153 msgid "Organization:" msgstr "Organisation :" #: ../gui/gnomint.glade.h:154 msgid "Organizational Unit (OU)" msgstr "Unité d'organisation (OU)" #: ../gui/gnomint.glade.h:155 msgid "Organizational unit" msgstr "Unité d'organisation" #: ../gui/gnomint.glade.h:156 msgid "Password (confirm):" msgstr "Mot de passe (pour confirmation) :" #: ../gui/gnomint.glade.h:157 msgid "Password protect" msgstr "Protection par mot de passe" #: ../gui/gnomint.glade.h:158 msgid "Password:" msgstr "Mot de passe :" #: ../gui/gnomint.glade.h:159 msgid "Please, choose the file:" msgstr "Veuillez choisir le fichier :" #: ../gui/gnomint.glade.h:160 msgid "Please, choose the more suitable option for what you want to import:" msgstr "" "Veuillez sélectionner l'option la mieux adaptée à ce que vous souhaitez " "exporter :" #: ../gui/gnomint.glade.h:161 msgid "" "Please, choose which part of the saved certificate you want to export:" msgstr "" "Veuillez choisir la partie du certificat sauvegardé vous souhaitez exporter :" #: ../gui/gnomint.glade.h:162 msgid "" "Please, enter current\n" "password:" msgstr "" "Veuillez entrer le \n" "mot de passe actuel :" #: ../gui/gnomint.glade.h:164 msgid "" "Please, enter new \n" "password:" msgstr "" "Veuillez entrer le nouveau \n" "mot de passe :" #: ../gui/gnomint.glade.h:166 msgid "Please, enter password" msgstr "Veuillez entrer le mot de passe" #: ../gui/gnomint.glade.h:167 msgid "Please, enter password:" msgstr "Veuillez entrer le mot de passe :" #: ../gui/gnomint.glade.h:168 msgid "Please, enter the prime size, in bits:" msgstr "Veuillez entrer la taille en bits du nombre premier :" #: ../gui/gnomint.glade.h:169 msgid "" "Please, select the CA for which a Certificate \n" "Revocation List is going to be created:" msgstr "" "Veuillez sélectionner l'Autorité de Certification pour laquelle \n" "une Liste de Révocation de Certificats va être crée :" #: ../gui/gnomint.glade.h:171 msgid "Private key bit length:" msgstr "Taille en bits de la clé privée :" #: ../gui/gnomint.glade.h:172 msgid "Private key type:" msgstr "Type de clé privée :" #: ../gui/gnomint.glade.h:173 msgid "" "Protect CA database private \n" "keys with password:" msgstr "" "Protéger les clés privées de la base\n" "de données de l'Autorité de Certification\n" "par un mot de passe :" #: ../gui/gnomint.glade.h:175 msgid "" "Protect CA database private keys\n" "with password:" msgstr "" "Protéger les clés privées de la base\n" "de données de l'Autorité de Certification\n" "par un mot de passe :" #: ../gui/gnomint.glade.h:177 msgid "RSA" msgstr "RSA" #: ../gui/gnomint.glade.h:178 msgid "Remember this password during this gnoMint session" msgstr "Se souvenir du mot de passe pendant la session gnoMint" #: ../gui/gnomint.glade.h:179 msgid "Revo_ke" msgstr "Révo_quer" #: ../gui/gnomint.glade.h:180 msgid "Revoke" msgstr "Révoquer" #: ../gui/gnomint.glade.h:181 msgid "Revoke the selected certificate" msgstr "Révoquer le certificat sélectionné" #: ../gui/gnomint.glade.h:182 msgid "Revokes the selected certificate" msgstr "Révoquer le certificat sélectionné" #: ../gui/gnomint.glade.h:183 msgid "Root certificate prop" msgstr "Propriétés du certificat racine" #: ../gui/gnomint.glade.h:184 msgid "SHA1 fingerprint" msgstr "Empreinte numérique SHA1" #: ../gui/gnomint.glade.h:185 msgid "SHA1FINGERPRINT" msgstr "SHA1FINGERPRINT" #: ../gui/gnomint.glade.h:186 msgid "Serial number" msgstr "Numéro de série" #: ../gui/gnomint.glade.h:187 msgid "Shows the CSR properties window" msgstr "Affiche les propriétés de la CSR" #: ../gui/gnomint.glade.h:188 msgid "Shows the certificate properties window" msgstr "Affiche les propriétés du certificat" #: ../gui/gnomint.glade.h:189 msgid "Sign" msgstr "Signer" #: ../gui/gnomint.glade.h:190 msgid "Sign the selected Certificate Signing Request" msgstr "Signer la CSR sélectionnée" #: ../gui/gnomint.glade.h:191 msgid "State or Province name" msgstr "État ou province" #: ../gui/gnomint.glade.h:192 msgid "State or Province name: " msgstr "État ou province : " #: ../gui/gnomint.glade.h:193 msgid "SubjectCN" msgstr "SubjectCN" #: ../gui/gnomint.glade.h:194 msgid "SubjectO" msgstr "SubjectO" #: ../gui/gnomint.glade.h:195 msgid "SubjectOU" msgstr "SubjectOU" #: ../gui/gnomint.glade.h:196 msgid "TLS Web client" msgstr "Client Web TLS" #: ../gui/gnomint.glade.h:197 msgid "TLS Web server" msgstr "Serveur Web TLS" #: ../gui/gnomint.glade.h:198 msgid "" "The whole selected file, or some of its elements, seems to be cyphered using " "a password or passphrase.\n" "\n" "For importing the file into gnoMint database, you must provide an appropiate " "password." msgstr "" "Le fichier sélectionné, ou certains de ses éléments, semble être crypté à " "l'aide d'un mot de passe.\n" "\n" "Pour importer le fichier dans gnoMint database, vous devez fournir un mot de " "passe approprié." #: ../gui/gnomint.glade.h:201 msgid "" "This action requires using one or more private keys saved in the CA " "database.\n" "\n" "Please insert the database password." msgstr "" #: ../gui/gnomint.glade.h:204 ../src/certificate_properties.c:1128 #: ../src/tls.c:1078 msgid "Time stamping" msgstr "Horodotage" #: ../gui/gnomint.glade.h:205 msgid "" "You are about to create and export a set of Diffie·Hellman parameters " "into a PKCS#3 structure file." msgstr "" "Vous êtes sur le point de créer et d'exporter un jeu de paramètres " "Diffie·Hellman vers un fichier au format PKCS#3." #: ../gui/gnomint.glade.h:206 msgid "" "You are about to sign a Certificate Signing Request, and this way, creating " "a new certificate. Please check the certificate properties." msgstr "" "Vous êtes sur le point de signer une Requête de Signature de Certificat, et " "ainsi, de créer un nouveau certificat. Veuillez vérifier les propriétés du " "certificat." #: ../gui/gnomint.glade.h:207 msgid "" "You are about to sign a Certificate Signing Request. Please, choose the " "Certification Authority you are going to use for signing it." msgstr "" "Vous êtes sur le point de signer une Requête de Signature de Certificat. " "Veuillez choisir l'Autorité de Certification que vous allez utiliser pour la " "signer." #: ../gui/gnomint.glade.h:208 msgid "_Add self-signed CA" msgstr "_Ajouter une Autorité de Certification auto-signée" #: ../gui/gnomint.glade.h:209 msgid "_Certificates" msgstr "_Certificats" #: ../gui/gnomint.glade.h:210 msgid "_Edit" msgstr "_Éditer" #: ../gui/gnomint.glade.h:211 msgid "_Help" msgstr "_Aide" #: ../gui/gnomint.glade.h:212 msgid "_Import" msgstr "_Importer" #: ../gui/gnomint.glade.h:213 msgid "_New certificate database" msgstr "_Nouvelle base de données de certificats" #: ../gui/gnomint.glade.h:214 msgid "_No" msgstr "_Non" #: ../gui/gnomint.glade.h:215 msgid "_Open certificate database" msgstr "_Ouvrir une base de données de certificats" #: ../gui/gnomint.glade.h:216 msgid "_Revoked Certificates" msgstr "Certificats _révoqués" #: ../gui/gnomint.glade.h:217 msgid "_Save certificate database as..." msgstr "_Sauvegarder la base de données de certificats sous..." #: ../gui/gnomint.glade.h:218 msgid "_Save filename in the database for automatic loading" msgstr "_Sauvegarder la clé privée dans la base de données" #: ../gui/gnomint.glade.h:219 msgid "_Sign" msgstr "_Signer" #: ../gui/gnomint.glade.h:220 msgid "_View" msgstr "_Vue" #: ../gui/gnomint.glade.h:221 msgid "_Yes" msgstr "_Oui" #: ../gui/gnomint.glade.h:222 msgid "gnoMint" msgstr "gnoMint" #: ../gui/gnomint.glade.h:223 msgid "gtk-cancel" msgstr "gtk-cancel" #: ../gui/gnomint.glade.h:224 msgid "gtk-ok" msgstr "gtk-ok" #: ../gui/gnomint.glade.h:225 msgid "label" msgstr "étiquette" #: ../gui/gnomint.glade.h:226 msgid "may differ" msgstr "peut varier" #: ../gui/gnomint.glade.h:227 msgid "must be the same" msgstr "doit être identique" #: ../gui/gnomint.glade.h:228 msgid "page 3" msgstr "page 3" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "Gérer des certificats et des CA X.509, facilement et graphiquement" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "Gestionnaire d'Autorité de Certification X.509 gnoMint" #: ../src/ca.c:147 msgid "Certificates" msgstr "Certificats" #: ../src/ca.c:263 msgid "Certificate Signing Requests" msgstr "Demandes en signature de certificat" #: ../src/ca.c:304 ../src/ca-cli-callbacks.c:168 ../src/ca-cli-callbacks.c:178 #: ../src/ca-cli-callbacks.c:189 ../src/ca-cli-callbacks.c:547 #: ../src/ca-cli-callbacks.c:551 ../src/ca-cli-callbacks.c:1162 #: ../src/ca-cli-callbacks.c:1166 ../src/certificate_properties.c:178 #: ../src/certificate_properties.c:183 msgid "%m/%d/%Y %R GMT" msgstr "%d/%m/%Y %R GMT" #: ../src/ca.c:448 ../src/certificate_properties.c:531 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "Titulaire" #: ../src/ca.c:483 msgid "Serial" msgstr "Numéro" #: ../src/ca.c:490 msgid "Activation" msgstr "Activation" #: ../src/ca.c:497 msgid "Expiration" msgstr "Expiration" #: ../src/ca.c:504 msgid "Revocation" msgstr "Révocation" #: ../src/ca.c:791 msgid "Export certificate" msgstr "Exporter un certificat" #: ../src/ca.c:798 msgid "Export certificate signing request" msgstr "Exporter une CSR" #: ../src/ca.c:813 ../src/ca.c:849 ../src/ca.c:859 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "Erreur pendant l'exportation du certificat." #: ../src/ca.c:815 ../src/ca.c:851 ../src/ca.c:861 msgid "There was an error while exporting CSR." msgstr "" "Erreur pendant l'exportation de la Requête de Signature de Certificat." #: ../src/ca.c:874 ../src/ca.c:1040 msgid "Certificate exported successfully" msgstr "Certificat exporté avec succès." #: ../src/ca.c:881 msgid "Certificate signing request exported successfully" msgstr "CSR exporté avec succès." #: ../src/ca.c:900 msgid "Export crypted private key" msgstr "Exporter la clé privée chiffrée" #: ../src/ca.c:929 ../src/ca.c:981 msgid "Private key exported successfully" msgstr "Clé privée exportée avec succès" #: ../src/ca.c:951 msgid "Export uncrypted private key" msgstr "Exporter la clé privée non chiffrée" #: ../src/ca.c:1002 msgid "Export whole certificate in PKCS#12 package" msgstr "" "Exporter l'intégralité du certificat vers un paquet au format PKCS#12" #: ../src/ca.c:1073 msgid "Export CSR - gnoMint" msgstr "Exportation de Requête de Signature de Certificat - gnoMint" #: ../src/ca.c:1078 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" "Veuillez choisir la partie de la Requête de Signature de Certificat " "sauvegardée que vous souhaitez exporter :" #: ../src/ca.c:1083 msgid "" "Export the Certificate Signing Request to a public file, in PEM " "format." msgstr "Exporter la CSR vers un fichier public, au format PEM." #: ../src/ca.c:1088 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" "Exporter la clé privée sauvegardée vers un fichier protégé par mot de " "passe, au format PKCS#8. Ce fichier ne devrait être accessible que par le " "titulaire de la CSR." #: ../src/ca.c:1146 msgid "Unexpected error" msgstr "Erreur inattendue" #: ../src/ca.c:1196 msgid "Are you sure you want to revoke this certificate?" msgstr "Êtes-vous sûr de vouloir révoquer ce certificat ?" #: ../src/ca.c:1235 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "" "Êtes-vous sûr de vouloir supprimer cette Requête de Signature de Certificat ?" #: ../src/ca.c:1512 msgid "Change CA password - gnoMint" msgstr "Modifier le mot de passe de l'Autorité de Certification - gnoMint" #: ../src/ca.c:1530 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" "Le mot de passe que vous venez d'entrer ne correspond pas au mot de passe " "actuel de la base de données." #: ../src/ca.c:1545 msgid "Error while changing database password. The operation was cancelled." msgstr "" "Erreur pendant la modification du mot de passe de la base de données. " "L'opération a été annulée." #: ../src/ca.c:1554 msgid "Password changed successfully" msgstr "Mot de passe modifié avec succès." #: ../src/ca.c:1564 ../src/ca-cli-callbacks.c:1002 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "" "Erreur pendant l'affectationdu mot de passe de la base de données. " "L'opération a été annulée." #: ../src/ca.c:1574 msgid "Password established successfully" msgstr "Mot de passe mis en place avec succès." #: ../src/ca.c:1584 msgid "Error while removing database password. The operation was cancelled." msgstr "" "Erreur pendant la suppression du mot de passe de la base de données. " "L'opération a été annulée." #: ../src/ca.c:1593 msgid "Password removed successfully" msgstr "Mot de passe supprimé avec succès." #: ../src/ca.c:1731 msgid "Save Diffie-Hellman parameters" msgstr "Sauvegarder les paramètres Diffie-Hellman" #: ../src/ca.c:1757 msgid "Diffie-Hellman parameters saved successfully" msgstr "Les paramètres Diffie-Hellman ont été sauvegardés avec succès" #. Import single file #: ../src/ca.c:1826 msgid "Select PEM file to import" msgstr "Choisir le fichier PEM à importer" #: ../src/ca.c:1847 #, c-format msgid "Problem when importing '%s' file" msgstr "Problème pendant l'importation du fichier '%s'" #: ../src/ca.c:1860 msgid "Select directory to import" msgstr "Sélectionner le répertoire à importer" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "newdb " #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "" "Fermer le fichier et créer une nouvelle base de donnée avec le nom de " "fichier spécifié" #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "opendb " #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "" "Fermer le fichier et ouvrir le fichier avec le nom de fichier spécifié" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "savedbas " #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "Sauvegarder le fichier actuel avec un nom différent" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "" #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "" "Lister les Requêtes de Signature de Certificats dans la base de données" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "" "addcsr [identifiant d'Autorité de Certification pour hériter de champs]" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "extractcertpkey " #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "" "extractcsrpkey " #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "revoke " #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "" "sign " #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "delete " #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "" #: ../src/ca-cli.c:55 msgid "" "Generate a new CRL for the given CA, saving it into the file " msgstr "" #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "dhgen " #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" "Générer un nouveau jeu de paramètres DH, et le sauvegarder dans le fichier " "" #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "Modifier le mot de passe de la base de données actuelle" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "importfile " #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "Importer le fichier nommé " #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "importdir " #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "showcert " #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "Afficher les propriétés d'un certificat donné" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "showcsr " #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "" "Afficher les propriétés d'une Requête de Signature de Certificat donnée" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "showpolicy " #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "Afficher la stratégie de l'Autorité de Certification" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "" "setpolicy " #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "setpreference " #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "Afficher le message « À propos »" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "Afficher les informations de garantie" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "Afficher les informations de distribution" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "Afficher les informations de version" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "Afficher ce message d'aide" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "Fermer la base de données et quitter le programme" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "Ouverture de la base de données %s..." #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr " OK.\n" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr " Erreur.\n" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" "\n" "\n" "%s version %s\n" "%s\n" "\n" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "Guillemet manquant\n" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "Nombre de paramètres incorrect.\n" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "Syntaxe : %s\n" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "Le fichier existe déjà, il va être remplacé." #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:638 msgid "Are you sure? Yes/[No] " msgstr "Êtes-vous sûr ? Oui/[Non] " #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "Fichier '%s' ouvert\n" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "Fichier actuellement ouvert : %s\n" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "Nombre de certificats dans le fichier : %d\n" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:140 #, c-format msgid "CertList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:143 msgid "CertList IsCA|Y\t" msgstr "" #: ../src/ca-cli-callbacks.c:145 msgid "CertList IsCA|N\t" msgstr "" #: ../src/ca-cli-callbacks.c:150 #, c-format msgid "CertList Subject|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:153 msgid "CertList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:155 msgid "CertList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:158 msgid "CertList PKeyInDB|Y\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:160 msgid "CertList PKeyInDB|N\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:164 msgid "CertList Activation|\t" msgstr "" #: ../src/ca-cli-callbacks.c:169 #, c-format msgid "CertList Activation|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:174 msgid "CertList Expiration|\t" msgstr "" #: ../src/ca-cli-callbacks.c:179 #, c-format msgid "CertList Expiration|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:185 msgid "CertList Revocation|\n" msgstr "" #: ../src/ca-cli-callbacks.c:190 #, c-format msgid "CertList Revocation|%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:207 #, c-format msgid "Certificates in Database:\n" msgstr "Certificats dans la base de données :\n" #: ../src/ca-cli-callbacks.c:208 #, c-format msgid "" "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "" #: ../src/ca-cli-callbacks.c:211 #, c-format msgid "\t\tRevocation\n" msgstr "\t\tRévocation\n" #: ../src/ca-cli-callbacks.c:221 #, c-format msgid "CsrList ID|%s\t" msgstr "CsrList ID|%s\t" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "CsrList ParentID|%s\t" msgstr "CsrList ParentID|%s\t" #: ../src/ca-cli-callbacks.c:223 msgid "CsrList ParentID|\t" msgstr "CsrList ParentID|\t" #: ../src/ca-cli-callbacks.c:228 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "CsrList Subject|%-24s\t" #: ../src/ca-cli-callbacks.c:231 msgid "CsrList PadIfSubject<16|\t" msgstr "CsrList PadIfSubject<16|\t" #: ../src/ca-cli-callbacks.c:233 msgid "CsrList PadIfSubject<8|\t" msgstr "CsrList PadIfSubject<8|\t" #: ../src/ca-cli-callbacks.c:236 msgid "CsrList PKeyInDB|Y\n" msgstr "CsrList PKeyInDB|Y\n" #: ../src/ca-cli-callbacks.c:238 msgid "CsrList PKeyInDB|N\n" msgstr "CsrList PKeyInDB|N\n" #: ../src/ca-cli-callbacks.c:246 #, c-format msgid "Certificate Requests in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:247 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "" #: ../src/ca-cli-callbacks.c:275 ../src/ca-cli-callbacks.c:945 #: ../src/ca-cli-callbacks.c:1310 ../src/ca-cli-callbacks.c:1339 msgid "The given CA id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:328 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "Titulaire de la Requête de Signature de Certificat :\n" #: ../src/ca-cli-callbacks.c:330 ../src/ca-cli-callbacks.c:453 msgid "Enter country (C)" msgstr "Entrez la pays (C)" #: ../src/ca-cli-callbacks.c:336 ../src/ca-cli-callbacks.c:459 msgid "Enter state or province (ST)" msgstr "Entrez l'état ou la province (ST)" #: ../src/ca-cli-callbacks.c:342 ../src/ca-cli-callbacks.c:465 msgid "Enter locality or city (L)" msgstr "Entrez la localité ou la ville (L)" #: ../src/ca-cli-callbacks.c:348 ../src/ca-cli-callbacks.c:471 msgid "Enter organization (O)" msgstr "Entrez l'organisation (O)" #: ../src/ca-cli-callbacks.c:354 ../src/ca-cli-callbacks.c:477 msgid "Enter organizational unit (OU)" msgstr "Entrez l'unité d'organisation (OU)" #: ../src/ca-cli-callbacks.c:360 ../src/ca-cli-callbacks.c:483 msgid "Enter common name (CN)" msgstr "Entrez le nom commun (CN)" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:493 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "Entrez le type de clé que vous allez créer (RSA/DSA)" #: ../src/ca-cli-callbacks.c:382 ../src/ca-cli-callbacks.c:505 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "" "Entrez la taille en bits de la clé (ce doit être un multiple de 1024)" #: ../src/ca-cli-callbacks.c:386 #, c-format msgid "These are the provided CSR properties:\n" msgstr "" "Voici les propriétés de la Requête de Signature de Certificat fournie :\n" #: ../src/ca-cli-callbacks.c:388 ../src/ca-cli-callbacks.c:526 #: ../src/ca-cli-callbacks.c:1152 ../src/ca-cli-callbacks.c:1204 #, c-format msgid "Subject:\n" msgstr "Titulaire\n" #: ../src/ca-cli-callbacks.c:389 ../src/ca-cli-callbacks.c:527 #, c-format msgid "\tDistinguished Name: " msgstr "\tNom distinct : " #: ../src/ca-cli-callbacks.c:403 ../src/ca-cli-callbacks.c:541 #, c-format msgid "Key pair\n" msgstr "Paire de clés\n" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:542 #, c-format msgid "\tType: %s\n" msgstr "\tType : %s\n" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:543 #, c-format msgid "\tKey bitlength: %d\n" msgstr "\tTaille en bits de la clé : %d\n" #: ../src/ca-cli-callbacks.c:407 ../src/ca-cli-callbacks.c:554 msgid "Do you want to change anything? Yes/[No] " msgstr "Souhaitez vous modifier quelque chose ? Oui/[Non] " #: ../src/ca-cli-callbacks.c:411 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "" "Vous êtes sur le point de créer une Requête de Signature de Certificat avec " "ces propriétés :" #: ../src/ca-cli-callbacks.c:412 ../src/ca-cli-callbacks.c:559 msgid "Are you sure? [Yes]/No " msgstr "Êtes-vous sur ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:417 ../src/ca-cli-callbacks.c:564 #: ../src/ca-cli-callbacks.c:648 ../src/ca-cli-callbacks.c:779 #: ../src/ca-cli-callbacks.c:902 ../src/ca-cli-callbacks.c:931 #: ../src/ca-cli-callbacks.c:997 ../src/ca-cli-callbacks.c:1024 #: ../src/ca-cli-callbacks.c:1052 ../src/ca-cli-callbacks.c:1067 #: ../src/ca-cli-callbacks.c:1369 ../src/ca-cli-callbacks.c:1412 #, c-format msgid "Operation cancelled.\n" msgstr "Opération annulée.\n" #: ../src/ca-cli-callbacks.c:451 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "Titulaire de la nouvelle Autorité de Certification :\n" #: ../src/ca-cli-callbacks.c:510 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" "Entrez le nombre de mois avant l'expiration de la nouvelle Autorité de " "Certification" #: ../src/ca-cli-callbacks.c:524 #, c-format msgid "These are the provided new CA properties:\n" msgstr "" "Voici les propriétés de la nouvelle Autorité de Certification fournie :\n" #: ../src/ca-cli-callbacks.c:544 #, c-format msgid "Validity\n" msgstr "Validité\n" #: ../src/ca-cli-callbacks.c:545 ../src/ca-cli-callbacks.c:1160 #, c-format msgid "Validity:\n" msgstr "Validité :\n" #: ../src/ca-cli-callbacks.c:548 ../src/ca-cli-callbacks.c:1163 #, c-format msgid "\tActivated on: %s\n" msgstr "\tActivé le : %s\n" #: ../src/ca-cli-callbacks.c:552 ../src/ca-cli-callbacks.c:1167 #, c-format msgid "\tExpires on: %s\n" msgstr "\tExpire le : %s\n" #: ../src/ca-cli-callbacks.c:558 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "" "Vous êtes sur le point de créer une nouvelle Autorité de Certification avec " "ces propriétés." #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:632 #: ../src/ca-cli-callbacks.c:1137 msgid "The given certificate id. is not valid" msgstr "L'identifiant de certificat fourni est incorrect" #: ../src/ca-cli-callbacks.c:591 ../src/ca-cli-callbacks.c:615 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "Clé privée extraite avec succès dans le fichier '%s'\n" #: ../src/ca-cli-callbacks.c:608 ../src/ca-cli-callbacks.c:760 #: ../src/ca-cli-callbacks.c:915 ../src/ca-cli-callbacks.c:1193 msgid "The given CSR id. is not valid" msgstr "" "L'identifiant de Requête de Signature de Certificat fourni est incorrect" #: ../src/ca-cli-callbacks.c:638 msgid "This certificate will be revoked." msgstr "Ce certificat sera révoqué." #: ../src/ca-cli-callbacks.c:644 #, c-format msgid "Certificate revoked.\n" msgstr "Certificat révoqué.\n" #: ../src/ca-cli-callbacks.c:658 ../src/ca-cli-callbacks.c:1174 #, c-format msgid "Certificate uses:\n" msgstr "Utilisations du certificat :\n" #: ../src/ca-cli-callbacks.c:661 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "* Utilisable pour une Autorité de Certification.\n" #: ../src/ca-cli-callbacks.c:663 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "* Inutilisable pour une Autorité de Certification.\n" #: ../src/ca-cli-callbacks.c:667 #, c-format msgid "* CRL signing use enabled.\n" msgstr "" "* Utilisable pour la signature de Liste de Révocation de Certificats.\n" #: ../src/ca-cli-callbacks.c:669 #, c-format msgid "* CRL signing use disabled.\n" msgstr "" "* Inutilisable pour la signature de Liste de Révocation de Certificats.\n" #: ../src/ca-cli-callbacks.c:673 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "* Utilisable pour la signature numérique.\n" #: ../src/ca-cli-callbacks.c:675 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "* Inutilisable pour la signature numérique.\n" #: ../src/ca-cli-callbacks.c:679 ../src/ca-cli-callbacks.c:681 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "* Utilisable pour le chiffrement de données.\n" #: ../src/ca-cli-callbacks.c:685 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "* Utilisable pour le chiffrement de clé.\n" #: ../src/ca-cli-callbacks.c:687 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "* Inutilisable pour le chiffrement de clé.\n" #: ../src/ca-cli-callbacks.c:691 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "* Utilisable pour la non-répudiation.\n" #: ../src/ca-cli-callbacks.c:693 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "* Inutilisable pour la non-répudiation.\n" #: ../src/ca-cli-callbacks.c:697 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "* Utilisable pour l'agrément de clé.\n" #: ../src/ca-cli-callbacks.c:699 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "* Inutilisable pour l'agrément de clé.\n" #: ../src/ca-cli-callbacks.c:702 #, c-format msgid "Certificate purposes:\n" msgstr "Applications du certificat :\n" #: ../src/ca-cli-callbacks.c:705 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "* Applicable à la protection de courriel.\n" #: ../src/ca-cli-callbacks.c:707 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "* Inapplicable à la protection de courriel.\n" #: ../src/ca-cli-callbacks.c:711 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "* Applicable à la signature de code.\n" #: ../src/ca-cli-callbacks.c:713 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "* Inapplicable à la signature de code.\n" #: ../src/ca-cli-callbacks.c:717 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "* Applicable aux clients Web TLS.\n" #: ../src/ca-cli-callbacks.c:719 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "* Inapplicable aux clients Web TLS.\n" #: ../src/ca-cli-callbacks.c:723 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "* Applicable aux serveurs Web TLS.\n" #: ../src/ca-cli-callbacks.c:725 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "* Inapplicable aux serveurs Web TLS.\n" #: ../src/ca-cli-callbacks.c:729 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "* Applicable à l'horodatage.\n" #: ../src/ca-cli-callbacks.c:731 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "* Inapplicable à l'horodatage.\n" #: ../src/ca-cli-callbacks.c:735 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "* Applicable à la signature OCSP.\n" #: ../src/ca-cli-callbacks.c:737 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "* Inapplicable à la signature OCSP.\n" #: ../src/ca-cli-callbacks.c:741 #, c-format msgid "* Any purpose enabled.\n" msgstr "* Applicable à tout.\n" #: ../src/ca-cli-callbacks.c:743 #, c-format msgid "* Any purpose disabled.\n" msgstr "* Applicable à rien.\n" #: ../src/ca-cli-callbacks.c:767 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "" "Vous êtes sur le point de signer la Requête de Signature de Certificat " "suivante :\n" #: ../src/ca-cli-callbacks.c:769 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "" #: ../src/ca-cli-callbacks.c:772 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" "Donner le nombre de mois avant l'expiration du nouveau certificat (0 pour " "annuler)" #: ../src/ca-cli-callbacks.c:782 #, c-format msgid "" "The certificate will be generated with the following uses and purposes:\n" msgstr "" "Ce certificat sera généré avec les utilisations et applications suivantes :\n" #: ../src/ca-cli-callbacks.c:800 ../src/ca-cli-callbacks.c:888 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "" "Le nouveau certificat sera créé avec les utilisations et applications " "suivants :\n" #: ../src/ca-cli-callbacks.c:803 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "" "Souhaitez-vous modifier une propriété du nouveau Certificat ? Yes/[Non] " #: ../src/ca-cli-callbacks.c:806 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "* Utilisable pour une Autorité de Certification ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:808 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "* Inutilisable pour une Autorité de Certification, par stratégie\n" #: ../src/ca-cli-callbacks.c:812 msgid "* Enable CRL Signing? [Yes]/No " msgstr "" "* Utilisable pour la signature de Liste de Révocation de Certificats ? " "[Oui]/Non " #: ../src/ca-cli-callbacks.c:814 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "" "* Inutilisable pour la signature de Liste de Révocation de Certificats, par " "stratégie\n" #: ../src/ca-cli-callbacks.c:818 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "* Utilisable pour la signature numérique ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:820 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "* Inutilisable pour la signature numérique, par stratégie\n" #: ../src/ca-cli-callbacks.c:824 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "Utilisable pour le chiffrement de données ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:826 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "* Inutilisable pour le chiffrement de données, par stratégie\n" #: ../src/ca-cli-callbacks.c:830 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "Utilisable pour le chiffrement de clé ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:832 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "* Inutilisable pour le chiffrement de clé, par stratégie\n" #: ../src/ca-cli-callbacks.c:836 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "Utilisable pour la non-répudiation ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:838 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "* Inutilisable pour la non-répudiation, par stratégie\n" #: ../src/ca-cli-callbacks.c:842 msgid "Enable Key Agreement use? [Yes]/No " msgstr "Utilisable pour l'agrément de clé ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:844 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "* Inutilisable pour l'agrément de clé, par stratégie\n" #: ../src/ca-cli-callbacks.c:848 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "Applicable à la protection de courriel ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:850 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "* Inapplicable à la protection de courriel, par stratégie\n" #: ../src/ca-cli-callbacks.c:854 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "Applicable à la signature de code ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:856 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "* Inapplicable à la signature de code, par stratégie\n" #: ../src/ca-cli-callbacks.c:860 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "Applicable aux clients Web TLS ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:862 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "* Inapplicable aux clients Web TLS, par stratégie\n" #: ../src/ca-cli-callbacks.c:866 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "Applicable aux serveurs Web TLS ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:868 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "* Inapplicable aux serveurs Web TLS, par stratégie\n" #: ../src/ca-cli-callbacks.c:872 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "Applicable à l'horodatage ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:874 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "* Inapplicable à l'horodatage, par stratégie\n" #: ../src/ca-cli-callbacks.c:878 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "Applicable à la signature OCSP ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "* Inapplicable à la signature OCSP, par stratégie\n" #: ../src/ca-cli-callbacks.c:883 msgid "Enable any purpose? [Yes]/No " msgstr "Applicable à tout ? [Oui]/Non " #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "* Applicable à tout, par stratégie\n" #: ../src/ca-cli-callbacks.c:893 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:899 #, c-format msgid "Certificate signed.\n" msgstr "Certificat signé.\n" #: ../src/ca-cli-callbacks.c:921 msgid "This Certificate Signing Request will be deleted." msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:927 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "" #: ../src/ca-cli-callbacks.c:952 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "" "La Liste de Révocation de Certificats a été générée avec succès dans le " "fichier '%s'\n" #: ../src/ca-cli-callbacks.c:969 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "La taille en bits du nombre premier doit être un multiple de 1024" #: ../src/ca-cli-callbacks.c:978 #, c-format msgid "" "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Currently, the database is not password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Do you want to password protect it? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:991 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password:" msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:995 ../src/ca-cli-callbacks.c:1065 msgid "The introduced passwords are distinct." msgstr "" #: ../src/ca-cli-callbacks.c:1006 #, c-format msgid "Password established successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Nothing done.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Currently, the database IS password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:1021 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1022 ../src/ca-cli-callbacks.c:1050 msgid "Please, insert the current database password (Empty to cancel): " msgstr "" "Veuillez entrer le mot de passe actuel de la base de données (ne rien mettre " "pour annuler) : " #: ../src/ca-cli-callbacks.c:1029 ../src/ca-cli-callbacks.c:1057 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" #: ../src/ca-cli-callbacks.c:1034 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" "Erreur pendant la suppression du mot de passe de la base de données. \n" "L'opération a été annulée." #: ../src/ca-cli-callbacks.c:1039 #, c-format msgid "Password removed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1049 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1061 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password:" msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:1073 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" "Erreur pendant la modification du mot de passe de la base de données. \n" "L'opération a été annulée." #: ../src/ca-cli-callbacks.c:1079 #, c-format msgid "Password changed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1097 msgid "Problem when importing the given file." msgstr "" #: ../src/ca-cli-callbacks.c:1100 #, c-format msgid "File imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1116 #, c-format msgid "Directory imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1145 #, c-format msgid "Certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1149 #, c-format msgid "\tSerial number: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1157 #: ../src/ca-cli-callbacks.c:1205 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1154 #: ../src/ca-cli-callbacks.c:1157 ../src/ca-cli-callbacks.c:1158 msgid "None." msgstr "" #: ../src/ca-cli-callbacks.c:1154 ../src/ca-cli-callbacks.c:1158 #: ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tUnique ID: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1156 #, c-format msgid "Issuer:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1169 #, c-format msgid "Fingerprints:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1170 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1171 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1202 #, c-format msgid "Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1275 msgid "Generated certs inherit Country from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1276 msgid "Generated certs inherit State from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1277 msgid "Generated certs inherit Locality from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1278 msgid "Generated certs inherit Organization from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1279 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1280 msgid "Country in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1281 msgid "State in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1282 msgid "Locality in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1283 msgid "Organization in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1284 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "" #: ../src/ca-cli-callbacks.c:1285 msgid "Maximum number of hours between CRL updates " msgstr "" "Nombre d'heures maximum entre les mises à jours de Liste de Révocation de " "Certificats " #: ../src/ca-cli-callbacks.c:1286 msgid "Maximum number of months before expiration of new certs " msgstr "" #: ../src/ca-cli-callbacks.c:1287 msgid "CA use enabled in generated certs " msgstr "" "Utilisable pour une Autorité de Certification dans les certificats générés " " " #: ../src/ca-cli-callbacks.c:1288 msgid "CRL Sign use enabled in generated certs " msgstr "" "Utilisable pour la signature de Liste de Révocation de Certificats dans les " "certificats générés " #: ../src/ca-cli-callbacks.c:1289 msgid "Non reputation use enabled in generated certs " msgstr "" "Utilisable pour la non-répudiation dans les certificats générés " " " #: ../src/ca-cli-callbacks.c:1290 msgid "Digital signature use enabled in generated certs " msgstr "" "Utilisable pour la signature numérique dans les certificats générés " " " #: ../src/ca-cli-callbacks.c:1291 msgid "Key encipherment use enabled in generated certs " msgstr "" "Utilisable pour le chiffrement de clé dans les certificats générés " " " #: ../src/ca-cli-callbacks.c:1292 msgid "Key agreement use enabled in generated certs " msgstr "" "Utilisable pour l'agrément de clé dans les certificats générés " " " #: ../src/ca-cli-callbacks.c:1293 msgid "Data encipherment use enabled in generated certs " msgstr "" "Utilisable pour le chiffrement de données dans les certificats générés " " " #: ../src/ca-cli-callbacks.c:1294 msgid "TLS web server purpose enabled in generated certs " msgstr "" "Applicable aux serveurs Web TLS dans les certificats générés " #: ../src/ca-cli-callbacks.c:1295 msgid "TLS web client purpose enabled in generated certs " msgstr "" "Applicable aux clients Web TLS dans les certificats générés " #: ../src/ca-cli-callbacks.c:1296 msgid "Time stamping purpose enabled in generated certs " msgstr "" "Application pour l'horodatage activée dans les certificats générés " " " #: ../src/ca-cli-callbacks.c:1297 msgid "Code signing server purpose enabled in generated certs " msgstr "" "Application pour serveur de signature de code activée dans les certificats " "générés " #: ../src/ca-cli-callbacks.c:1298 msgid "Email protection purpose enabled in generated certs " msgstr "" "Application pour protection de courriel activée dans les certificats générés " " " #: ../src/ca-cli-callbacks.c:1299 msgid "OCSP signing purpose enabled in generated certs " msgstr "" "Application pour la signature OCSP activée dans les certificats générés " " " #: ../src/ca-cli-callbacks.c:1300 msgid "Any purpose enabled in generated certs " msgstr "" "Toute application activée dans les certificats générés " " " #: ../src/ca-cli-callbacks.c:1314 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "Affichage des stratégies du certificat suivant :\n" #: ../src/ca-cli-callbacks.c:1316 #, c-format msgid "" "\n" "Policies:\n" msgstr "" "\n" "Stratégies :\n" #: ../src/ca-cli-callbacks.c:1318 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "Identifiant\tDescription\t\t\t\t\t\t\t\tValeur\n" #: ../src/ca-cli-callbacks.c:1344 msgid "The given policy id is not valid" msgstr "L'identifiant de stratégie fourni est incorrect" #: ../src/ca-cli-callbacks.c:1356 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%d'." msgstr "" "Vous êtes sur le point d'assigner à la stratégie '%s'\n" "la nouvelle valeur '%d' ." #: ../src/ca-cli-callbacks.c:1360 ../src/ca-cli-callbacks.c:1404 msgid "Are you sure? Yes/[No] : " msgstr "" #: ../src/ca-cli-callbacks.c:1365 #, c-format msgid "Policy set correctly to '%d'.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1379 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1381 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1382 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "" #: ../src/ca-cli-callbacks.c:1394 msgid "The given preference id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1400 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" "Vous êtes sur le point d'assigner la nouvelle valeur '%d' à la préférence " "'Prise en charge de gnome-keyring'." #: ../src/ca-cli-callbacks.c:1422 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1423 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1424 ../src/ca-cli-callbacks.c:1425 #: ../src/main.c:502 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " Ahmed https://launchpad.net/~ahmed-baizid\n" " Bernard Opic https://launchpad.net/~cpio\n" " David Marín https://launchpad.net/~davefx\n" " gnuckx https://launchpad.net/~gnuckx\n" " loquehumaine https://launchpad.net/~loquehumaine" #: ../src/ca-cli-callbacks.c:1425 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1432 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1450 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1465 #, c-format msgid "%s version %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1474 #, c-format msgid "Available commands:\n" msgstr "Commandes disponibles :\n" #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "===================\n" msgstr "===================\n" #: ../src/ca-cli-callbacks.c:1485 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "Génération d'une nouvelle paire de clés RSA" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "La génération de la clé a échoué" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "Génération d'une nouvelle paire de clés DSA" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "Génération d'un certificat racine auto-signé" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "La génération du certificat a échoué" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "Création de la base de données de l'Autorité de Certification" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "" "La création de la base de données de l'Autorité de Certification a échouée" #: ../src/ca_creation.c:144 msgid "CA generated successfully" msgstr "CA créé avec succès." #: ../src/ca_file.c:196 #, c-format msgid "Error opening filename '%s'" msgstr "Erreur pendant l'ouverture du fichier '%s'" #: ../src/ca_file.c:299 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" #: ../src/ca_file.c:1311 msgid "Cannot find parent CA in database" msgstr "" #: ../src/ca_file.c:1499 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "" #: ../src/ca_file.c:1930 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" #: ../src/ca_file.c:1933 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" #: ../src/certificate_properties.c:356 ../src/tls.c:1054 msgid "Certificate signing" msgstr "Signature de certificat" #: ../src/certificate_properties.c:360 msgid "Key encipherment only" msgstr "Chiffrer uniquement la clé" #: ../src/certificate_properties.c:362 msgid "Key decipherment only" msgstr "Déchiffrer uniquement la clé" #: ../src/certificate_properties.c:376 msgid "Version" msgstr "Version" #: ../src/certificate_properties.c:411 msgid "Serial Number" msgstr "Numéro de série" #: ../src/certificate_properties.c:427 ../src/certificate_properties.c:1060 msgid "Signature" msgstr "Signature" #: ../src/certificate_properties.c:430 ../src/certificate_properties.c:558 #: ../src/certificate_properties.c:561 ../src/certificate_properties.c:1027 msgid "Algorithm" msgstr "Algorithme" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:594 ../src/certificate_properties.c:622 #: ../src/certificate_properties.c:1030 msgid "Parameters" msgstr "Paramètres" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:622 ../src/certificate_properties.c:624 #: ../src/certificate_properties.c:635 ../src/certificate_properties.c:644 #: ../src/certificate_properties.c:1031 msgid "(unknown)" msgstr "" #: ../src/certificate_properties.c:465 msgid "Issuer" msgstr "Émetteur" #: ../src/certificate_properties.c:493 msgid "Validity" msgstr "Validité" #: ../src/certificate_properties.c:496 msgid "Not Before" msgstr "Pas avant" #: ../src/certificate_properties.c:499 msgid "Not After" msgstr "Pas après" #: ../src/certificate_properties.c:555 msgid "Subject Public Key Info" msgstr "Informations sur la clé publique du titulaire" #: ../src/certificate_properties.c:568 msgid "RSA PublicKey" msgstr "Clé publique RSA" #: ../src/certificate_properties.c:578 msgid "Modulus" msgstr "Module" #: ../src/certificate_properties.c:584 msgid "Public Exponent" msgstr "Exposant public" #: ../src/certificate_properties.c:617 msgid "DSA PublicKey" msgstr "Clé publique DSA" #: ../src/certificate_properties.c:624 msgid "Subject Public Key" msgstr "Clé publique du titulaire" #: ../src/certificate_properties.c:635 msgid "Issuer Unique ID" msgstr "Identifiant unique d'émetteur" #: ../src/certificate_properties.c:644 msgid "Subject Unique ID" msgstr "Identifiant unique de titulaire" #: ../src/certificate_properties.c:666 ../src/certificate_properties.c:689 #: ../src/certificate_properties.c:758 ../src/certificate_properties.c:862 #: ../src/certificate_properties.c:890 ../src/certificate_properties.c:930 #: ../src/certificate_properties.c:987 ../src/certificate_properties.c:1112 msgid "Value" msgstr "Valeur" #: ../src/certificate_properties.c:728 ../src/certificate_properties.c:832 msgid "DNS Name" msgstr "Nom DNS" #: ../src/certificate_properties.c:733 ../src/certificate_properties.c:837 msgid "RFC822 Name" msgstr "Nom RFC822" #: ../src/certificate_properties.c:738 ../src/certificate_properties.c:842 msgid "URI" msgstr "URI" #: ../src/certificate_properties.c:744 msgid "IP" msgstr "IP" #: ../src/certificate_properties.c:751 ../src/certificate_properties.c:855 msgid "Directory Name" msgstr "Nom de répertoire" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "TRUE" msgstr "VRAI" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "FALSE" msgstr "FAUX" #: ../src/certificate_properties.c:790 msgid "CA" msgstr "Autorité de Certification" #: ../src/certificate_properties.c:794 msgid "Path Length Constraint" msgstr "Contrainte de taille du chemin" #: ../src/certificate_properties.c:848 msgid "IP Address" msgstr "Adresse IP" #: ../src/certificate_properties.c:963 msgid "Extensions" msgstr "Extentions" #: ../src/certificate_properties.c:972 msgid "Critical" msgstr "Critique" #: ../src/certificate_properties.c:1000 msgid "Certificate" msgstr "Certificat" #: ../src/certificate_properties.c:1025 msgid "Signature Algorithm" msgstr "Algorithme de signature" #: ../src/certificate_properties.c:1108 msgid "Name" msgstr "Nom" #: ../src/certificate_properties.c:1124 ../src/tls.c:1070 msgid "TLS WWW Server" msgstr "Serveur WWW TLS" #: ../src/certificate_properties.c:1125 msgid "TLS WWW Client" msgstr "Client WWW TLS" #: ../src/certificate_properties.c:1131 msgid "Subject Directory Attributes" msgstr "Attributs de répertoire du titulaire" #: ../src/certificate_properties.c:1132 msgid "Subject Key Identifier" msgstr "Identifiant de la clé du titulaire" #: ../src/certificate_properties.c:1133 msgid "Key Usage" msgstr "Utilisation de la clé" #: ../src/certificate_properties.c:1134 msgid "Private Key Usage Period" msgstr "Période d'utilisation de la clé privée" #: ../src/certificate_properties.c:1135 msgid "Subject Alternative Name" msgstr "Nom alternatif du titulaire" #: ../src/certificate_properties.c:1136 msgid "Basic Constraints" msgstr "Contraintes de base" #: ../src/certificate_properties.c:1137 msgid "Name Constraints" msgstr "Contraintes de nom" #: ../src/certificate_properties.c:1138 msgid "CRL Distribution Points" msgstr "Points de distribution de Liste de Révocation de Certificats" #: ../src/certificate_properties.c:1139 msgid "Certificate Policies" msgstr "Stratégies de Certificat" #: ../src/certificate_properties.c:1140 msgid "Policy Mappings" msgstr "Correspondances de Stratégie" #: ../src/certificate_properties.c:1141 msgid "Authority Key Identifier" msgstr "Identifiant de la clé de l'autorité" #: ../src/certificate_properties.c:1142 msgid "Policy Constraints" msgstr "Contraintes de stratégie" #: ../src/certificate_properties.c:1143 msgid "Extended Key Usage" msgstr "Utilisation étendue de clé" #: ../src/certificate_properties.c:1144 msgid "Delta CRL Distribution Point" msgstr "Point de distribution de delta de Liste de Révocation de Certificats" #: ../src/certificate_properties.c:1145 msgid "Inhibit Any-Policy" msgstr "Inhiber toute stratégie" #: ../src/creation_process_window.c:79 msgid "CA creation process finished" msgstr "Le processus de création de l'Autorité de Certification est terminé" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "La procédure de création a été annulée" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "La création de la Requête de Signature de Certificat est terminée." #: ../src/creation_process_window.c:274 msgid "Creating Certificate Signing Request" msgstr "Création de Requête de Signature de Certificat" #: ../src/crl.c:250 msgid "Export Certificate Revocation List" msgstr "Exporter la liste des certificats révoqués" #: ../src/crl.c:280 msgid "CRL generated successfully" msgstr "La Liste de Révocation de Certificats a été générée avec succès" #: ../src/crl.c:309 ../src/crl.c:371 ../src/crl.c:382 msgid "There was an error while exporting CRL." msgstr "" "Erreur pendant l'exportation de la Liste de Révocation de Certificats." #: ../src/crl.c:320 msgid "There was an error while getting revoked certificates." msgstr "Erreur pendant la récupération des certificats révoqués." #: ../src/crl.c:336 ../src/crl.c:355 msgid "There was an error while generating CRL." msgstr "" "Erreur pendant la génération de la Liste de Révocation de Certificats." #: ../src/crl.c:363 msgid "There was an error while writing CRL." msgstr "Erreur pendant l'écriture de la Liste de Révocation de Certificats." #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "Génération d'une Requête de Signature de Certificat" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "La génération de la Requête de Signature de Certificat a échouée" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "" "Sauvegarde de la Requête de Signature de Certificat dans la base de données" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "La CSR n'a pu être sauvegardée" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "CSR générée avec succès." #: ../src/csr_properties.c:78 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" #: ../src/dialog.c:79 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" #: ../src/dialog.c:103 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "" #: ../src/dialog.c:104 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "" #: ../src/dialog.c:372 msgid "To do. Feature not implemented yet." msgstr "A faire. Fonctionnalité non implémentée encore." #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "" #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "Erreur pendant l'exportation de la clé privée." #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "Erreur pendant la récupération de la clé privée." #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "" #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" "Vous devez fournir une phrase secrète pour protéger la clé privée exportée, " "de sorte que seules les personnes autorisées puissent l'utiliser. La phrase " "secrète sera demandée par toute application qui utilisera la clé privée." #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "Entrez la phrase secrète (au moins 8 caractères) :" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "Entrez la phrase secrète (pour confirmation) :" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "Les phrases secrètes saisies sont différentes." #: ../src/export.c:110 msgid "Operation cancelled." msgstr "" #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "Erreur pendant la protection par mot de passe de la clé privée." #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "Erreur pendant le déchiffrage de la clé privée." #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "" #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" "Erreur pendant la récupération du certificat et de la clé privée à partir de " "la base de données interne." #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" "Vous devez fournir une phrase secrète pour protéger le certificat exporté, " "de sorte que seules les personnes autorisées puissent l'utiliser. La phrase " "secrète sera demandée par toute application qui importera le certificat." #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "Erreur pendant la génération du paquet au format PKCS#12." #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "Erreur pendant l'exportation du certificat." #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "" #: ../src/gnomint-cli.c:59 ../src/main.c:129 #, c-format msgid "Failed to initialize: %s\n" msgstr "L'initialisation a échoué : %s\n" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "Veuillez indiquer le mot de passe pour '%s'" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" "Erreur pendant l'importation de la Requête de Signature de Certificat. \n" "La base de données a retourné cette erreur : \n" "\n" "'%s'" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "Clé privée chiffrée au format PKCS#8" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "Paquet chiffré au format PKCS#12" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "Le fichier donnée n'a pas aucun des formats supportés." #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "" #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "" #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "Clé privée pour %s" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "Clé privée %s" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "" #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "" #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "Certificat Racine de l'Autorité de Certification" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "" #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "Erreur pendant l'ouverture du répertoire newcerts/." #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "Erreur pendant l'ouverture du répertoire req/." #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "Erreur pendant l'ouverture du répertoire crl/." #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "Erreur pendant l'ouverture du répertoire keys/." #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" #: ../src/main.c:126 msgid "- A graphical Certification Authority manager" msgstr "- Un gestionnaire graphique d'Autorité de Certification" #: ../src/main.c:285 msgid "Create new CA database" msgstr "Créer une nouvelle base de données d'Autorité de Certification" #: ../src/main.c:323 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" #: ../src/main.c:336 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "" #: ../src/main.c:357 msgid "Open CA database" msgstr "Ouvrir une base de données d'Autorité de Certification" #: ../src/main.c:380 ../src/main.c:420 #, c-format msgid "Problem when opening '%s' CA database" msgstr "" "Problème pendant l'ouverture de la base de données de l'Autorité de " "Certification '%s'" #: ../src/main.c:445 msgid "Save CA database as..." msgstr "" "Sauvegarder la base de données de l'Autorité de Certification sous..." #: ../src/main.c:497 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" "gnoMint est un programme permettant de créer et de gérer des Autorités de " "Certification, et leurs certificats." #: ../src/main.c:498 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" #: ../src/new_cert.c:329 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:335 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:341 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:347 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:353 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:799 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" #: ../src/new_cert.c:815 msgid "Error while signing CSR." msgstr "Erreur pendant la signature de la Requête de Signature de Certificat" #: ../src/pkey_manage.c:80 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" #: ../src/pkey_manage.c:125 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" #: ../src/pkey_manage.c:171 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:187 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:191 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" #. The file cannot be opened #: ../src/pkey_manage.c:196 msgid "The file designated in database couldn't be opened." msgstr "" #. The file doesn't exist #: ../src/pkey_manage.c:201 msgid "The file designated in database doesn't exist." msgstr "" #: ../src/pkey_manage.c:760 ../src/pkey_manage.c:811 msgid "The given password doesn't match the one used in the database" msgstr "" #: ../src/pkey_manage.c:798 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" #: ../src/pkey_manage.c:799 msgid "Please insert the database password:" msgstr "Mot de passe de la base de données :" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "Erreur pendant l'initialisation de la clé privée." #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "Erreur pendant la création de la clé privée : %d" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:553 ../src/tls.c:855 #, c-format msgid "Error exporting private key to PEM structure." msgstr "Erreur pendant l'exportation au format PEM de la clé privée." #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "Erreur pendant l'initialisation du certificat" #: ../src/tls.c:441 ../src/tls.c:689 #, c-format msgid "Error when setting certificate version" msgstr "Erreur pendant l'enregistrement de la version du certificat" #: ../src/tls.c:451 ../src/tls.c:702 #, c-format msgid "Error when setting certificate serial number" msgstr "Erreur pendant l'enregistrement du numéro de série du certificat" #: ../src/tls.c:460 ../src/tls.c:711 #, c-format msgid "Error when setting activation time" msgstr "Erreur pendant l'enregistrement de la date d'activation" #: ../src/tls.c:465 ../src/tls.c:719 #, c-format msgid "Error when setting expiration time" msgstr "Erreur pendant l'enregistrement de la date d'expiration" #: ../src/tls.c:511 ../src/tls.c:768 #, c-format msgid "Error when setting basicConstraint extension" msgstr "Erreur pendant l'enregistrement de l'extension basicConstraint" #: ../src/tls.c:516 ../src/tls.c:810 #, c-format msgid "Error when setting keyUsage extension" msgstr "Erreur pendant l'enregistrement de l'extension keyUsage" #: ../src/tls.c:527 ../src/tls.c:784 #, c-format msgid "Error when setting subject key identifier extension" msgstr "Erreur pendant l'enregistrement de l'extension subjectKeyIdentifier" #: ../src/tls.c:531 ../src/tls.c:758 #, c-format msgid "Error when setting authority key identifier extension" msgstr "" "Erreur pendant l'enregistrement de l'extension d'identifiant de la clé " "d'autorité" #: ../src/tls.c:541 #, c-format msgid "Error when signing self-signed certificate" msgstr "Erreur pendant la signature du certificat auto-signé" #: ../src/tls.c:571 #, c-format msgid "Error when initializing csr structure" msgstr "" "Erreur pendant l'initialisation de la Requête de Signature de Certificat" #: ../src/tls.c:575 #, c-format msgid "Error when setting csr version" msgstr "" "Erreur pendant l'enregistrement de la version de la Requête de Signature de " "Certificat" #: ../src/tls.c:608 #, c-format msgid "Error when signing self-signed csr" msgstr "" "Erreur pendant la signature de la Requête de Signature de Certificat auto-" "signée" #: ../src/tls.c:619 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "" "Erreur pendant l'exportation au format PEM de la Requête de Signature de " "Certificat." #: ../src/tls.c:673 #, c-format msgid "Error when initializing crt structure" msgstr "Erreur pendant l'initialisation du certificat" #: ../src/tls.c:681 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "" "Erreur pendant la copie des données de la Requête de Signature de Certificat " "dans le certificat" #: ../src/tls.c:840 #, c-format msgid "Error when signing certificate" msgstr "Erreur pendant la signature du certificat" #: ../src/tls.c:1058 msgid "Key encipher only" msgstr "Chiffrer uniquement la clé" #: ../src/tls.c:1060 msgid "Key decipher only" msgstr "Déchiffrer uniquement la clé" #: ../src/tls.c:1072 msgid "TLS WWW Client." msgstr "Client WWW TLS." #~ msgid "New certificate properties\n" #~ msgstr "Propriétés du nouveau certificat\n" #~ msgid "" #~ "Please, insert the data corresponding to the subject of the new " #~ "certificate:\n" #~ msgstr "" #~ "Entrez les données qui correspondent au titulaire du nouveau certificat:\n" #~ msgid "" #~ "Please, select the Certification Authority that will create the new " #~ "certificate:" #~ msgstr "" #~ "Sélectionnez l'autorité de certification qui créera le nouveau certificat:" #~ msgid "Select the CA to sign this new certificate" #~ msgstr "Choisir le CA qui signera ce nouveau certificat" #~ msgid "Error creating private key." #~ msgstr "Erreur à la création de la clé privée!" #~ msgid "Save CA database" #~ msgstr "Sauvegarder la base de données du CA" #~ msgid "Problem when saving new CA database" #~ msgstr "Erreur à la sauvegarde de la base de données du nouveau CA!" #~ msgid "_File" #~ msgstr "_Fichier" #~ msgid "_New CA" #~ msgstr "_Nouveau CA" #~ msgid "Field value" #~ msgstr "Valeur du champ" #~ msgid "Change Pass_word" #~ msgstr "Modifier le _mot de passe" gnomint-1.3.0/po/cs.po0000664000175000017500000022133512672052326011507 00000000000000# a gnoMint's Czech translation catalog # Copyright (C) 2006 David Marin Carreño # This file is distributed under the same license as the gnoMint package. # Luboš Staněk , 2008. # msgid "" msgstr "" "Project-Id-Version: gnoMint 0.5.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-06-03 23:09+0200\n" "PO-Revision-Date: 2009-11-08 15:27+0000\n" "Last-Translator: Kuvaly [LCT] \n" "Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-08-11 09:00+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "" #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "" #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "Velikost okna" #: ../gui/gnomint.glade.h:1 msgid " " msgstr " " #: ../gui/gnomint.glade.h:2 msgid "CSR subject" msgstr "CSR subjekt" #: ../gui/gnomint.glade.h:3 msgid "Certificate fields" msgstr "" #: ../gui/gnomint.glade.h:4 msgid "Certificate hierarchy" msgstr "" #: ../gui/gnomint.glade.h:5 msgid "Certificate purposes" msgstr "" #: ../gui/gnomint.glade.h:6 msgid "Certificate subject" msgstr "" #: ../gui/gnomint.glade.h:7 msgid "Certificate uses" msgstr "" #: ../gui/gnomint.glade.h:8 msgid "Emmited by" msgstr "" #: ../gui/gnomint.glade.h:9 msgid "Fingerprints" msgstr "" #: ../gui/gnomint.glade.h:10 msgid "Inherited fields from CA subject" msgstr "" #: ../gui/gnomint.glade.h:11 msgid "Purposes of new generated certificates" msgstr "" #: ../gui/gnomint.glade.h:12 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in the internal database." msgstr "" #: ../gui/gnomint.glade.h:13 msgid "This certificate has been verified for the following uses:" msgstr "Tento certifikát byl ověřen pro následující použití:" #: ../gui/gnomint.glade.h:14 msgid "Uses of new generated certificates" msgstr "" #: ../gui/gnomint.glade.h:15 msgid "Validity" msgstr "Platnost" #: ../gui/gnomint.glade.h:16 msgid "New Certificate Revocation List" msgstr "" #: ../gui/gnomint.glade.h:17 msgid "CA Properties\n" msgstr "" #: ../gui/gnomint.glade.h:19 msgid "CA Root certificate properties\n" msgstr "" #: ../gui/gnomint.glade.h:21 msgid "Certificate Request Properties\n" msgstr "" #: ../gui/gnomint.glade.h:23 msgid "" "Choose private key file\n" "\n" "For doing the selected operation, you must provide the file where resides " "the private key corresponding to the certificate:" msgstr "" #: ../gui/gnomint.glade.h:26 msgid "New Certificate Properties\n" msgstr "" #: ../gui/gnomint.glade.h:28 msgid "Password protection\n" msgstr "Ochrana heslem\n" #: ../gui/gnomint.glade.h:30 msgid "" "Export both (private and public) parts to a password-protected PKCS#12 " "file. This kind of file can be imported by other common programs, such as " "web or mail clients." msgstr "" #: ../gui/gnomint.glade.h:31 msgid "Export only the certificate to a public file, in PEM format." msgstr "" #: ../gui/gnomint.glade.h:32 msgid "" "Export the saved private key to a PEM file. This option should only be " "used for exporting certificates that will be used in unattended servers." msgstr "" #: ../gui/gnomint.glade.h:33 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the certificate." msgstr "" #: ../gui/gnomint.glade.h:34 msgid "" "Import a directory containing the structure of\n" "a whole CA made with OpenSSL ." msgstr "" #: ../gui/gnomint.glade.h:36 msgid "" "Import a single file, encoded in DER or PEM format, containing " "certificates, private keys (encrypted or plain), signing requests (CSRs), " "revocation lists (CRLs) or PKCS#12 packages." msgstr "" #: ../gui/gnomint.glade.h:37 msgid "" "\n" "It is recommended that all the certificates generated by a CA share the same " "properties.\n" "If you want to generate certificates with different properties, you should " "create a hierarchy of CAs, each one with its own policy for certificate " "generation.\n" "\n" "Please, define the maximum set of properties for the certificates that this " "CA will be able to generate:\n" msgstr "" #: ../gui/gnomint.glade.h:43 msgid "#Description#" msgstr "#Popis#" #: ../gui/gnomint.glade.h:44 msgid "" "PKCS#3 files containing Diffie·Hellman parameters are used by " "some cryptographic \n" "applications for a secure interchange of their keys over insecure " "channels." msgstr "" #: ../gui/gnomint.glade.h:46 msgid "" "The part that is being imported has the description:" msgstr "" #: ../gui/gnomint.glade.h:47 msgid "" "The subject of the new certificate request can inherit information " "from one of the existing Certification Authorities. This is a must if the " "policy of the CA you are going to use is defined to force some fields of a " "certificate subject to be the same as the ones in the CA cert " "subject." msgstr "" #: ../gui/gnomint.glade.h:48 msgid "Activated on" msgstr "" #: ../gui/gnomint.glade.h:49 msgid "Add CSR" msgstr "Přidat CSR" #: ../gui/gnomint.glade.h:50 msgid "Add _Certificate Request" msgstr "" #: ../gui/gnomint.glade.h:51 msgid "Add a new Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:52 msgid "Add an autosigned CA" msgstr "" #: ../gui/gnomint.glade.h:53 msgid "Add autosigned CA certificate" msgstr "" #: ../gui/gnomint.glade.h:54 ../src/certificate_properties.c:1130 #: ../src/tls.c:1082 msgid "Any purpose" msgstr "Jakýkoli účel" #: ../gui/gnomint.glade.h:55 msgid "" "Automatically export created certificates to \n" "Gnome-keyring certificate store" msgstr "" #: ../gui/gnomint.glade.h:57 msgid "Both parts." msgstr "" #: ../gui/gnomint.glade.h:58 msgid "CA Policy" msgstr "" #: ../gui/gnomint.glade.h:59 msgid "" "CA Root Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:61 msgid "CA properties" msgstr "" #: ../gui/gnomint.glade.h:62 msgid "CACN" msgstr "CACN" #: ../gui/gnomint.glade.h:63 msgid "CAO" msgstr "CAO" #: ../gui/gnomint.glade.h:64 msgid "CAOU" msgstr "CAOU" #: ../gui/gnomint.glade.h:65 ../src/certificate_properties.c:358 #: ../src/tls.c:1056 msgid "CRL signing" msgstr "CRL značkování" #: ../gui/gnomint.glade.h:66 msgid "CSR properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:67 msgid "CertActivationDate" msgstr "" #: ../gui/gnomint.glade.h:68 msgid "CertExpirationDate" msgstr "" #: ../gui/gnomint.glade.h:69 msgid "CertSN" msgstr "" #: ../gui/gnomint.glade.h:70 msgid "" "Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:72 msgid "Certificate DN" msgstr "" #: ../gui/gnomint.glade.h:73 msgid "Certificate _Signing Requests" msgstr "" #: ../gui/gnomint.glade.h:74 msgid "Certificate properties" msgstr "" #: ../gui/gnomint.glade.h:75 msgid "Certificate properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:76 ../src/tls.c:1039 msgid "Certification Authority" msgstr "" #: ../gui/gnomint.glade.h:77 msgid "Change database pass_word" msgstr "" #: ../gui/gnomint.glade.h:78 msgid "Choose CA for signing the CSR" msgstr "" #: ../gui/gnomint.glade.h:79 msgid "Choose private key file. gnoMint" msgstr "" #: ../gui/gnomint.glade.h:80 msgid "City" msgstr "Město" #: ../gui/gnomint.glade.h:81 msgid "City: " msgstr "Město: " #: ../gui/gnomint.glade.h:82 ../src/certificate_properties.c:1126 #: ../src/tls.c:1074 msgid "Code signing" msgstr "" #: ../gui/gnomint.glade.h:83 msgid "Common Name (CN)" msgstr "Společné jméno (CN)" #: ../gui/gnomint.glade.h:84 msgid "Country" msgstr "Země" #: ../gui/gnomint.glade.h:85 msgid "Country:" msgstr "Země:" #: ../gui/gnomint.glade.h:86 msgid "Create a new database" msgstr "" #: ../gui/gnomint.glade.h:87 msgid "Creating CA Root Certificate" msgstr "" #: ../gui/gnomint.glade.h:88 msgid "Creating new CA - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:89 msgid "DSA" msgstr "DSA" #: ../gui/gnomint.glade.h:90 ../src/certificate_properties.c:352 #: ../src/tls.c:1050 msgid "Data encipherment" msgstr "" #: ../gui/gnomint.glade.h:91 msgid "Database password protection - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:92 msgid "Delete the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:93 msgid "Details" msgstr "Podrobnosti" #: ../gui/gnomint.glade.h:94 ../src/certificate_properties.c:346 #: ../src/tls.c:1044 msgid "Digital signature" msgstr "" #: ../gui/gnomint.glade.h:95 msgid "Don't inherit any fields from existing Certification Authorities" msgstr "" #: ../gui/gnomint.glade.h:96 msgid "E_xport" msgstr "E_xportovat" #: ../gui/gnomint.glade.h:97 ../src/certificate_properties.c:1127 #: ../src/tls.c:1076 msgid "Email protection" msgstr "" #: ../gui/gnomint.glade.h:98 msgid "" "Enter new password again \n" "for confirmation:" msgstr "" #: ../gui/gnomint.glade.h:100 msgid "Enter password - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:101 msgid "Enter password again for confirmation:" msgstr "" #: ../gui/gnomint.glade.h:102 msgid "Expires on" msgstr "" #: ../gui/gnomint.glade.h:103 msgid "Export certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:104 msgid "Export options" msgstr "" #: ../gui/gnomint.glade.h:105 msgid "Exports the CSR so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:106 msgid "" "Exports the certificate so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:107 msgid "Extrac_t private key" msgstr "" #: ../gui/gnomint.glade.h:108 msgid "Extract Private Key" msgstr "" #: ../gui/gnomint.glade.h:109 msgid "Extract the private key of the selected item into a external file" msgstr "" #: ../gui/gnomint.glade.h:110 msgid "Extract the saved private key to an external file or device" msgstr "" #: ../gui/gnomint.glade.h:111 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the CSR will be used" msgstr "" #: ../gui/gnomint.glade.h:115 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the certificate will be used" msgstr "" #: ../gui/gnomint.glade.h:119 msgid "General" msgstr "" #: ../gui/gnomint.glade.h:120 msgid "General Preferences - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:121 msgid "Generate D_H parameters..." msgstr "" #: ../gui/gnomint.glade.h:122 msgid "Generate _CRL" msgstr "" #: ../gui/gnomint.glade.h:123 msgid "Generate the current Certificate Revocation List" msgstr "" #: ../gui/gnomint.glade.h:124 msgid "Hours between CRL updates:" msgstr "" #: ../gui/gnomint.glade.h:125 msgid "Import a single file." msgstr "" #: ../gui/gnomint.glade.h:126 msgid "Import a whole directory." msgstr "" #: ../gui/gnomint.glade.h:127 msgid "Import selection - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:128 msgid "" "Inherit fields according to selected Certification Authority and its policy." msgstr "" #: ../gui/gnomint.glade.h:129 ../src/certificate_properties.c:354 #: ../src/tls.c:1052 msgid "Key agreement" msgstr "" #: ../gui/gnomint.glade.h:130 ../src/certificate_properties.c:350 #: ../src/tls.c:1048 msgid "Key encipherment" msgstr "" #: ../gui/gnomint.glade.h:131 msgid "MD5 fingerprint" msgstr "" #: ../gui/gnomint.glade.h:132 msgid "MD5FINGERPRINT" msgstr "" #: ../gui/gnomint.glade.h:133 msgid "" "Maximum number of months before expiration of the new generated certificates:" msgstr "" #: ../gui/gnomint.glade.h:134 msgid "Months before certificate expiration:" msgstr "" #: ../gui/gnomint.glade.h:135 msgid "Months before root certificate expiration:" msgstr "" #: ../gui/gnomint.glade.h:136 msgid "New CA - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:137 msgid "New CRL - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:138 msgid "New Certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:139 msgid "New Diffie-Hellman parameters - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:140 msgid "" "New certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:142 msgid "New certificate request - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:143 ../src/certificate_properties.c:348 #: ../src/tls.c:1046 msgid "Non repudiation" msgstr "" #: ../gui/gnomint.glade.h:144 ../src/certificate_properties.c:1129 #: ../src/tls.c:1080 msgid "OCSP signing" msgstr "" #: ../gui/gnomint.glade.h:145 msgid "Only the private key (crypted)." msgstr "" #: ../gui/gnomint.glade.h:146 msgid "Only the private key (uncrypted)." msgstr "" #: ../gui/gnomint.glade.h:147 msgid "Only the pu_blic part." msgstr "" #: ../gui/gnomint.glade.h:148 msgid "Open _recents" msgstr "" #: ../gui/gnomint.glade.h:149 msgid "Open an existing database" msgstr "" #: ../gui/gnomint.glade.h:150 msgid "Organization" msgstr "" #: ../gui/gnomint.glade.h:151 msgid "Organization (O)" msgstr "Organizace (O)" #: ../gui/gnomint.glade.h:152 msgid "Organization Unit:" msgstr "" #: ../gui/gnomint.glade.h:153 msgid "Organization:" msgstr "Organizace:" #: ../gui/gnomint.glade.h:154 msgid "Organizational Unit (OU)" msgstr "Organizační jednotka (OU)" #: ../gui/gnomint.glade.h:155 msgid "Organizational unit" msgstr "Organizační jednotka" #: ../gui/gnomint.glade.h:156 msgid "Password (confirm):" msgstr "Heslo (pro potvrzení):" #: ../gui/gnomint.glade.h:157 msgid "Password protect" msgstr "" #: ../gui/gnomint.glade.h:158 msgid "Password:" msgstr "Heslo:" #: ../gui/gnomint.glade.h:159 msgid "Please, choose the file:" msgstr "" #: ../gui/gnomint.glade.h:160 msgid "Please, choose the more suitable option for what you want to import:" msgstr "" #: ../gui/gnomint.glade.h:161 msgid "" "Please, choose which part of the saved certificate you want to export:" msgstr "" #: ../gui/gnomint.glade.h:162 msgid "" "Please, enter current\n" "password:" msgstr "" #: ../gui/gnomint.glade.h:164 msgid "" "Please, enter new \n" "password:" msgstr "" #: ../gui/gnomint.glade.h:166 msgid "Please, enter password" msgstr "" #: ../gui/gnomint.glade.h:167 msgid "Please, enter password:" msgstr "" #: ../gui/gnomint.glade.h:168 msgid "Please, enter the prime size, in bits:" msgstr "" #: ../gui/gnomint.glade.h:169 msgid "" "Please, select the CA for which a Certificate \n" "Revocation List is going to be created:" msgstr "" #: ../gui/gnomint.glade.h:171 msgid "Private key bit length:" msgstr "" #: ../gui/gnomint.glade.h:172 msgid "Private key type:" msgstr "" #: ../gui/gnomint.glade.h:173 msgid "" "Protect CA database private \n" "keys with password:" msgstr "" #: ../gui/gnomint.glade.h:175 msgid "" "Protect CA database private keys\n" "with password:" msgstr "" #: ../gui/gnomint.glade.h:177 msgid "RSA" msgstr "RSA" #: ../gui/gnomint.glade.h:178 msgid "Remember this password during this gnoMint session" msgstr "" #: ../gui/gnomint.glade.h:179 msgid "Revo_ke" msgstr "" #: ../gui/gnomint.glade.h:180 msgid "Revoke" msgstr "" #: ../gui/gnomint.glade.h:181 msgid "Revoke the selected certificate" msgstr "" #: ../gui/gnomint.glade.h:182 msgid "Revokes the selected certificate" msgstr "" #: ../gui/gnomint.glade.h:183 msgid "Root certificate prop" msgstr "" #: ../gui/gnomint.glade.h:184 msgid "SHA1 fingerprint" msgstr "" #: ../gui/gnomint.glade.h:185 msgid "SHA1FINGERPRINT" msgstr "" #: ../gui/gnomint.glade.h:186 msgid "Serial number" msgstr "" #: ../gui/gnomint.glade.h:187 msgid "Shows the CSR properties window" msgstr "" #: ../gui/gnomint.glade.h:188 msgid "Shows the certificate properties window" msgstr "" #: ../gui/gnomint.glade.h:189 msgid "Sign" msgstr "" #: ../gui/gnomint.glade.h:190 msgid "Sign the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:191 msgid "State or Province name" msgstr "" #: ../gui/gnomint.glade.h:192 msgid "State or Province name: " msgstr "" #: ../gui/gnomint.glade.h:193 msgid "SubjectCN" msgstr "" #: ../gui/gnomint.glade.h:194 msgid "SubjectO" msgstr "" #: ../gui/gnomint.glade.h:195 msgid "SubjectOU" msgstr "" #: ../gui/gnomint.glade.h:196 msgid "TLS Web client" msgstr "" #: ../gui/gnomint.glade.h:197 msgid "TLS Web server" msgstr "" #: ../gui/gnomint.glade.h:198 msgid "" "The whole selected file, or some of its elements, seems to be cyphered using " "a password or passphrase.\n" "\n" "For importing the file into gnoMint database, you must provide an appropiate " "password." msgstr "" #: ../gui/gnomint.glade.h:201 msgid "" "This action requires using one or more private keys saved in the CA " "database.\n" "\n" "Please insert the database password." msgstr "" #: ../gui/gnomint.glade.h:204 ../src/certificate_properties.c:1128 #: ../src/tls.c:1078 msgid "Time stamping" msgstr "" #: ../gui/gnomint.glade.h:205 msgid "" "You are about to create and export a set of Diffie·Hellman parameters " "into a PKCS#3 structure file." msgstr "" #: ../gui/gnomint.glade.h:206 msgid "" "You are about to sign a Certificate Signing Request, and this way, creating " "a new certificate. Please check the certificate properties." msgstr "" #: ../gui/gnomint.glade.h:207 msgid "" "You are about to sign a Certificate Signing Request. Please, choose the " "Certification Authority you are going to use for signing it." msgstr "" #: ../gui/gnomint.glade.h:208 msgid "_Add self-signed CA" msgstr "" #: ../gui/gnomint.glade.h:209 msgid "_Certificates" msgstr "" #: ../gui/gnomint.glade.h:210 msgid "_Edit" msgstr "" #: ../gui/gnomint.glade.h:211 msgid "_Help" msgstr "" #: ../gui/gnomint.glade.h:212 msgid "_Import" msgstr "" #: ../gui/gnomint.glade.h:213 msgid "_New certificate database" msgstr "" #: ../gui/gnomint.glade.h:214 msgid "_No" msgstr "" #: ../gui/gnomint.glade.h:215 msgid "_Open certificate database" msgstr "" #: ../gui/gnomint.glade.h:216 msgid "_Revoked Certificates" msgstr "" #: ../gui/gnomint.glade.h:217 msgid "_Save certificate database as..." msgstr "" #: ../gui/gnomint.glade.h:218 msgid "_Save filename in the database for automatic loading" msgstr "" #: ../gui/gnomint.glade.h:219 msgid "_Sign" msgstr "" #: ../gui/gnomint.glade.h:220 msgid "_View" msgstr "" #: ../gui/gnomint.glade.h:221 msgid "_Yes" msgstr "" #: ../gui/gnomint.glade.h:222 msgid "gnoMint" msgstr "" #: ../gui/gnomint.glade.h:223 msgid "gtk-cancel" msgstr "" #: ../gui/gnomint.glade.h:224 msgid "gtk-ok" msgstr "" #: ../gui/gnomint.glade.h:225 msgid "label" msgstr "" #: ../gui/gnomint.glade.h:226 msgid "may differ" msgstr "" #: ../gui/gnomint.glade.h:227 msgid "must be the same" msgstr "" #: ../gui/gnomint.glade.h:228 msgid "page 3" msgstr "" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "" #: ../src/ca.c:147 msgid "Certificates" msgstr "" #: ../src/ca.c:263 msgid "Certificate Signing Requests" msgstr "" #: ../src/ca.c:304 ../src/ca-cli-callbacks.c:168 ../src/ca-cli-callbacks.c:178 #: ../src/ca-cli-callbacks.c:189 ../src/ca-cli-callbacks.c:547 #: ../src/ca-cli-callbacks.c:551 ../src/ca-cli-callbacks.c:1162 #: ../src/ca-cli-callbacks.c:1166 ../src/certificate_properties.c:178 #: ../src/certificate_properties.c:183 msgid "%m/%d/%Y %R GMT" msgstr "" #: ../src/ca.c:448 ../src/certificate_properties.c:531 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "" #: ../src/ca.c:483 msgid "Serial" msgstr "" #: ../src/ca.c:490 msgid "Activation" msgstr "" #: ../src/ca.c:497 msgid "Expiration" msgstr "" #: ../src/ca.c:504 msgid "Revocation" msgstr "" #: ../src/ca.c:791 msgid "Export certificate" msgstr "" #: ../src/ca.c:798 msgid "Export certificate signing request" msgstr "" #: ../src/ca.c:813 ../src/ca.c:849 ../src/ca.c:859 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "" #: ../src/ca.c:815 ../src/ca.c:851 ../src/ca.c:861 msgid "There was an error while exporting CSR." msgstr "" #: ../src/ca.c:874 ../src/ca.c:1040 msgid "Certificate exported successfully" msgstr "" #: ../src/ca.c:881 msgid "Certificate signing request exported successfully" msgstr "" #: ../src/ca.c:900 msgid "Export crypted private key" msgstr "" #: ../src/ca.c:929 ../src/ca.c:981 msgid "Private key exported successfully" msgstr "" #: ../src/ca.c:951 msgid "Export uncrypted private key" msgstr "" #: ../src/ca.c:1002 msgid "Export whole certificate in PKCS#12 package" msgstr "" #: ../src/ca.c:1073 msgid "Export CSR - gnoMint" msgstr "" #: ../src/ca.c:1078 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" #: ../src/ca.c:1083 msgid "" "Export the Certificate Signing Request to a public file, in PEM " "format." msgstr "" #: ../src/ca.c:1088 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" #: ../src/ca.c:1146 msgid "Unexpected error" msgstr "" #: ../src/ca.c:1196 msgid "Are you sure you want to revoke this certificate?" msgstr "" #: ../src/ca.c:1235 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "" #: ../src/ca.c:1512 msgid "Change CA password - gnoMint" msgstr "" #: ../src/ca.c:1530 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" #: ../src/ca.c:1545 msgid "Error while changing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1554 msgid "Password changed successfully" msgstr "" #: ../src/ca.c:1564 ../src/ca-cli-callbacks.c:1002 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1574 msgid "Password established successfully" msgstr "" #: ../src/ca.c:1584 msgid "Error while removing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1593 msgid "Password removed successfully" msgstr "" #: ../src/ca.c:1731 msgid "Save Diffie-Hellman parameters" msgstr "" #: ../src/ca.c:1757 msgid "Diffie-Hellman parameters saved successfully" msgstr "" #. Import single file #: ../src/ca.c:1826 msgid "Select PEM file to import" msgstr "" #: ../src/ca.c:1847 #, c-format msgid "Problem when importing '%s' file" msgstr "" #: ../src/ca.c:1860 msgid "Select directory to import" msgstr "" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "" #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "" #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "" #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "" #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "" #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "" #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "" #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "" #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "" #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "" #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "" #: ../src/ca-cli.c:55 msgid "" "Generate a new CRL for the given CA, saving it into the file " msgstr "" #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "" #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "" #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "" #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "" #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "" #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "" #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "" #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "" #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "" #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "" #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr "" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr "" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "" #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:638 msgid "Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:140 #, c-format msgid "CertList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:143 msgid "CertList IsCA|Y\t" msgstr "" #: ../src/ca-cli-callbacks.c:145 msgid "CertList IsCA|N\t" msgstr "" #: ../src/ca-cli-callbacks.c:150 #, c-format msgid "CertList Subject|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:153 msgid "CertList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:155 msgid "CertList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:158 msgid "CertList PKeyInDB|Y\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:160 msgid "CertList PKeyInDB|N\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:164 msgid "CertList Activation|\t" msgstr "" #: ../src/ca-cli-callbacks.c:169 #, c-format msgid "CertList Activation|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:174 msgid "CertList Expiration|\t" msgstr "" #: ../src/ca-cli-callbacks.c:179 #, c-format msgid "CertList Expiration|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:185 msgid "CertList Revocation|\n" msgstr "" #: ../src/ca-cli-callbacks.c:190 #, c-format msgid "CertList Revocation|%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:207 #, c-format msgid "Certificates in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:208 #, c-format msgid "" "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "" #: ../src/ca-cli-callbacks.c:211 #, c-format msgid "\t\tRevocation\n" msgstr "" #: ../src/ca-cli-callbacks.c:221 #, c-format msgid "CsrList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "CsrList ParentID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 msgid "CsrList ParentID|\t" msgstr "" #: ../src/ca-cli-callbacks.c:228 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "" #: ../src/ca-cli-callbacks.c:231 msgid "CsrList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:233 msgid "CsrList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:236 msgid "CsrList PKeyInDB|Y\n" msgstr "" #: ../src/ca-cli-callbacks.c:238 msgid "CsrList PKeyInDB|N\n" msgstr "" #: ../src/ca-cli-callbacks.c:246 #, c-format msgid "Certificate Requests in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:247 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "" #: ../src/ca-cli-callbacks.c:275 ../src/ca-cli-callbacks.c:945 #: ../src/ca-cli-callbacks.c:1310 ../src/ca-cli-callbacks.c:1339 msgid "The given CA id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:328 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:330 ../src/ca-cli-callbacks.c:453 msgid "Enter country (C)" msgstr "" #: ../src/ca-cli-callbacks.c:336 ../src/ca-cli-callbacks.c:459 msgid "Enter state or province (ST)" msgstr "" #: ../src/ca-cli-callbacks.c:342 ../src/ca-cli-callbacks.c:465 msgid "Enter locality or city (L)" msgstr "" #: ../src/ca-cli-callbacks.c:348 ../src/ca-cli-callbacks.c:471 msgid "Enter organization (O)" msgstr "" #: ../src/ca-cli-callbacks.c:354 ../src/ca-cli-callbacks.c:477 msgid "Enter organizational unit (OU)" msgstr "" #: ../src/ca-cli-callbacks.c:360 ../src/ca-cli-callbacks.c:483 msgid "Enter common name (CN)" msgstr "" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:493 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "" #: ../src/ca-cli-callbacks.c:382 ../src/ca-cli-callbacks.c:505 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "" #: ../src/ca-cli-callbacks.c:386 #, c-format msgid "These are the provided CSR properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:388 ../src/ca-cli-callbacks.c:526 #: ../src/ca-cli-callbacks.c:1152 ../src/ca-cli-callbacks.c:1204 #, c-format msgid "Subject:\n" msgstr "" #: ../src/ca-cli-callbacks.c:389 ../src/ca-cli-callbacks.c:527 #, c-format msgid "\tDistinguished Name: " msgstr "" #: ../src/ca-cli-callbacks.c:403 ../src/ca-cli-callbacks.c:541 #, c-format msgid "Key pair\n" msgstr "" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:542 #, c-format msgid "\tType: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:543 #, c-format msgid "\tKey bitlength: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:407 ../src/ca-cli-callbacks.c:554 msgid "Do you want to change anything? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:411 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:412 ../src/ca-cli-callbacks.c:559 msgid "Are you sure? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:417 ../src/ca-cli-callbacks.c:564 #: ../src/ca-cli-callbacks.c:648 ../src/ca-cli-callbacks.c:779 #: ../src/ca-cli-callbacks.c:902 ../src/ca-cli-callbacks.c:931 #: ../src/ca-cli-callbacks.c:997 ../src/ca-cli-callbacks.c:1024 #: ../src/ca-cli-callbacks.c:1052 ../src/ca-cli-callbacks.c:1067 #: ../src/ca-cli-callbacks.c:1369 ../src/ca-cli-callbacks.c:1412 #, c-format msgid "Operation cancelled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:451 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "" #: ../src/ca-cli-callbacks.c:510 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" #: ../src/ca-cli-callbacks.c:524 #, c-format msgid "These are the provided new CA properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:544 #, c-format msgid "Validity\n" msgstr "" #: ../src/ca-cli-callbacks.c:545 ../src/ca-cli-callbacks.c:1160 #, c-format msgid "Validity:\n" msgstr "" #: ../src/ca-cli-callbacks.c:548 ../src/ca-cli-callbacks.c:1163 #, c-format msgid "\tActivated on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:552 ../src/ca-cli-callbacks.c:1167 #, c-format msgid "\tExpires on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:558 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:632 #: ../src/ca-cli-callbacks.c:1137 msgid "The given certificate id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:591 ../src/ca-cli-callbacks.c:615 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:608 ../src/ca-cli-callbacks.c:760 #: ../src/ca-cli-callbacks.c:915 ../src/ca-cli-callbacks.c:1193 msgid "The given CSR id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:638 msgid "This certificate will be revoked." msgstr "" #: ../src/ca-cli-callbacks.c:644 #, c-format msgid "Certificate revoked.\n" msgstr "" #: ../src/ca-cli-callbacks.c:658 ../src/ca-cli-callbacks.c:1174 #, c-format msgid "Certificate uses:\n" msgstr "" #: ../src/ca-cli-callbacks.c:661 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:663 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:667 #, c-format msgid "* CRL signing use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:669 #, c-format msgid "* CRL signing use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:673 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:675 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:679 ../src/ca-cli-callbacks.c:681 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:685 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:687 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:691 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:693 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:697 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:699 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:702 #, c-format msgid "Certificate purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:705 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:707 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:711 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:713 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:717 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:719 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:723 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:725 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:729 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:731 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:735 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:737 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:741 #, c-format msgid "* Any purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:743 #, c-format msgid "* Any purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:767 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:769 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "" #: ../src/ca-cli-callbacks.c:772 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" #: ../src/ca-cli-callbacks.c:782 #, c-format msgid "" "The certificate will be generated with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:800 ../src/ca-cli-callbacks.c:888 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:803 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:806 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:808 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:812 msgid "* Enable CRL Signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:814 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:818 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:820 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:824 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:826 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:830 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:832 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:836 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:838 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:842 msgid "Enable Key Agreement use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:844 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:848 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:850 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:854 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:856 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:860 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:862 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:866 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:868 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:872 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:874 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:878 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:883 msgid "Enable any purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:899 #, c-format msgid "Certificate signed.\n" msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This Certificate Signing Request will be deleted." msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:927 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "" #: ../src/ca-cli-callbacks.c:952 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:969 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "" #: ../src/ca-cli-callbacks.c:978 #, c-format msgid "" "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Currently, the database is not password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Do you want to password protect it? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:991 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password:" msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:995 ../src/ca-cli-callbacks.c:1065 msgid "The introduced passwords are distinct." msgstr "" #: ../src/ca-cli-callbacks.c:1006 #, c-format msgid "Password established successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Nothing done.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Currently, the database IS password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:1021 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1022 ../src/ca-cli-callbacks.c:1050 msgid "Please, insert the current database password (Empty to cancel): " msgstr "" #: ../src/ca-cli-callbacks.c:1029 ../src/ca-cli-callbacks.c:1057 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" #: ../src/ca-cli-callbacks.c:1034 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1039 #, c-format msgid "Password removed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1049 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1061 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password:" msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:1073 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1079 #, c-format msgid "Password changed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1097 msgid "Problem when importing the given file." msgstr "" #: ../src/ca-cli-callbacks.c:1100 #, c-format msgid "File imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1116 #, c-format msgid "Directory imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1145 #, c-format msgid "Certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1149 #, c-format msgid "\tSerial number: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1157 #: ../src/ca-cli-callbacks.c:1205 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1154 #: ../src/ca-cli-callbacks.c:1157 ../src/ca-cli-callbacks.c:1158 msgid "None." msgstr "" #: ../src/ca-cli-callbacks.c:1154 ../src/ca-cli-callbacks.c:1158 #: ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tUnique ID: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1156 #, c-format msgid "Issuer:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1169 #, c-format msgid "Fingerprints:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1170 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1171 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1202 #, c-format msgid "Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1275 msgid "Generated certs inherit Country from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1276 msgid "Generated certs inherit State from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1277 msgid "Generated certs inherit Locality from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1278 msgid "Generated certs inherit Organization from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1279 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1280 msgid "Country in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1281 msgid "State in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1282 msgid "Locality in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1283 msgid "Organization in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1284 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "" #: ../src/ca-cli-callbacks.c:1285 msgid "Maximum number of hours between CRL updates " msgstr "" #: ../src/ca-cli-callbacks.c:1286 msgid "Maximum number of months before expiration of new certs " msgstr "" #: ../src/ca-cli-callbacks.c:1287 msgid "CA use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1288 msgid "CRL Sign use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1289 msgid "Non reputation use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1290 msgid "Digital signature use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1291 msgid "Key encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1292 msgid "Key agreement use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1293 msgid "Data encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1294 msgid "TLS web server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1295 msgid "TLS web client purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1296 msgid "Time stamping purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1297 msgid "Code signing server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1298 msgid "Email protection purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1299 msgid "OCSP signing purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1300 msgid "Any purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1314 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1316 #, c-format msgid "" "\n" "Policies:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1318 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1344 msgid "The given policy id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1356 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1360 ../src/ca-cli-callbacks.c:1404 msgid "Are you sure? Yes/[No] : " msgstr "" #: ../src/ca-cli-callbacks.c:1365 #, c-format msgid "Policy set correctly to '%d'.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1379 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1381 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1382 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "" #: ../src/ca-cli-callbacks.c:1394 msgid "The given preference id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1400 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1422 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1423 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1424 ../src/ca-cli-callbacks.c:1425 #: ../src/main.c:502 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " David Marín https://launchpad.net/~davefx\n" " Kuvaly [LCT] https://launchpad.net/~kuvaly\n" " Luboš Staněk https://launchpad.net/~lubek" #: ../src/ca-cli-callbacks.c:1425 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1432 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1450 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1465 #, c-format msgid "%s version %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1474 #, c-format msgid "Available commands:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "===================\n" msgstr "" #: ../src/ca-cli-callbacks.c:1485 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "" #: ../src/ca_creation.c:144 msgid "CA generated successfully" msgstr "" #: ../src/ca_file.c:196 #, c-format msgid "Error opening filename '%s'" msgstr "" #: ../src/ca_file.c:299 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" #: ../src/ca_file.c:1311 msgid "Cannot find parent CA in database" msgstr "" #: ../src/ca_file.c:1499 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "" #: ../src/ca_file.c:1930 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" #: ../src/ca_file.c:1933 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" #: ../src/certificate_properties.c:356 ../src/tls.c:1054 msgid "Certificate signing" msgstr "" #: ../src/certificate_properties.c:360 msgid "Key encipherment only" msgstr "" #: ../src/certificate_properties.c:362 msgid "Key decipherment only" msgstr "" #: ../src/certificate_properties.c:376 msgid "Version" msgstr "" #: ../src/certificate_properties.c:411 msgid "Serial Number" msgstr "" #: ../src/certificate_properties.c:427 ../src/certificate_properties.c:1060 msgid "Signature" msgstr "" #: ../src/certificate_properties.c:430 ../src/certificate_properties.c:558 #: ../src/certificate_properties.c:561 ../src/certificate_properties.c:1027 msgid "Algorithm" msgstr "" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:594 ../src/certificate_properties.c:622 #: ../src/certificate_properties.c:1030 msgid "Parameters" msgstr "" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:622 ../src/certificate_properties.c:624 #: ../src/certificate_properties.c:635 ../src/certificate_properties.c:644 #: ../src/certificate_properties.c:1031 msgid "(unknown)" msgstr "" #: ../src/certificate_properties.c:465 msgid "Issuer" msgstr "" #: ../src/certificate_properties.c:493 msgid "Validity" msgstr "" #: ../src/certificate_properties.c:496 msgid "Not Before" msgstr "" #: ../src/certificate_properties.c:499 msgid "Not After" msgstr "" #: ../src/certificate_properties.c:555 msgid "Subject Public Key Info" msgstr "" #: ../src/certificate_properties.c:568 msgid "RSA PublicKey" msgstr "" #: ../src/certificate_properties.c:578 msgid "Modulus" msgstr "" #: ../src/certificate_properties.c:584 msgid "Public Exponent" msgstr "" #: ../src/certificate_properties.c:617 msgid "DSA PublicKey" msgstr "" #: ../src/certificate_properties.c:624 msgid "Subject Public Key" msgstr "" #: ../src/certificate_properties.c:635 msgid "Issuer Unique ID" msgstr "" #: ../src/certificate_properties.c:644 msgid "Subject Unique ID" msgstr "" #: ../src/certificate_properties.c:666 ../src/certificate_properties.c:689 #: ../src/certificate_properties.c:758 ../src/certificate_properties.c:862 #: ../src/certificate_properties.c:890 ../src/certificate_properties.c:930 #: ../src/certificate_properties.c:987 ../src/certificate_properties.c:1112 msgid "Value" msgstr "" #: ../src/certificate_properties.c:728 ../src/certificate_properties.c:832 msgid "DNS Name" msgstr "" #: ../src/certificate_properties.c:733 ../src/certificate_properties.c:837 msgid "RFC822 Name" msgstr "" #: ../src/certificate_properties.c:738 ../src/certificate_properties.c:842 msgid "URI" msgstr "" #: ../src/certificate_properties.c:744 msgid "IP" msgstr "" #: ../src/certificate_properties.c:751 ../src/certificate_properties.c:855 msgid "Directory Name" msgstr "" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "TRUE" msgstr "" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "FALSE" msgstr "" #: ../src/certificate_properties.c:790 msgid "CA" msgstr "" #: ../src/certificate_properties.c:794 msgid "Path Length Constraint" msgstr "" #: ../src/certificate_properties.c:848 msgid "IP Address" msgstr "" #: ../src/certificate_properties.c:963 msgid "Extensions" msgstr "" #: ../src/certificate_properties.c:972 msgid "Critical" msgstr "" #: ../src/certificate_properties.c:1000 msgid "Certificate" msgstr "" #: ../src/certificate_properties.c:1025 msgid "Signature Algorithm" msgstr "" #: ../src/certificate_properties.c:1108 msgid "Name" msgstr "" #: ../src/certificate_properties.c:1124 ../src/tls.c:1070 msgid "TLS WWW Server" msgstr "" #: ../src/certificate_properties.c:1125 msgid "TLS WWW Client" msgstr "" #: ../src/certificate_properties.c:1131 msgid "Subject Directory Attributes" msgstr "" #: ../src/certificate_properties.c:1132 msgid "Subject Key Identifier" msgstr "" #: ../src/certificate_properties.c:1133 msgid "Key Usage" msgstr "" #: ../src/certificate_properties.c:1134 msgid "Private Key Usage Period" msgstr "" #: ../src/certificate_properties.c:1135 msgid "Subject Alternative Name" msgstr "" #: ../src/certificate_properties.c:1136 msgid "Basic Constraints" msgstr "" #: ../src/certificate_properties.c:1137 msgid "Name Constraints" msgstr "" #: ../src/certificate_properties.c:1138 msgid "CRL Distribution Points" msgstr "" #: ../src/certificate_properties.c:1139 msgid "Certificate Policies" msgstr "" #: ../src/certificate_properties.c:1140 msgid "Policy Mappings" msgstr "" #: ../src/certificate_properties.c:1141 msgid "Authority Key Identifier" msgstr "" #: ../src/certificate_properties.c:1142 msgid "Policy Constraints" msgstr "" #: ../src/certificate_properties.c:1143 msgid "Extended Key Usage" msgstr "" #: ../src/certificate_properties.c:1144 msgid "Delta CRL Distribution Point" msgstr "" #: ../src/certificate_properties.c:1145 msgid "Inhibit Any-Policy" msgstr "" #: ../src/creation_process_window.c:79 msgid "CA creation process finished" msgstr "" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "" #: ../src/creation_process_window.c:274 msgid "Creating Certificate Signing Request" msgstr "" #: ../src/crl.c:250 msgid "Export Certificate Revocation List" msgstr "" #: ../src/crl.c:280 msgid "CRL generated successfully" msgstr "" #: ../src/crl.c:309 ../src/crl.c:371 ../src/crl.c:382 msgid "There was an error while exporting CRL." msgstr "" #: ../src/crl.c:320 msgid "There was an error while getting revoked certificates." msgstr "" #: ../src/crl.c:336 ../src/crl.c:355 msgid "There was an error while generating CRL." msgstr "" #: ../src/crl.c:363 msgid "There was an error while writing CRL." msgstr "" #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "" #: ../src/csr_properties.c:78 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" #: ../src/dialog.c:79 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" #: ../src/dialog.c:103 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "" #: ../src/dialog.c:104 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "" #: ../src/dialog.c:372 msgid "To do. Feature not implemented yet." msgstr "" #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "" #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "" #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "" #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "" #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "" #: ../src/export.c:110 msgid "Operation cancelled." msgstr "" #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "" #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "" #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "" #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "" #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "" #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "" #: ../src/gnomint-cli.c:59 ../src/main.c:129 #, c-format msgid "Failed to initialize: %s\n" msgstr "" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "" #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "" #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "" #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "" #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "" #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "" #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "" #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "" #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "" #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "" #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" #: ../src/main.c:126 msgid "- A graphical Certification Authority manager" msgstr "" #: ../src/main.c:285 msgid "Create new CA database" msgstr "" #: ../src/main.c:323 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" #: ../src/main.c:336 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "" #: ../src/main.c:357 msgid "Open CA database" msgstr "" #: ../src/main.c:380 ../src/main.c:420 #, c-format msgid "Problem when opening '%s' CA database" msgstr "" #: ../src/main.c:445 msgid "Save CA database as..." msgstr "" #: ../src/main.c:497 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" #: ../src/main.c:498 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" #: ../src/new_cert.c:329 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:335 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:341 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:347 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:353 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:799 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" #: ../src/new_cert.c:815 msgid "Error while signing CSR." msgstr "" #: ../src/pkey_manage.c:80 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" #: ../src/pkey_manage.c:125 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" #: ../src/pkey_manage.c:171 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:187 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:191 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" #. The file cannot be opened #: ../src/pkey_manage.c:196 msgid "The file designated in database couldn't be opened." msgstr "" #. The file doesn't exist #: ../src/pkey_manage.c:201 msgid "The file designated in database doesn't exist." msgstr "" #: ../src/pkey_manage.c:760 ../src/pkey_manage.c:811 msgid "The given password doesn't match the one used in the database" msgstr "" #: ../src/pkey_manage.c:798 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" #: ../src/pkey_manage.c:799 msgid "Please insert the database password:" msgstr "" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "" #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:553 ../src/tls.c:855 #, c-format msgid "Error exporting private key to PEM structure." msgstr "" #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "" #: ../src/tls.c:441 ../src/tls.c:689 #, c-format msgid "Error when setting certificate version" msgstr "" #: ../src/tls.c:451 ../src/tls.c:702 #, c-format msgid "Error when setting certificate serial number" msgstr "" #: ../src/tls.c:460 ../src/tls.c:711 #, c-format msgid "Error when setting activation time" msgstr "" #: ../src/tls.c:465 ../src/tls.c:719 #, c-format msgid "Error when setting expiration time" msgstr "" #: ../src/tls.c:511 ../src/tls.c:768 #, c-format msgid "Error when setting basicConstraint extension" msgstr "" #: ../src/tls.c:516 ../src/tls.c:810 #, c-format msgid "Error when setting keyUsage extension" msgstr "" #: ../src/tls.c:527 ../src/tls.c:784 #, c-format msgid "Error when setting subject key identifier extension" msgstr "" #: ../src/tls.c:531 ../src/tls.c:758 #, c-format msgid "Error when setting authority key identifier extension" msgstr "" #: ../src/tls.c:541 #, c-format msgid "Error when signing self-signed certificate" msgstr "" #: ../src/tls.c:571 #, c-format msgid "Error when initializing csr structure" msgstr "" #: ../src/tls.c:575 #, c-format msgid "Error when setting csr version" msgstr "" #: ../src/tls.c:608 #, c-format msgid "Error when signing self-signed csr" msgstr "" #: ../src/tls.c:619 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "" #: ../src/tls.c:673 #, c-format msgid "Error when initializing crt structure" msgstr "" #: ../src/tls.c:681 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "" #: ../src/tls.c:840 #, c-format msgid "Error when signing certificate" msgstr "" #: ../src/tls.c:1058 msgid "Key encipher only" msgstr "" #: ../src/tls.c:1060 msgid "Key decipher only" msgstr "" #: ../src/tls.c:1072 msgid "TLS WWW Client." msgstr "" gnomint-1.3.0/po/sv.po0000664000175000017500000024703112672052326011533 00000000000000# Swedish translation for gnomint. # Copyright (C) 2008 Free Software Foundation, Inc. # This file is distributed under the same license as the gnomint package. # Daniel Nylander , 2008. # msgid "" msgstr "" "Project-Id-Version: gnomint\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-06-03 23:09+0200\n" "PO-Revision-Date: 2010-07-09 11:48+0000\n" "Last-Translator: David Marín \n" "Language-Team: Swedish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-08-11 09:00+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "Automatisk export av certifikat för gnome-keyring" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" "Storleken (bredd,längd) som gnoMint ska ha vid start. Den kan inte vara " "mindre än (320,200)." #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "Huruvida certifikatbegäran ska vara synlig." #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" "Huruvida de skapade eller importerade certifikaten automatiskt ska " "exporteras till gnome-keyring certificate-store." #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "Huruvida de återkallade certifikaten ska vara synliga." #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "Fönsterstorlek" #: ../gui/gnomint.glade.h:1 msgid " " msgstr " " #: ../gui/gnomint.glade.h:2 msgid "CSR subject" msgstr "" #: ../gui/gnomint.glade.h:3 msgid "Certificate fields" msgstr "Certifikatfält" #: ../gui/gnomint.glade.h:4 msgid "Certificate hierarchy" msgstr "Certifikathierarki" #: ../gui/gnomint.glade.h:5 msgid "Certificate purposes" msgstr "Certifikatändamål" #: ../gui/gnomint.glade.h:6 msgid "Certificate subject" msgstr "" #: ../gui/gnomint.glade.h:7 msgid "Certificate uses" msgstr "Certifikatanvändning" #: ../gui/gnomint.glade.h:8 msgid "Emmited by" msgstr "Emitterat av" #: ../gui/gnomint.glade.h:9 msgid "Fingerprints" msgstr "Fingeravtryck" #: ../gui/gnomint.glade.h:10 msgid "Inherited fields from CA subject" msgstr "" #: ../gui/gnomint.glade.h:11 msgid "Purposes of new generated certificates" msgstr "Syften för nya genererade certifikat" #: ../gui/gnomint.glade.h:12 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in the internal database." msgstr "" #: ../gui/gnomint.glade.h:13 msgid "This certificate has been verified for the following uses:" msgstr "Detta certifikat har verifierats för följande användning:" #: ../gui/gnomint.glade.h:14 msgid "Uses of new generated certificates" msgstr "" #: ../gui/gnomint.glade.h:15 msgid "Validity" msgstr "Giltighet" #: ../gui/gnomint.glade.h:16 msgid "New Certificate Revocation List" msgstr "Ny certifikatspärrlista" #: ../gui/gnomint.glade.h:17 msgid "CA Properties\n" msgstr "Egenskaper för certifikatutfärdare\n" #: ../gui/gnomint.glade.h:19 msgid "CA Root certificate properties\n" msgstr "Egenskaper för certifikatutfärdares rotcertifikat\n" #: ../gui/gnomint.glade.h:21 msgid "Certificate Request Properties\n" msgstr "Egenskaper för certifikatbegäran\n" #: ../gui/gnomint.glade.h:23 msgid "" "Choose private key file\n" "\n" "For doing the selected operation, you must provide the file where resides " "the private key corresponding to the certificate:" msgstr "" "Välj privat nyckel-fil\n" "\n" "Du måste tillhandahålla filen som innehåller den privata nyckeln som " "motsvarar certifikatet:" #: ../gui/gnomint.glade.h:26 msgid "New Certificate Properties\n" msgstr "Egenskaper för nytt certifikat\n" #: ../gui/gnomint.glade.h:28 msgid "Password protection\n" msgstr "Lösenordsskydd\n" #: ../gui/gnomint.glade.h:30 msgid "" "Export both (private and public) parts to a password-protected PKCS#12 " "file. This kind of file can be imported by other common programs, such as " "web or mail clients." msgstr "" "Exportera både de privata och publika delarna till en lösenordsskyddad " "PKCS#12-fil. Den här filtypen kan importeras i andra vanliga program, så som " "webbläsare eller epostklienter." #: ../gui/gnomint.glade.h:31 msgid "Export only the certificate to a public file, in PEM format." msgstr "" "Exportera endast certifikatet till en publik fil, i PEM-format." #: ../gui/gnomint.glade.h:32 msgid "" "Export the saved private key to a PEM file. This option should only be " "used for exporting certificates that will be used in unattended servers." msgstr "" "Exportera den sparade privata nyckeln till en PEM-fil. Det här " "alternativet bör användas bara för att exportera certifikat som ska användas " "i oövervakade servrar." #: ../gui/gnomint.glade.h:33 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the certificate." msgstr "" "Exportera den sparade nyckeln till en lösenordsskyddad PKCS#8-fil. Filen " "bör enbart kunna kommas åt av den person certifikatet gäller för." #: ../gui/gnomint.glade.h:34 msgid "" "Import a directory containing the structure of\n" "a whole CA made with OpenSSL ." msgstr "" "Importera en katalog som innehåller strukturen för\n" "en komplett certifikatutfärdare skapad med OpenSSL ." #: ../gui/gnomint.glade.h:36 msgid "" "Import a single file, encoded in DER or PEM format, containing " "certificates, private keys (encrypted or plain), signing requests (CSRs), " "revocation lists (CRLs) or PKCS#12 packages." msgstr "" #: ../gui/gnomint.glade.h:37 msgid "" "\n" "It is recommended that all the certificates generated by a CA share the same " "properties.\n" "If you want to generate certificates with different properties, you should " "create a hierarchy of CAs, each one with its own policy for certificate " "generation.\n" "\n" "Please, define the maximum set of properties for the certificates that this " "CA will be able to generate:\n" msgstr "" #: ../gui/gnomint.glade.h:43 msgid "#Description#" msgstr "#Beskrivning#" #: ../gui/gnomint.glade.h:44 msgid "" "PKCS#3 files containing Diffie·Hellman parameters are used by " "some cryptographic \n" "applications for a secure interchange of their keys over insecure " "channels." msgstr "" "PKCS#3 -filer vilka innehåller Diffie·Hellman-parametrar " "används av somliga kryptografiska \n" "program för att möjliggöra ett säkert utbyte av deras nycklar via osäkra " "kanaler." #: ../gui/gnomint.glade.h:46 msgid "" "The part that is being imported has the description:" msgstr "Den del som importeras har beskrivningen:" #: ../gui/gnomint.glade.h:47 msgid "" "The subject of the new certificate request can inherit information " "from one of the existing Certification Authorities. This is a must if the " "policy of the CA you are going to use is defined to force some fields of a " "certificate subject to be the same as the ones in the CA cert " "subject." msgstr "" #: ../gui/gnomint.glade.h:48 msgid "Activated on" msgstr "Aktiverat den" #: ../gui/gnomint.glade.h:49 msgid "Add CSR" msgstr "" #: ../gui/gnomint.glade.h:50 msgid "Add _Certificate Request" msgstr "Lägg till _certifikatbegäran" #: ../gui/gnomint.glade.h:51 msgid "Add a new Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:52 msgid "Add an autosigned CA" msgstr "Lägg till en autosignerad CA" #: ../gui/gnomint.glade.h:53 msgid "Add autosigned CA certificate" msgstr "Lägg till ett autosignerat CA-certifikat" #: ../gui/gnomint.glade.h:54 ../src/certificate_properties.c:1130 #: ../src/tls.c:1082 msgid "Any purpose" msgstr "" #: ../gui/gnomint.glade.h:55 msgid "" "Automatically export created certificates to \n" "Gnome-keyring certificate store" msgstr "" #: ../gui/gnomint.glade.h:57 msgid "Both parts." msgstr "Båda delarna." #: ../gui/gnomint.glade.h:58 msgid "CA Policy" msgstr "" #: ../gui/gnomint.glade.h:59 msgid "" "CA Root Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:61 msgid "CA properties" msgstr "" #: ../gui/gnomint.glade.h:62 msgid "CACN" msgstr "" #: ../gui/gnomint.glade.h:63 msgid "CAO" msgstr "" #: ../gui/gnomint.glade.h:64 msgid "CAOU" msgstr "" #: ../gui/gnomint.glade.h:65 ../src/certificate_properties.c:358 #: ../src/tls.c:1056 msgid "CRL signing" msgstr "" #: ../gui/gnomint.glade.h:66 msgid "CSR properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:67 msgid "CertActivationDate" msgstr "" #: ../gui/gnomint.glade.h:68 msgid "CertExpirationDate" msgstr "" #: ../gui/gnomint.glade.h:69 msgid "CertSN" msgstr "" #: ../gui/gnomint.glade.h:70 msgid "" "Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:72 msgid "Certificate DN" msgstr "" #: ../gui/gnomint.glade.h:73 msgid "Certificate _Signing Requests" msgstr "Certifikat_signeringsbegäran" #: ../gui/gnomint.glade.h:74 msgid "Certificate properties" msgstr "Certifikategenskaper" #: ../gui/gnomint.glade.h:75 msgid "Certificate properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:76 ../src/tls.c:1039 msgid "Certification Authority" msgstr "" #: ../gui/gnomint.glade.h:77 msgid "Change database pass_word" msgstr "Ändra databaslösen_ord" #: ../gui/gnomint.glade.h:78 msgid "Choose CA for signing the CSR" msgstr "" #: ../gui/gnomint.glade.h:79 msgid "Choose private key file. gnoMint" msgstr "Välj privat nyckelfil .gnoMint" #: ../gui/gnomint.glade.h:80 msgid "City" msgstr "Stad" #: ../gui/gnomint.glade.h:81 msgid "City: " msgstr "Stad: " #: ../gui/gnomint.glade.h:82 ../src/certificate_properties.c:1126 #: ../src/tls.c:1074 msgid "Code signing" msgstr "Kodsignering" #: ../gui/gnomint.glade.h:83 msgid "Common Name (CN)" msgstr "Vanligt namn (CN)" #: ../gui/gnomint.glade.h:84 msgid "Country" msgstr "Land" #: ../gui/gnomint.glade.h:85 msgid "Country:" msgstr "Land:" #: ../gui/gnomint.glade.h:86 msgid "Create a new database" msgstr "Skapa en ny databas" #: ../gui/gnomint.glade.h:87 msgid "Creating CA Root Certificate" msgstr "Skapar CA-rotcertifikat" #: ../gui/gnomint.glade.h:88 msgid "Creating new CA - gnoMint" msgstr "Skapar en ny CA - gnoMint" #: ../gui/gnomint.glade.h:89 msgid "DSA" msgstr "DSA" #: ../gui/gnomint.glade.h:90 ../src/certificate_properties.c:352 #: ../src/tls.c:1050 msgid "Data encipherment" msgstr "Datakryptering" #: ../gui/gnomint.glade.h:91 msgid "Database password protection - gnoMint" msgstr "Lösenordsskydd för databas - gnoMint" #: ../gui/gnomint.glade.h:92 msgid "Delete the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:93 msgid "Details" msgstr "Detaljer" #: ../gui/gnomint.glade.h:94 ../src/certificate_properties.c:346 #: ../src/tls.c:1044 msgid "Digital signature" msgstr "Digital signatur" #: ../gui/gnomint.glade.h:95 msgid "Don't inherit any fields from existing Certification Authorities" msgstr "" #: ../gui/gnomint.glade.h:96 msgid "E_xport" msgstr "E_xportera" #: ../gui/gnomint.glade.h:97 ../src/certificate_properties.c:1127 #: ../src/tls.c:1076 msgid "Email protection" msgstr "E-postskydd" #: ../gui/gnomint.glade.h:98 msgid "" "Enter new password again \n" "for confirmation:" msgstr "" "Ange nytt lösenord igen \n" "för bekräftelse:" #: ../gui/gnomint.glade.h:100 msgid "Enter password - gnoMint" msgstr "Skriv in lösenord - gnoMint" #: ../gui/gnomint.glade.h:101 msgid "Enter password again for confirmation:" msgstr "Ange lösenordet igen för bekräftelse:" #: ../gui/gnomint.glade.h:102 msgid "Expires on" msgstr "Utgår den" #: ../gui/gnomint.glade.h:103 msgid "Export certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:104 msgid "Export options" msgstr "Exportalternativ" #: ../gui/gnomint.glade.h:105 msgid "Exports the CSR so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:106 msgid "" "Exports the certificate so it can be imported by any other application" msgstr "Exporterar certifikatet så att det kan importeras av andra program" #: ../gui/gnomint.glade.h:107 msgid "Extrac_t private key" msgstr "Extrahe_ra privat nyckel" #: ../gui/gnomint.glade.h:108 msgid "Extract Private Key" msgstr "Extrahera privat nyckel" #: ../gui/gnomint.glade.h:109 msgid "Extract the private key of the selected item into a external file" msgstr "Extrahera den privata nyckeln från valt objekt till en extern fil" #: ../gui/gnomint.glade.h:110 msgid "Extract the saved private key to an external file or device" msgstr "Extrahera den sparade privata nyckeln till en extern fil eller enhet" #: ../gui/gnomint.glade.h:111 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the CSR will be used" msgstr "" #: ../gui/gnomint.glade.h:115 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the certificate will be used" msgstr "" "Extraherar den privata nyckeln från det valda \n" "certifikatet från databasen till en \n" "extern fil. Filen måste tillhandahållas \n" "varje gång certifikatet ska användas" #: ../gui/gnomint.glade.h:119 msgid "General" msgstr "Allmänt" #: ../gui/gnomint.glade.h:120 msgid "General Preferences - gnoMint" msgstr "Allmänna inställningar - gnoMint" #: ../gui/gnomint.glade.h:121 msgid "Generate D_H parameters..." msgstr "Generera D_H-parametrar..." #: ../gui/gnomint.glade.h:122 msgid "Generate _CRL" msgstr "Generera _CRL" #: ../gui/gnomint.glade.h:123 msgid "Generate the current Certificate Revocation List" msgstr "Generera den aktuella certifikatspärrlistan" #: ../gui/gnomint.glade.h:124 msgid "Hours between CRL updates:" msgstr "Timmar mellan CRL-uppdateringar:" #: ../gui/gnomint.glade.h:125 msgid "Import a single file." msgstr "Importera en fil." #: ../gui/gnomint.glade.h:126 msgid "Import a whole directory." msgstr "Importera en hel katalog" #: ../gui/gnomint.glade.h:127 msgid "Import selection - gnoMint" msgstr "Importera det valda - gnoMint" #: ../gui/gnomint.glade.h:128 msgid "" "Inherit fields according to selected Certification Authority and its policy." msgstr "" #: ../gui/gnomint.glade.h:129 ../src/certificate_properties.c:354 #: ../src/tls.c:1052 msgid "Key agreement" msgstr "" #: ../gui/gnomint.glade.h:130 ../src/certificate_properties.c:350 #: ../src/tls.c:1048 msgid "Key encipherment" msgstr "Nyckelkryptering" #: ../gui/gnomint.glade.h:131 msgid "MD5 fingerprint" msgstr "MD5-fingeravtryck" #: ../gui/gnomint.glade.h:132 msgid "MD5FINGERPRINT" msgstr "MD5FINGERAVTRYCK" #: ../gui/gnomint.glade.h:133 msgid "" "Maximum number of months before expiration of the new generated certificates:" msgstr "Maximalt antal månader före utgång av de nygenererade certifikaten:" #: ../gui/gnomint.glade.h:134 msgid "Months before certificate expiration:" msgstr "Månader innan certifikatet går ut:" #: ../gui/gnomint.glade.h:135 msgid "Months before root certificate expiration:" msgstr "Månader innan rotcertifikatet går ut:" #: ../gui/gnomint.glade.h:136 msgid "New CA - gnoMint" msgstr "Ny CA - gnoMint" #: ../gui/gnomint.glade.h:137 msgid "New CRL - gnoMint" msgstr "Ny CRL - gnoMint" #: ../gui/gnomint.glade.h:138 msgid "New Certificate - gnoMint" msgstr "Nytt Certifikat - gnoMint" #: ../gui/gnomint.glade.h:139 msgid "New Diffie-Hellman parameters - gnoMint" msgstr "Nya Diffie-Hellman-parametrar - gnoMint" #: ../gui/gnomint.glade.h:140 msgid "" "New certificate \n" "Common Name (CN):" msgstr "" "Nytt certifikat \n" "Vanligt namn (CN):" #: ../gui/gnomint.glade.h:142 msgid "New certificate request - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:143 ../src/certificate_properties.c:348 #: ../src/tls.c:1046 msgid "Non repudiation" msgstr "" #: ../gui/gnomint.glade.h:144 ../src/certificate_properties.c:1129 #: ../src/tls.c:1080 msgid "OCSP signing" msgstr "" #: ../gui/gnomint.glade.h:145 msgid "Only the private key (crypted)." msgstr "Enbart den privata nyckeln (krypterad)." #: ../gui/gnomint.glade.h:146 msgid "Only the private key (uncrypted)." msgstr "Enbart den privata nyckeln (okrypterad)." #: ../gui/gnomint.glade.h:147 msgid "Only the pu_blic part." msgstr "Enbart den publika delen." #: ../gui/gnomint.glade.h:148 msgid "Open _recents" msgstr "Öppna _tidigare" #: ../gui/gnomint.glade.h:149 msgid "Open an existing database" msgstr "Öppna en existerande databas" #: ../gui/gnomint.glade.h:150 msgid "Organization" msgstr "Organisation" #: ../gui/gnomint.glade.h:151 msgid "Organization (O)" msgstr "Organisation (O)" #: ../gui/gnomint.glade.h:152 msgid "Organization Unit:" msgstr "Organisationsenhet:" #: ../gui/gnomint.glade.h:153 msgid "Organization:" msgstr "Organisation:" #: ../gui/gnomint.glade.h:154 msgid "Organizational Unit (OU)" msgstr "Organisationsenhet (OU)" #: ../gui/gnomint.glade.h:155 msgid "Organizational unit" msgstr "Organisationsenhet" #: ../gui/gnomint.glade.h:156 msgid "Password (confirm):" msgstr "Lösenord (bekräfta):" #: ../gui/gnomint.glade.h:157 msgid "Password protect" msgstr "Lösenordsskydd" #: ../gui/gnomint.glade.h:158 msgid "Password:" msgstr "Lösenord:" #: ../gui/gnomint.glade.h:159 msgid "Please, choose the file:" msgstr "Välj filen:" #: ../gui/gnomint.glade.h:160 msgid "Please, choose the more suitable option for what you want to import:" msgstr "" "Vänligen välj det bäst passande alternativet för vad Du vill importera:" #: ../gui/gnomint.glade.h:161 msgid "" "Please, choose which part of the saved certificate you want to export:" msgstr "" "Vänligen välj vilken del av det sparade certifikatet Du vill exportera:" #: ../gui/gnomint.glade.h:162 msgid "" "Please, enter current\n" "password:" msgstr "" "Ange aktuellt\n" "lösenord:" #: ../gui/gnomint.glade.h:164 msgid "" "Please, enter new \n" "password:" msgstr "" "Ange nytt \n" "lösenord:" #: ../gui/gnomint.glade.h:166 msgid "Please, enter password" msgstr "Ange lösenordet" #: ../gui/gnomint.glade.h:167 msgid "Please, enter password:" msgstr "Ange lösenordet:" #: ../gui/gnomint.glade.h:168 msgid "Please, enter the prime size, in bits:" msgstr "Vänligen skriv in primärtalets storlek, i bitar (bits)." #: ../gui/gnomint.glade.h:169 msgid "" "Please, select the CA for which a Certificate \n" "Revocation List is going to be created:" msgstr "" "Vänligen välj den CA för vilken en Certificate \n" "Revocation List (CRL) ska skapas:" #: ../gui/gnomint.glade.h:171 msgid "Private key bit length:" msgstr "Bitlängd för privat nyckel:" #: ../gui/gnomint.glade.h:172 msgid "Private key type:" msgstr "Typ av privat nyckel:" #: ../gui/gnomint.glade.h:173 msgid "" "Protect CA database private \n" "keys with password:" msgstr "" "Skydda CA-databasens privata \n" "nycklar med ett lösenord:" #: ../gui/gnomint.glade.h:175 msgid "" "Protect CA database private keys\n" "with password:" msgstr "" "Skydda CA-databasens privata \n" "nycklar med ett lösenord:" #: ../gui/gnomint.glade.h:177 msgid "RSA" msgstr "RSA" #: ../gui/gnomint.glade.h:178 msgid "Remember this password during this gnoMint session" msgstr "Kom ihåg det här lösenordet under denna gnoMint-session." #: ../gui/gnomint.glade.h:179 msgid "Revo_ke" msgstr "Spä_rra" #: ../gui/gnomint.glade.h:180 msgid "Revoke" msgstr "Återkalla" #: ../gui/gnomint.glade.h:181 msgid "Revoke the selected certificate" msgstr "Återkalla det valda certifikatet" #: ../gui/gnomint.glade.h:182 msgid "Revokes the selected certificate" msgstr "Återkallar det valda certifikatet" #: ../gui/gnomint.glade.h:183 msgid "Root certificate prop" msgstr "" #: ../gui/gnomint.glade.h:184 msgid "SHA1 fingerprint" msgstr "SHA1-fingeravtryck" #: ../gui/gnomint.glade.h:185 msgid "SHA1FINGERPRINT" msgstr "SHA1FINGERAVTRYCK" #: ../gui/gnomint.glade.h:186 msgid "Serial number" msgstr "Serienummer" #: ../gui/gnomint.glade.h:187 msgid "Shows the CSR properties window" msgstr "Visar egenskaper för certifikatsigneringsbegäran" #: ../gui/gnomint.glade.h:188 msgid "Shows the certificate properties window" msgstr "Visar egenskaper för certifikatet" #: ../gui/gnomint.glade.h:189 msgid "Sign" msgstr "Signera" #: ../gui/gnomint.glade.h:190 msgid "Sign the selected Certificate Signing Request" msgstr "Signera vald Certificate Signing Request" #: ../gui/gnomint.glade.h:191 msgid "State or Province name" msgstr "Län eller region" #: ../gui/gnomint.glade.h:192 msgid "State or Province name: " msgstr "Län eller region: " #: ../gui/gnomint.glade.h:193 msgid "SubjectCN" msgstr "" #: ../gui/gnomint.glade.h:194 msgid "SubjectO" msgstr "" #: ../gui/gnomint.glade.h:195 msgid "SubjectOU" msgstr "" #: ../gui/gnomint.glade.h:196 msgid "TLS Web client" msgstr "" #: ../gui/gnomint.glade.h:197 msgid "TLS Web server" msgstr "" #: ../gui/gnomint.glade.h:198 msgid "" "The whole selected file, or some of its elements, seems to be cyphered using " "a password or passphrase.\n" "\n" "For importing the file into gnoMint database, you must provide an appropiate " "password." msgstr "" #: ../gui/gnomint.glade.h:201 msgid "" "This action requires using one or more private keys saved in the CA " "database.\n" "\n" "Please insert the database password." msgstr "" "Det här valet kräver användandet av minst en privat nyckel sparad i CA-" "databasen.\n" "\n" "Vänligen skriv in lösenordet för databasen." #: ../gui/gnomint.glade.h:204 ../src/certificate_properties.c:1128 #: ../src/tls.c:1078 msgid "Time stamping" msgstr "Tidsstämpling" #: ../gui/gnomint.glade.h:205 msgid "" "You are about to create and export a set of Diffie·Hellman parameters " "into a PKCS#3 structure file." msgstr "" "Du håller på att skapa och exportera ett set av Diffie·Hellman-" "parametrar till en PKCS#3-strukturfil." #: ../gui/gnomint.glade.h:206 msgid "" "You are about to sign a Certificate Signing Request, and this way, creating " "a new certificate. Please check the certificate properties." msgstr "" "Du håller på att signera en Certificate Signing Request, och genom detta, " "skapa ett nytt certifikat. Vänligen kontrollera certifikatets egenskaper." #: ../gui/gnomint.glade.h:207 msgid "" "You are about to sign a Certificate Signing Request. Please, choose the " "Certification Authority you are going to use for signing it." msgstr "" "Du håller på att signera en Certificate Signing Request. Vänligen välj den " "Certification Authority Du vill använda för att signera den." #: ../gui/gnomint.glade.h:208 msgid "_Add self-signed CA" msgstr "_Lägg till självsignerat CA" #: ../gui/gnomint.glade.h:209 msgid "_Certificates" msgstr "_Certifikat" #: ../gui/gnomint.glade.h:210 msgid "_Edit" msgstr "R_edigera" #: ../gui/gnomint.glade.h:211 msgid "_Help" msgstr "_Hjälp" #: ../gui/gnomint.glade.h:212 msgid "_Import" msgstr "_Importera" #: ../gui/gnomint.glade.h:213 msgid "_New certificate database" msgstr "_Ny certifikatdatabas" #: ../gui/gnomint.glade.h:214 msgid "_No" msgstr "_Nej" #: ../gui/gnomint.glade.h:215 msgid "_Open certificate database" msgstr "_Öppna certifikatdatabas" #: ../gui/gnomint.glade.h:216 msgid "_Revoked Certificates" msgstr "Spä_rrade certifikat" #: ../gui/gnomint.glade.h:217 msgid "_Save certificate database as..." msgstr "_Spara certifikatdatabas som..." #: ../gui/gnomint.glade.h:218 msgid "_Save filename in the database for automatic loading" msgstr "_Spara filnamn i databasen för automatisk inläsning" #: ../gui/gnomint.glade.h:219 msgid "_Sign" msgstr "Si_gnera" #: ../gui/gnomint.glade.h:220 msgid "_View" msgstr "_Visa" #: ../gui/gnomint.glade.h:221 msgid "_Yes" msgstr "_Ja" #: ../gui/gnomint.glade.h:222 msgid "gnoMint" msgstr "gnoMint" #: ../gui/gnomint.glade.h:223 msgid "gtk-cancel" msgstr "Avbryt" #: ../gui/gnomint.glade.h:224 msgid "gtk-ok" msgstr "OK" #: ../gui/gnomint.glade.h:225 msgid "label" msgstr "etikett" #: ../gui/gnomint.glade.h:226 msgid "may differ" msgstr "kan skilja sig" #: ../gui/gnomint.glade.h:227 msgid "must be the same" msgstr "måste vara samma" #: ../gui/gnomint.glade.h:228 msgid "page 3" msgstr "sida 3" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "" "Hantera X.509-certifikat och certifikatutfärdare, enkelt och grafiskt" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "Certifikatutfärdaren gnoMint" #: ../src/ca.c:147 msgid "Certificates" msgstr "Certifikat" #: ../src/ca.c:263 msgid "Certificate Signing Requests" msgstr "Certifikatsigneringsbegäran" #: ../src/ca.c:304 ../src/ca-cli-callbacks.c:168 ../src/ca-cli-callbacks.c:178 #: ../src/ca-cli-callbacks.c:189 ../src/ca-cli-callbacks.c:547 #: ../src/ca-cli-callbacks.c:551 ../src/ca-cli-callbacks.c:1162 #: ../src/ca-cli-callbacks.c:1166 ../src/certificate_properties.c:178 #: ../src/certificate_properties.c:183 msgid "%m/%d/%Y %R GMT" msgstr "%Y/%m/%d %R GMT" #: ../src/ca.c:448 ../src/certificate_properties.c:531 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "Ämne" #: ../src/ca.c:483 msgid "Serial" msgstr "Serienummer" #: ../src/ca.c:490 msgid "Activation" msgstr "Aktivering" #: ../src/ca.c:497 msgid "Expiration" msgstr "Utgång" #: ../src/ca.c:504 msgid "Revocation" msgstr "Spärrning" #: ../src/ca.c:791 msgid "Export certificate" msgstr "Exportera certifikat" #: ../src/ca.c:798 msgid "Export certificate signing request" msgstr "Exportera certificate signing request" #: ../src/ca.c:813 ../src/ca.c:849 ../src/ca.c:859 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "Det inträffade ett fel då certifikatet skulle exporteras." #: ../src/ca.c:815 ../src/ca.c:851 ../src/ca.c:861 msgid "There was an error while exporting CSR." msgstr "Det inträffade ett fel då CSR skulle exporteras." #: ../src/ca.c:874 ../src/ca.c:1040 msgid "Certificate exported successfully" msgstr "Certifikatet exporterades" #: ../src/ca.c:881 msgid "Certificate signing request exported successfully" msgstr "" #: ../src/ca.c:900 msgid "Export crypted private key" msgstr "Exportera krypterad privat nyckel" #: ../src/ca.c:929 ../src/ca.c:981 msgid "Private key exported successfully" msgstr "Privat nyckel exporterades" #: ../src/ca.c:951 msgid "Export uncrypted private key" msgstr "Exportera okrypterad privat nyckel" #: ../src/ca.c:1002 msgid "Export whole certificate in PKCS#12 package" msgstr "Exportera helt certifikat i PKCS#12-paket" #: ../src/ca.c:1073 msgid "Export CSR - gnoMint" msgstr "Exportera CSR - gnoMint" #: ../src/ca.c:1078 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" "Vänligen välj vilken del av den sparade Certificate Signing Request du vill " "exportera:" #: ../src/ca.c:1083 msgid "" "Export the Certificate Signing Request to a public file, in PEM " "format." msgstr "" "Exportera Certificate Signing Request till en publik fil, i PEM-" "format." #: ../src/ca.c:1088 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" "Exportera den sparade privata nyckeln till en lösenordsskyddad PKCS#8-" "fil. Filen bör endast kunna kommas åt av den till vilken Certificate Signing " "Request är utfärdat." #: ../src/ca.c:1146 msgid "Unexpected error" msgstr "Oväntat fel" #: ../src/ca.c:1196 msgid "Are you sure you want to revoke this certificate?" msgstr "Är du säker på att du vill spärra detta certifikat?" #: ../src/ca.c:1235 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "" "Är du säker på att du vill ta bort denna certifikatsigneringsbegäran?" #: ../src/ca.c:1512 msgid "Change CA password - gnoMint" msgstr "Ändra CA-lösenord - gnoMint" #: ../src/ca.c:1530 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" "Det lösenord Du skrivit in är inte det som behövs för den valda databasen." #: ../src/ca.c:1545 msgid "Error while changing database password. The operation was cancelled." msgstr "" "Ett fel inträffade då databasens lösenord skulle bytas. Operationen avbröts." #: ../src/ca.c:1554 msgid "Password changed successfully" msgstr "Lösenordet ändrades utan problem" #: ../src/ca.c:1564 ../src/ca-cli-callbacks.c:1002 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1574 msgid "Password established successfully" msgstr "" #: ../src/ca.c:1584 msgid "Error while removing database password. The operation was cancelled." msgstr "" "Ett fel inträffade då databasens lösenord skulle tas bort. Operationen " "avbröts." #: ../src/ca.c:1593 msgid "Password removed successfully" msgstr "Lösenordet togs bort" #: ../src/ca.c:1731 msgid "Save Diffie-Hellman parameters" msgstr "Spara Diffie-Hellman-parametrar" #: ../src/ca.c:1757 msgid "Diffie-Hellman parameters saved successfully" msgstr "Diffie-Hellman-parametrar sparades" #. Import single file #: ../src/ca.c:1826 msgid "Select PEM file to import" msgstr "Välj PEM-fil att importera" #: ../src/ca.c:1847 #, c-format msgid "Problem when importing '%s' file" msgstr "Ett problem inträffade vid importerandet av filen '%s'" #: ../src/ca.c:1860 msgid "Select directory to import" msgstr "Välj katalog att importera" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "" #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "Stäng aktuell fil och skapa en ny databas med angivet filnamn." #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "" #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "Stäng aktuell fil och öppna filen med angivet filnamn" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "" #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "Spara aktuell fil under ett annat filnamn" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "Lista" #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "Påbörja skapandet av en ny CSR" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "Påbörja skapandet av en ny självsignerad CA" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "" #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" "Extraherar den privata nyckeln ur certifikatet med angivet internt id och " "sparar den till den angivna filen" #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "" #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" "Extraherar den privata nyckeln ur CSR med angivet internt id och sparar den " "till den angivna filen" #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "" #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "Återkallar certifikatet med angivet internt id" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "" #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "" #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "Ta bort angiven CSR från databasen" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "" #: ../src/ca-cli.c:55 msgid "" "Generate a new CRL for the given CA, saving it into the file " msgstr "" #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "" #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" "Generera ett set nya Diffie–Hellman-parametrar och spara det till filen " "" #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "Ändra lösenordet för den aktuella databasen" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "" #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "Importera filen med angivet filnamn " #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "" #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "Importera angiven katalog som en OpenSSL-CA katalog" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "" #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "Visa egenskaper för angivet certifikat" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "" #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "Visa egenskaper för angiven CSR" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "" #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "Visa CA-policy" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "" #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "Ändra angiven CA-policy" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "Visa programmets inställningar" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "" #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "Ställ in angiven programinställning" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "Visa meddelandet \"Om programmet\"" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "Visa information om garanti" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "Visa information om distribution" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "Visa versionsinformation" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "Visa hjälpmeddelande (det här)" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "Stäng databasen och avsluta programmet" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "Öppnar databasen %s..." #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr " OK.\n" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr " Fel.\n" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" "\n" "\n" "%s version %s\n" "%s\n" "\n" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" "Det här programmet levereras UTAN NÅGON SOM HELST GARANTI;\n" "för detaljer skriv \"warranty\".\n" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" "Det här är fri programvara, och Du är välkommen att sprida den\n" "under vissa förhållanden; skriv 'distribution' för detaljer.\n" "\n" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "Ej ihop-parade citationstecken.\n" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" "Ogiltigt kommando. Försök med 'help' för att få en lista över kommandon som " "programmet känner igen.\n" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "Felaktigt antal parametrar.\n" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "Syntax: %s\n" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "Filen finns redan, så den kommer att skrivas över." #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:638 msgid "Are you sure? Yes/[No] " msgstr "Är Du säker? Yes/[No] " #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "Problem vid öppnandet av ny '%s' CA-databas\n" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "Filen '%s' öppnad\n" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "Problem vid öppnandet av '%s' CA-databas\n" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "Aktuell öppnad fil: %s\n" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "Antal certifikat i filen: %d\n" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "Antal CSR i filen: %d\n" #: ../src/ca-cli-callbacks.c:140 #, c-format msgid "CertList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:143 msgid "CertList IsCA|Y\t" msgstr "" #: ../src/ca-cli-callbacks.c:145 msgid "CertList IsCA|N\t" msgstr "" #: ../src/ca-cli-callbacks.c:150 #, c-format msgid "CertList Subject|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:153 msgid "CertList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:155 msgid "CertList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:158 msgid "CertList PKeyInDB|Y\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:160 msgid "CertList PKeyInDB|N\t\t" msgstr "CertList PKeyiDB|N\t\t" #: ../src/ca-cli-callbacks.c:164 msgid "CertList Activation|\t" msgstr "CertList aktivering|\t" #: ../src/ca-cli-callbacks.c:169 #, c-format msgid "CertList Activation|%s\t" msgstr "CertList aktivering|%s\t" #: ../src/ca-cli-callbacks.c:174 msgid "CertList Expiration|\t" msgstr "CertList utgång|\t" #: ../src/ca-cli-callbacks.c:179 #, c-format msgid "CertList Expiration|%s\t" msgstr "CertList utgång|%s\t" #: ../src/ca-cli-callbacks.c:185 msgid "CertList Revocation|\n" msgstr "CertList återkallelse|\n" #: ../src/ca-cli-callbacks.c:190 #, c-format msgid "CertList Revocation|%s\n" msgstr "CertList återkallelse|%s\n" #: ../src/ca-cli-callbacks.c:207 #, c-format msgid "Certificates in Database:\n" msgstr "Certifikat i databas:\n" #: ../src/ca-cli-callbacks.c:208 #, c-format msgid "" "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "Id.\tÄr CA?\tCertifikatämne\tNyckel i DB?\tAktivering\t\tUtgång" #: ../src/ca-cli-callbacks.c:211 #, c-format msgid "\t\tRevocation\n" msgstr "\t\ttab]\tÅterkallelse\n" #: ../src/ca-cli-callbacks.c:221 #, c-format msgid "CsrList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "CsrList ParentID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 msgid "CsrList ParentID|\t" msgstr "" #: ../src/ca-cli-callbacks.c:228 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "" #: ../src/ca-cli-callbacks.c:231 msgid "CsrList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:233 msgid "CsrList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:236 msgid "CsrList PKeyInDB|Y\n" msgstr "" #: ../src/ca-cli-callbacks.c:238 msgid "CsrList PKeyInDB|N\n" msgstr "" #: ../src/ca-cli-callbacks.c:246 #, c-format msgid "Certificate Requests in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:247 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "" #: ../src/ca-cli-callbacks.c:275 ../src/ca-cli-callbacks.c:945 #: ../src/ca-cli-callbacks.c:1310 ../src/ca-cli-callbacks.c:1339 msgid "The given CA id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:328 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:330 ../src/ca-cli-callbacks.c:453 msgid "Enter country (C)" msgstr "" #: ../src/ca-cli-callbacks.c:336 ../src/ca-cli-callbacks.c:459 msgid "Enter state or province (ST)" msgstr "" #: ../src/ca-cli-callbacks.c:342 ../src/ca-cli-callbacks.c:465 msgid "Enter locality or city (L)" msgstr "" #: ../src/ca-cli-callbacks.c:348 ../src/ca-cli-callbacks.c:471 msgid "Enter organization (O)" msgstr "" #: ../src/ca-cli-callbacks.c:354 ../src/ca-cli-callbacks.c:477 msgid "Enter organizational unit (OU)" msgstr "" #: ../src/ca-cli-callbacks.c:360 ../src/ca-cli-callbacks.c:483 msgid "Enter common name (CN)" msgstr "" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:493 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "" #: ../src/ca-cli-callbacks.c:382 ../src/ca-cli-callbacks.c:505 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "" #: ../src/ca-cli-callbacks.c:386 #, c-format msgid "These are the provided CSR properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:388 ../src/ca-cli-callbacks.c:526 #: ../src/ca-cli-callbacks.c:1152 ../src/ca-cli-callbacks.c:1204 #, c-format msgid "Subject:\n" msgstr "" #: ../src/ca-cli-callbacks.c:389 ../src/ca-cli-callbacks.c:527 #, c-format msgid "\tDistinguished Name: " msgstr "" #: ../src/ca-cli-callbacks.c:403 ../src/ca-cli-callbacks.c:541 #, c-format msgid "Key pair\n" msgstr "" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:542 #, c-format msgid "\tType: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:543 #, c-format msgid "\tKey bitlength: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:407 ../src/ca-cli-callbacks.c:554 msgid "Do you want to change anything? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:411 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:412 ../src/ca-cli-callbacks.c:559 msgid "Are you sure? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:417 ../src/ca-cli-callbacks.c:564 #: ../src/ca-cli-callbacks.c:648 ../src/ca-cli-callbacks.c:779 #: ../src/ca-cli-callbacks.c:902 ../src/ca-cli-callbacks.c:931 #: ../src/ca-cli-callbacks.c:997 ../src/ca-cli-callbacks.c:1024 #: ../src/ca-cli-callbacks.c:1052 ../src/ca-cli-callbacks.c:1067 #: ../src/ca-cli-callbacks.c:1369 ../src/ca-cli-callbacks.c:1412 #, c-format msgid "Operation cancelled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:451 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "" #: ../src/ca-cli-callbacks.c:510 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" #: ../src/ca-cli-callbacks.c:524 #, c-format msgid "These are the provided new CA properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:544 #, c-format msgid "Validity\n" msgstr "" #: ../src/ca-cli-callbacks.c:545 ../src/ca-cli-callbacks.c:1160 #, c-format msgid "Validity:\n" msgstr "" #: ../src/ca-cli-callbacks.c:548 ../src/ca-cli-callbacks.c:1163 #, c-format msgid "\tActivated on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:552 ../src/ca-cli-callbacks.c:1167 #, c-format msgid "\tExpires on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:558 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:632 #: ../src/ca-cli-callbacks.c:1137 msgid "The given certificate id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:591 ../src/ca-cli-callbacks.c:615 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:608 ../src/ca-cli-callbacks.c:760 #: ../src/ca-cli-callbacks.c:915 ../src/ca-cli-callbacks.c:1193 msgid "The given CSR id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:638 msgid "This certificate will be revoked." msgstr "" #: ../src/ca-cli-callbacks.c:644 #, c-format msgid "Certificate revoked.\n" msgstr "" #: ../src/ca-cli-callbacks.c:658 ../src/ca-cli-callbacks.c:1174 #, c-format msgid "Certificate uses:\n" msgstr "" #: ../src/ca-cli-callbacks.c:661 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:663 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:667 #, c-format msgid "* CRL signing use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:669 #, c-format msgid "* CRL signing use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:673 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:675 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:679 ../src/ca-cli-callbacks.c:681 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:685 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:687 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:691 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:693 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:697 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:699 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:702 #, c-format msgid "Certificate purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:705 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:707 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:711 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:713 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:717 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:719 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:723 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:725 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:729 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:731 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:735 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:737 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:741 #, c-format msgid "* Any purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:743 #, c-format msgid "* Any purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:767 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:769 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "" #: ../src/ca-cli-callbacks.c:772 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" #: ../src/ca-cli-callbacks.c:782 #, c-format msgid "" "The certificate will be generated with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:800 ../src/ca-cli-callbacks.c:888 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:803 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:806 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:808 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:812 msgid "* Enable CRL Signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:814 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:818 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:820 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:824 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:826 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:830 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:832 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:836 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:838 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:842 msgid "Enable Key Agreement use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:844 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:848 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:850 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:854 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:856 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:860 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:862 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:866 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:868 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:872 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:874 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:878 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:883 msgid "Enable any purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:899 #, c-format msgid "Certificate signed.\n" msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This Certificate Signing Request will be deleted." msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:927 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "" #: ../src/ca-cli-callbacks.c:952 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:969 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "" #: ../src/ca-cli-callbacks.c:978 #, c-format msgid "" "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Currently, the database is not password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Do you want to password protect it? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:991 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password:" msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:995 ../src/ca-cli-callbacks.c:1065 msgid "The introduced passwords are distinct." msgstr "" #: ../src/ca-cli-callbacks.c:1006 #, c-format msgid "Password established successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Nothing done.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Currently, the database IS password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:1021 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1022 ../src/ca-cli-callbacks.c:1050 msgid "Please, insert the current database password (Empty to cancel): " msgstr "" #: ../src/ca-cli-callbacks.c:1029 ../src/ca-cli-callbacks.c:1057 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" #: ../src/ca-cli-callbacks.c:1034 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1039 #, c-format msgid "Password removed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1049 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1061 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password:" msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:1073 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1079 #, c-format msgid "Password changed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1097 msgid "Problem when importing the given file." msgstr "" #: ../src/ca-cli-callbacks.c:1100 #, c-format msgid "File imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1116 #, c-format msgid "Directory imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1145 #, c-format msgid "Certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1149 #, c-format msgid "\tSerial number: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1157 #: ../src/ca-cli-callbacks.c:1205 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1154 #: ../src/ca-cli-callbacks.c:1157 ../src/ca-cli-callbacks.c:1158 msgid "None." msgstr "" #: ../src/ca-cli-callbacks.c:1154 ../src/ca-cli-callbacks.c:1158 #: ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tUnique ID: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1156 #, c-format msgid "Issuer:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1169 #, c-format msgid "Fingerprints:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1170 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1171 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1202 #, c-format msgid "Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1275 msgid "Generated certs inherit Country from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1276 msgid "Generated certs inherit State from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1277 msgid "Generated certs inherit Locality from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1278 msgid "Generated certs inherit Organization from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1279 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1280 msgid "Country in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1281 msgid "State in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1282 msgid "Locality in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1283 msgid "Organization in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1284 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "" #: ../src/ca-cli-callbacks.c:1285 msgid "Maximum number of hours between CRL updates " msgstr "" #: ../src/ca-cli-callbacks.c:1286 msgid "Maximum number of months before expiration of new certs " msgstr "" #: ../src/ca-cli-callbacks.c:1287 msgid "CA use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1288 msgid "CRL Sign use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1289 msgid "Non reputation use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1290 msgid "Digital signature use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1291 msgid "Key encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1292 msgid "Key agreement use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1293 msgid "Data encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1294 msgid "TLS web server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1295 msgid "TLS web client purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1296 msgid "Time stamping purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1297 msgid "Code signing server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1298 msgid "Email protection purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1299 msgid "OCSP signing purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1300 msgid "Any purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1314 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1316 #, c-format msgid "" "\n" "Policies:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1318 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1344 msgid "The given policy id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1356 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1360 ../src/ca-cli-callbacks.c:1404 msgid "Are you sure? Yes/[No] : " msgstr "" #: ../src/ca-cli-callbacks.c:1365 #, c-format msgid "Policy set correctly to '%d'.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1379 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1381 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1382 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "" #: ../src/ca-cli-callbacks.c:1394 msgid "The given preference id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1400 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1422 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1423 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1424 ../src/ca-cli-callbacks.c:1425 #: ../src/main.c:502 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " Daniel Nylander https://launchpad.net/~yeager\n" " Marcus E https://launchpad.net/~marcus+e" #: ../src/ca-cli-callbacks.c:1425 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1432 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1450 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1465 #, c-format msgid "%s version %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1474 #, c-format msgid "Available commands:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "===================\n" msgstr "" #: ../src/ca-cli-callbacks.c:1485 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "Nyckelgenerering misslyckades" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "Genererar nytt DSA-nyckelpar" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "Certifikatgenerering misslyckades" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "Skapar CA-databas" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "CA-databasgenerering misslyckades" #: ../src/ca_creation.c:144 msgid "CA generated successfully" msgstr "Certifikatutfärdare genererades utan problem" #: ../src/ca_file.c:196 #, c-format msgid "Error opening filename '%s'" msgstr "" #: ../src/ca_file.c:299 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" #: ../src/ca_file.c:1311 msgid "Cannot find parent CA in database" msgstr "" #: ../src/ca_file.c:1499 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "" #: ../src/ca_file.c:1930 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" #: ../src/ca_file.c:1933 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" #: ../src/certificate_properties.c:356 ../src/tls.c:1054 msgid "Certificate signing" msgstr "Certifikatsignering" #: ../src/certificate_properties.c:360 msgid "Key encipherment only" msgstr "" #: ../src/certificate_properties.c:362 msgid "Key decipherment only" msgstr "" #: ../src/certificate_properties.c:376 msgid "Version" msgstr "Version" #: ../src/certificate_properties.c:411 msgid "Serial Number" msgstr "Serienummer" #: ../src/certificate_properties.c:427 ../src/certificate_properties.c:1060 msgid "Signature" msgstr "Signatur" #: ../src/certificate_properties.c:430 ../src/certificate_properties.c:558 #: ../src/certificate_properties.c:561 ../src/certificate_properties.c:1027 msgid "Algorithm" msgstr "Algoritm" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:594 ../src/certificate_properties.c:622 #: ../src/certificate_properties.c:1030 msgid "Parameters" msgstr "Parametrar" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:622 ../src/certificate_properties.c:624 #: ../src/certificate_properties.c:635 ../src/certificate_properties.c:644 #: ../src/certificate_properties.c:1031 msgid "(unknown)" msgstr "(okänd)" #: ../src/certificate_properties.c:465 msgid "Issuer" msgstr "Utfärdare" #: ../src/certificate_properties.c:493 msgid "Validity" msgstr "Giltighet" #: ../src/certificate_properties.c:496 msgid "Not Before" msgstr "Inte före" #: ../src/certificate_properties.c:499 msgid "Not After" msgstr "Inte efter" #: ../src/certificate_properties.c:555 msgid "Subject Public Key Info" msgstr "" #: ../src/certificate_properties.c:568 msgid "RSA PublicKey" msgstr "" #: ../src/certificate_properties.c:578 msgid "Modulus" msgstr "" #: ../src/certificate_properties.c:584 msgid "Public Exponent" msgstr "" #: ../src/certificate_properties.c:617 msgid "DSA PublicKey" msgstr "" #: ../src/certificate_properties.c:624 msgid "Subject Public Key" msgstr "" #: ../src/certificate_properties.c:635 msgid "Issuer Unique ID" msgstr "" #: ../src/certificate_properties.c:644 msgid "Subject Unique ID" msgstr "" #: ../src/certificate_properties.c:666 ../src/certificate_properties.c:689 #: ../src/certificate_properties.c:758 ../src/certificate_properties.c:862 #: ../src/certificate_properties.c:890 ../src/certificate_properties.c:930 #: ../src/certificate_properties.c:987 ../src/certificate_properties.c:1112 msgid "Value" msgstr "Värde" #: ../src/certificate_properties.c:728 ../src/certificate_properties.c:832 msgid "DNS Name" msgstr "DNS-namn" #: ../src/certificate_properties.c:733 ../src/certificate_properties.c:837 msgid "RFC822 Name" msgstr "RFC822-namn" #: ../src/certificate_properties.c:738 ../src/certificate_properties.c:842 msgid "URI" msgstr "URI" #: ../src/certificate_properties.c:744 msgid "IP" msgstr "IP" #: ../src/certificate_properties.c:751 ../src/certificate_properties.c:855 msgid "Directory Name" msgstr "Katalognamn" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "TRUE" msgstr "SANT" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "FALSE" msgstr "FALSKT" #: ../src/certificate_properties.c:790 msgid "CA" msgstr "CA" #: ../src/certificate_properties.c:794 msgid "Path Length Constraint" msgstr "" #: ../src/certificate_properties.c:848 msgid "IP Address" msgstr "IP-adress" #: ../src/certificate_properties.c:963 msgid "Extensions" msgstr "Utökningar" #: ../src/certificate_properties.c:972 msgid "Critical" msgstr "Kritiskt" #: ../src/certificate_properties.c:1000 msgid "Certificate" msgstr "Certifikat" #: ../src/certificate_properties.c:1025 msgid "Signature Algorithm" msgstr "Signaturalgoritm" #: ../src/certificate_properties.c:1108 msgid "Name" msgstr "Namn" #: ../src/certificate_properties.c:1124 ../src/tls.c:1070 msgid "TLS WWW Server" msgstr "" #: ../src/certificate_properties.c:1125 msgid "TLS WWW Client" msgstr "" #: ../src/certificate_properties.c:1131 msgid "Subject Directory Attributes" msgstr "" #: ../src/certificate_properties.c:1132 msgid "Subject Key Identifier" msgstr "" #: ../src/certificate_properties.c:1133 msgid "Key Usage" msgstr "Nyckelanvändning" #: ../src/certificate_properties.c:1134 msgid "Private Key Usage Period" msgstr "" #: ../src/certificate_properties.c:1135 msgid "Subject Alternative Name" msgstr "" #: ../src/certificate_properties.c:1136 msgid "Basic Constraints" msgstr "" #: ../src/certificate_properties.c:1137 msgid "Name Constraints" msgstr "" #: ../src/certificate_properties.c:1138 msgid "CRL Distribution Points" msgstr "" #: ../src/certificate_properties.c:1139 msgid "Certificate Policies" msgstr "Certifikatpolicy" #: ../src/certificate_properties.c:1140 msgid "Policy Mappings" msgstr "" #: ../src/certificate_properties.c:1141 msgid "Authority Key Identifier" msgstr "" #: ../src/certificate_properties.c:1142 msgid "Policy Constraints" msgstr "" #: ../src/certificate_properties.c:1143 msgid "Extended Key Usage" msgstr "" #: ../src/certificate_properties.c:1144 msgid "Delta CRL Distribution Point" msgstr "" #: ../src/certificate_properties.c:1145 msgid "Inhibit Any-Policy" msgstr "" #: ../src/creation_process_window.c:79 msgid "CA creation process finished" msgstr "Process för CA-skapande färdigställdes" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "Skapandeprocessen avbröts" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "Process för CSR-skapande färdigställdes" #: ../src/creation_process_window.c:274 msgid "Creating Certificate Signing Request" msgstr "" #: ../src/crl.c:250 msgid "Export Certificate Revocation List" msgstr "" #: ../src/crl.c:280 msgid "CRL generated successfully" msgstr "CRL-generering lyckades" #: ../src/crl.c:309 ../src/crl.c:371 ../src/crl.c:382 msgid "There was an error while exporting CRL." msgstr "" #: ../src/crl.c:320 msgid "There was an error while getting revoked certificates." msgstr "" #: ../src/crl.c:336 ../src/crl.c:355 msgid "There was an error while generating CRL." msgstr "Det inträffade ett fel vid generering av CRL." #: ../src/crl.c:363 msgid "There was an error while writing CRL." msgstr "Det inträffade ett fel vid skrivning av CRL." #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "Genererar CSR" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "CSR-generering misslyckades" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "Sparar CSR i databasen" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "CSR kunde inte sparas" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "CSR-generering lyckades" #: ../src/csr_properties.c:78 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" #: ../src/dialog.c:79 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" #: ../src/dialog.c:103 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "" #: ../src/dialog.c:104 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "" #: ../src/dialog.c:372 msgid "To do. Feature not implemented yet." msgstr "" #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "" #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "" #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "" #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "" #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "Infoga lösenfras (8 eller fler tecken):" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "Infoga lösenfras (bekräftelse):" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "" #: ../src/export.c:110 msgid "Operation cancelled." msgstr "" #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "" #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "" #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "" #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "" #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "" #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "" #: ../src/gnomint-cli.c:59 ../src/main.c:129 #, c-format msgid "Failed to initialize: %s\n" msgstr "" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "" #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "" #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "" #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "Privat nyckel för %s" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "" #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "" #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "" #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "" #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "" #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "" #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "" #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" #: ../src/main.c:126 msgid "- A graphical Certification Authority manager" msgstr "- En grafisk hanterare för certifikatutfärdare" #: ../src/main.c:285 msgid "Create new CA database" msgstr "Skapa ny CA-databas" #: ../src/main.c:323 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" #: ../src/main.c:336 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "" #: ../src/main.c:357 msgid "Open CA database" msgstr "Öppna CA-databas" #: ../src/main.c:380 ../src/main.c:420 #, c-format msgid "Problem when opening '%s' CA database" msgstr "" #: ../src/main.c:445 msgid "Save CA database as..." msgstr "Spara CA-databas som..." #: ../src/main.c:497 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" "gnoMint är ett program för att skapa och hantera certifikatutfärdare och " "deras certifikat" #: ../src/main.c:498 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" "Detta program är fri programvara. Du kan distribuera det och/eller modifiera " "det under villkoren i GNU General Public License, publicerad av Free " "Software Foundation, antingen version 3 eller (om du så vill) någon senare " "version.\n" "\n" "Detta program distribueras i hopp om att det ska vara användbart, men UTAN " "NÅGON SOM HELST GARANTI, även utan underförstådd garanti om SÄLJBARHET eller " "LÄMPLIGHET FÖR NÅGOT SPECIELLT ÄNDAMÅL. Se GNU General Public License för " "ytterligare information. \n" "\n" "Du bör ha fått en kopia av GNU General Public License tillsammans med detta " "program. Om inte, skriv till Free Software Foundation, Inc., 51 Franklin " "Street, Fifth Floor, Boston, MA 02110-1301, USA." #: ../src/new_cert.c:329 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:335 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:341 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:347 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:353 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:799 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" #: ../src/new_cert.c:815 msgid "Error while signing CSR." msgstr "" #: ../src/pkey_manage.c:80 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" #: ../src/pkey_manage.c:125 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" #: ../src/pkey_manage.c:171 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:187 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:191 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" #. The file cannot be opened #: ../src/pkey_manage.c:196 msgid "The file designated in database couldn't be opened." msgstr "" #. The file doesn't exist #: ../src/pkey_manage.c:201 msgid "The file designated in database doesn't exist." msgstr "" #: ../src/pkey_manage.c:760 ../src/pkey_manage.c:811 msgid "The given password doesn't match the one used in the database" msgstr "" #: ../src/pkey_manage.c:798 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" #: ../src/pkey_manage.c:799 msgid "Please insert the database password:" msgstr "" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "" #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "Fel vid skapande av privat nyckel: %d" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:553 ../src/tls.c:855 #, c-format msgid "Error exporting private key to PEM structure." msgstr "" #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "" #: ../src/tls.c:441 ../src/tls.c:689 #, c-format msgid "Error when setting certificate version" msgstr "" #: ../src/tls.c:451 ../src/tls.c:702 #, c-format msgid "Error when setting certificate serial number" msgstr "" #: ../src/tls.c:460 ../src/tls.c:711 #, c-format msgid "Error when setting activation time" msgstr "" #: ../src/tls.c:465 ../src/tls.c:719 #, c-format msgid "Error when setting expiration time" msgstr "" #: ../src/tls.c:511 ../src/tls.c:768 #, c-format msgid "Error when setting basicConstraint extension" msgstr "" #: ../src/tls.c:516 ../src/tls.c:810 #, c-format msgid "Error when setting keyUsage extension" msgstr "" #: ../src/tls.c:527 ../src/tls.c:784 #, c-format msgid "Error when setting subject key identifier extension" msgstr "" #: ../src/tls.c:531 ../src/tls.c:758 #, c-format msgid "Error when setting authority key identifier extension" msgstr "" #: ../src/tls.c:541 #, c-format msgid "Error when signing self-signed certificate" msgstr "" #: ../src/tls.c:571 #, c-format msgid "Error when initializing csr structure" msgstr "" #: ../src/tls.c:575 #, c-format msgid "Error when setting csr version" msgstr "" #: ../src/tls.c:608 #, c-format msgid "Error when signing self-signed csr" msgstr "" #: ../src/tls.c:619 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "" #: ../src/tls.c:673 #, c-format msgid "Error when initializing crt structure" msgstr "" #: ../src/tls.c:681 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "" #: ../src/tls.c:840 #, c-format msgid "Error when signing certificate" msgstr "" #: ../src/tls.c:1058 msgid "Key encipher only" msgstr "" #: ../src/tls.c:1060 msgid "Key decipher only" msgstr "" #: ../src/tls.c:1072 msgid "TLS WWW Client." msgstr "" #~ msgid "gtk-add" #~ msgstr "Lägg till" #~ msgid "gtk-delete" #~ msgstr "Ta bort" #~ msgid "gtk-properties" #~ msgstr "Egenskaper" gnomint-1.3.0/po/es.po0000664000175000017500000035572712672103073011522 00000000000000# gnoMint # Copyright (C) 2006-2010 David Marin Carreño # This file is distributed under the same license as the gnoMint package. # David Marin Carreño , 2006-2010. # # msgid "" msgstr "" "Project-Id-Version: gnoMint 0.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2010-08-11 12:13+0200\n" "PO-Revision-Date: 2010-08-11 12:11+0200\n" "Last-Translator: DiegoJ \n" "Language-Team: Spanish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2009-11-08 11:12+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "Exportación automática de certificados a gnome-keyring" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "Visibilidad de solicitudes de certificación" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "Visibilidad de certificados revocados" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" "El tamaño (anchura,altura) de gnoMint al iniciarse. No debe ser menor a" "(320,200)." #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "Si las solicitudes de certificado deben ser visibles." #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" "Si los certificados recién creados o importados son exportados " "automáticamente al almacén de certificados de gnome-keyring." #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "Si los certificados revocados deben ser visibles" #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "Tamaño de ventana" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "Gestiona autoridades de certificación y certificados X.509" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "gnoMint. Gestor de ACs X.509" #: ../src/ca.c:149 msgid "Certificates" msgstr "Certificados" #: ../src/ca.c:287 msgid "Certificate Signing Requests" msgstr "Solicitudes de certificación" #: ../src/ca.c:331 ../src/ca-cli-callbacks.c:172 ../src/ca-cli-callbacks.c:186 #: ../src/ca-cli-callbacks.c:201 ../src/ca-cli-callbacks.c:575 #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:1202 #: ../src/ca-cli-callbacks.c:1211 ../src/certificate_properties.c:177 #: ../src/certificate_properties.c:187 msgid "%m/%d/%Y %R GMT" msgstr "%d/%m/%Y %R GMT" #: ../src/ca.c:334 ../src/ca-cli-callbacks.c:175 ../src/ca-cli-callbacks.c:189 #: ../src/ca-cli-callbacks.c:204 ../src/ca-cli-callbacks.c:578 #: ../src/ca-cli-callbacks.c:587 ../src/ca-cli-callbacks.c:1205 #: ../src/ca-cli-callbacks.c:1214 ../src/certificate_properties.c:180 #: ../src/certificate_properties.c:190 msgid "%m/%d/%Y %H:%M GMT" msgstr "%d/%m/%Y %H:%M GMT" #: ../src/ca.c:480 ../src/certificate_properties.c:563 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "Titular" #: ../src/ca.c:515 msgid "Serial" msgstr "Nº serie" #: ../src/ca.c:522 msgid "Activation" msgstr "Activación" #: ../src/ca.c:529 msgid "Expiration" msgstr "Caducidad" #: ../src/ca.c:536 msgid "Revocation" msgstr "Revocación" #: ../src/ca.c:823 msgid "Export certificate" msgstr "Exportar certificado" #: ../src/ca.c:830 msgid "Export certificate signing request" msgstr "Exportar solicitud de certificación" #: ../src/ca.c:845 ../src/ca.c:881 ../src/ca.c:891 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "Ocurrió un error al exportar el certificado" #: ../src/ca.c:847 ../src/ca.c:883 ../src/ca.c:893 msgid "There was an error while exporting CSR." msgstr "Ocurrió un error al exportar la solicitud de certificación." #: ../src/ca.c:906 ../src/ca.c:1072 msgid "Certificate exported successfully" msgstr "Certificado exportado con éxito" #: ../src/ca.c:913 msgid "Certificate signing request exported successfully" msgstr "Solicitud de certificación exportada correctamente" #: ../src/ca.c:932 msgid "Export crypted private key" msgstr "Exportar clave privada cifrada." #: ../src/ca.c:961 ../src/ca.c:1013 msgid "Private key exported successfully" msgstr "Clave privada exportada con éxito" #: ../src/ca.c:983 msgid "Export uncrypted private key" msgstr "Exportar clave privada sin cifrar." #: ../src/ca.c:1034 msgid "Export whole certificate in PKCS#12 package" msgstr "Exportar todo el certificado en un paquete PKCS#12" #: ../src/ca.c:1105 msgid "Export CSR - gnoMint" msgstr "Exportar solicitud de certificación - gnoMint" #: ../src/ca.c:1110 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" "Seleccione qué parte almacenada de la solicitud de certificación desea " "exportar:" #: ../src/ca.c:1115 msgid "" "Export the Certificate Signing Request to a public file, in PEM format." msgstr "" "Exporta la solicitud de certificación a un fichero público en formato " "PEM" #: ../src/ca.c:1120 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" "Exporta la clave privada almacenada a un fichero PKCS#8 protegido con " "clave. Este fichero sólo debería ser accesible para el titular de la " "soliticud de certificación." #: ../src/ca.c:1178 msgid "Unexpected error" msgstr "Error inesperado" #: ../src/ca.c:1234 msgid "Are you sure you want to revoke this certificate?" msgstr "¿Está seguro de que desea revocar este certificado?" #: ../src/ca.c:1235 msgid "" "Revoking a certificate will include it in the next CRL, marking it as " "invalid. This way, any future use of the certificate will be denied (as long " "as the CRL is checked)." msgstr "" "Revocar un certificado hará que se incluya en la siguiente CRL, marcándolo " "como no válido. Así, se impedirá cualquier uso futuro del certificado " "(siempre y cuando se compruebe la CRL)" #: ../src/ca.c:1243 msgid "Are you sure you want to revoke this CA certificate?" msgstr "¿Está seguro de que desea revocar este certificado de AC?" #: ../src/ca.c:1244 msgid "" "Revoking a certificate will include it in the next CRL, marking it as " "invalid. This way, any future use of the certificate will be denied (as long " "as the CRL is checked). \n" "\n" "Moreover, revoking a CA certificate can invalidate all the certificates " "generated with it, so all them should be regenerated with a new CA " "certificate." msgstr "" "Revocar un certificado hará que se incluya en la siguiente CRL, marcándolo " "como no válido. Así, se impedirá cualquier uso futuro del certificado " "(siempre y cuando se compruebe la CRL)\n" "\n" "Además, revocar el certificado de una AC puede invalidar todos los " "certificados generados con él, por lo que todos deberían regenerarse con un " "nuevo certificado de AC." #: ../src/ca.c:1283 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "¿Está seguro de que desea borrar esta solicitud de certificación?" #: ../src/ca.c:1560 msgid "Change CA password - gnoMint" msgstr "Cambiando contraseña de AC - gnoMint" #: ../src/ca.c:1578 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" "La contraseña actual que ha introducido no coincide con la contraseña real " "de la base de datos." #: ../src/ca.c:1593 msgid "Error while changing database password. The operation was cancelled." msgstr "" "Ocurrió un error al cambiar la contraseña de la base de datos. Se canceló la " "operación." #: ../src/ca.c:1602 msgid "Password changed successfully" msgstr "Contraseña cambiada con éxito" #: ../src/ca.c:1612 ../src/ca-cli-callbacks.c:1037 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "" "Ocurrió un error al establecer la contraseña de la base de datos. Se canceló " "la operación." #: ../src/ca.c:1622 msgid "Password established successfully" msgstr "Contraseña establecida con éxito" #: ../src/ca.c:1632 msgid "Error while removing database password. The operation was cancelled." msgstr "" "Ocurrió un error al eliminar la contraseña de la base de datos. Se canceló " "la operación." #: ../src/ca.c:1641 msgid "Password removed successfully" msgstr "Contraseña eliminada con éxito" #: ../src/ca.c:1779 msgid "Save Diffie-Hellman parameters" msgstr "Guardar parámetros Diffie-Hellman" #: ../src/ca.c:1805 msgid "Diffie-Hellman parameters saved successfully" msgstr "Parámetros Diffie-Hellman guardados correctamente" #. Import single file #: ../src/ca.c:1875 msgid "Select PEM file to import" msgstr "Seleccione fichero PEM a importar" #: ../src/ca.c:1896 #, c-format msgid "Problem when importing '%s' file" msgstr "Hubo problemas al importar el fichero '%s'" #: ../src/ca.c:1909 msgid "Select directory to import" msgstr "Seleccione directorio a importar" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "newdb " #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "" "Cierra el fichero actual y crea una nueva base de datos con el nombre de " "fichero indicado" #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "opendb " #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "Cierra el fichero actual y abre el fichero con el nombre indicado" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "savedbas " #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "Guarda el fichero actual con un nombre de fichero distinto" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "Obtiene el estado actual (fichero abierto, nº de certificados, etc...)" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "" "Lista los certificados de la base de datos. Con la opción --see-revoked, " "lista también los certificados revocados." #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "Lista las solicitudes de certificación existentes en la base de datos" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "add-csr [id-de-CA-para-heredar-campos]" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "Comienza un nuevo proceso de creación de solicitud de certificación" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "" "Iniciar un nuevo proceso de creación de Autoridad de Certificación auto-" "firmada" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "extractcertpkey " #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" "Extraer clave privada del certificado con el identificador proporcionado y " "almacenarla en el fichero indicado" #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "extractcsrpkey " #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" "Extraer clave privada del CSR con identificador indicado y almacenarla en el " "fichero proporcionado" #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "revoke " #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "Revocar el certificado con identificador proporcionado" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "sign " #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "Generar certificado firmando el CSR indicado con la AC proporcionada" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "delete " #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "Borrar solicitud de certificación indicada de la base de datos" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "crlgen " #: ../src/ca-cli.c:55 msgid "Generate a new CRL for the given CA, saving it into the file " msgstr "" "Generar un nuevo CRL para la AC indicada, almacenándolo en el fichero " "" #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "dhgen " #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" "Generar un nuevo conjunto de parámetros DH, almacenándolo en el fichero " "" #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "Cambiar contraseña de la base de datos actual" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "importfile " #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "Importar fichero con el nombre indicado" #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "importdir " #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "" "Importar el directorio proporcionado, interpretándolo como el directorio de " "una AC realizada con OpenSSL" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "showcert " #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "Mostrar propiedades del certificado indicado" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "showcsr " #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "Mostrar propiedades del CSR proporcionado" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "showpolicy " #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "Mostrar política de la AC" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "setpolicy " #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "Cambiar política indicada de la AC" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "Mostrar preferencias de programa" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "setpreference " #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "Establece la preferencia de programa indicada" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "Mostrar mensaje de \"Acerca de...\"" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "Mostrar información de garantía" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "Mostrar información sobre la distribución del programa" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "Mostrar información de versión" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "Mostrar (este) mensaje de ayuda" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "Cerrar base de datos y salir de programa" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "Abriendo base de datos %s..." #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr " Correcto.\n" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr " Error.\n" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" "\n" "\n" "%s versión %s\n" "%s\n" "\n" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" "Este programa se proporciona SIN GARANTÍAS DE NINGÚN TIPO; para más\n" "detalles, teclee 'warranty'.\n" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" "Este programa es software libre; se le anima a distribuirlo bajo ciertas\n" "condiciones; teclee 'distribution' para más detalles.\n" "\n" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "Comillas desemparejadas\n" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" "Orden no válida. Teclee 'help' para conseguir una lista de órdenes\n" "reconocidas.\n" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "Número incorrecto de parámetros.\n" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "Sintaxis: %s\n" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "El fichero ya existe, por lo que se sobreescribirá" #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:675 msgid "Are you sure? Yes/[No] " msgstr "¿Está seguro? Sí/[No] " #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "Hubo problemas al abrir la nueva base de datos de la AC '%s'\n" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "Fichero '%s' abierto\n" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "Hubo problemas al abrir la base de datos de la AC '%s'\n" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "Fichero abierto actualmente: %s\n" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "Número de certificados en fichero: %d\n" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "Número de CSRs en fichero: %d\n" #: ../src/ca-cli-callbacks.c:144 #, c-format msgid "CertList ID|%s\t" msgstr "%s\t" #: ../src/ca-cli-callbacks.c:147 msgid "CertList IsCA|Y\t" msgstr "Sí\t" #: ../src/ca-cli-callbacks.c:149 msgid "CertList IsCA|N\t" msgstr "No\t" #: ../src/ca-cli-callbacks.c:154 #, c-format msgid "CertList Subject|%s\t" msgstr "%s\t" #: ../src/ca-cli-callbacks.c:157 msgid "CertList PadIfSubject<16|\t" msgstr "\t" #: ../src/ca-cli-callbacks.c:159 msgid "CertList PadIfSubject<8|\t" msgstr "\t" #: ../src/ca-cli-callbacks.c:162 msgid "CertList PKeyInDB|Y\t\t" msgstr "Sí\t\t" #: ../src/ca-cli-callbacks.c:164 msgid "CertList PKeyInDB|N\t\t" msgstr "No\t\t" #: ../src/ca-cli-callbacks.c:168 msgid "CertList Activation|\t" msgstr " \t" #: ../src/ca-cli-callbacks.c:177 #, c-format msgid "CertList Activation|%s\t" msgstr "%s\t" #: ../src/ca-cli-callbacks.c:182 msgid "CertList Expiration|\t" msgstr "\t" #: ../src/ca-cli-callbacks.c:191 #, c-format msgid "CertList Expiration|%s\t" msgstr "%s\t" #: ../src/ca-cli-callbacks.c:197 msgid "CertList Revocation|\n" msgstr " \n" #: ../src/ca-cli-callbacks.c:206 #, c-format msgid "CertList Revocation|%s\n" msgstr "%s\n" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "Certificates in Database:\n" msgstr "Certificados en base de datos:\n" #: ../src/ca-cli-callbacks.c:224 #, c-format msgid "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "" "Id.\t¿Es CA?\tTitular de certificado\t¿Clave en BD?\tActivación\t\tCaducidad" #: ../src/ca-cli-callbacks.c:227 #, c-format msgid "\t\tRevocation\n" msgstr "\t\tRevocación\n" #: ../src/ca-cli-callbacks.c:237 #, c-format msgid "CsrList ID|%s\t" msgstr "%s\t" #: ../src/ca-cli-callbacks.c:239 #, c-format msgid "CsrList ParentID|%s\t" msgstr "%s\t" #: ../src/ca-cli-callbacks.c:239 msgid "CsrList ParentID|\t" msgstr " \t" #: ../src/ca-cli-callbacks.c:244 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "%-24s\t" #: ../src/ca-cli-callbacks.c:247 msgid "CsrList PadIfSubject<16|\t" msgstr " \t" #: ../src/ca-cli-callbacks.c:249 msgid "CsrList PadIfSubject<8|\t" msgstr " \t" #: ../src/ca-cli-callbacks.c:252 msgid "CsrList PKeyInDB|Y\n" msgstr "Sí\n" #: ../src/ca-cli-callbacks.c:254 msgid "CsrList PKeyInDB|N\n" msgstr "No\n" #: ../src/ca-cli-callbacks.c:262 #, c-format msgid "Certificate Requests in Database:\n" msgstr "Solicitudes de certificación en base de datos:\n" #: ../src/ca-cli-callbacks.c:263 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "Id.\tId. padre\tTitular CSR\t\t¿Clave en BD?\n" #: ../src/ca-cli-callbacks.c:291 ../src/ca-cli-callbacks.c:980 #: ../src/ca-cli-callbacks.c:1363 ../src/ca-cli-callbacks.c:1392 msgid "The given CA id. is not valid" msgstr "El identificador de CA proporcionado no es válido" #: ../src/ca-cli-callbacks.c:344 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "" "Por favor: introduzca los datos correspondientes al titular de la solicitud " "de certificación:\n" #: ../src/ca-cli-callbacks.c:346 ../src/ca-cli-callbacks.c:473 msgid "Enter country (C)" msgstr "Introduzca país (C)" #: ../src/ca-cli-callbacks.c:352 ../src/ca-cli-callbacks.c:479 msgid "Enter state or province (ST)" msgstr "Introduzca nombre de estado o provincia (ST)" #: ../src/ca-cli-callbacks.c:358 ../src/ca-cli-callbacks.c:485 msgid "Enter locality or city (L)" msgstr "Introduzca ciudad o localidad (L)" #: ../src/ca-cli-callbacks.c:364 ../src/ca-cli-callbacks.c:491 msgid "Enter organization (O)" msgstr "Introduzca organización (O)" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:497 msgid "Enter organizational unit (OU)" msgstr "Introduzca Unidad organizativa (OU)" #: ../src/ca-cli-callbacks.c:376 ../src/ca-cli-callbacks.c:503 msgid "Enter common name (CN)" msgstr "Introduzca Nombre común (CN)" #: ../src/ca-cli-callbacks.c:386 ../src/ca-cli-callbacks.c:513 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "Introduzca el tipo de clave que se va a crear (RSA/DSA)" #: ../src/ca-cli-callbacks.c:398 ../src/ca-cli-callbacks.c:525 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "Introduzca tamaño de clave en bits (múltiplo de 1024)" #: ../src/ca-cli-callbacks.c:402 #, c-format msgid "These are the provided CSR properties:\n" msgstr "Estas son las propiedades proporcionadas del CSR:\n" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:553 #: ../src/ca-cli-callbacks.c:1191 ../src/ca-cli-callbacks.c:1254 #, c-format msgid "Subject:\n" msgstr "Titular:\n" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:554 #, c-format msgid "\tDistinguished Name: " msgstr "\tNombre distintivo: " #: ../src/ca-cli-callbacks.c:419 ../src/ca-cli-callbacks.c:568 #, c-format msgid "Key pair\n" msgstr "Par de claves\n" #: ../src/ca-cli-callbacks.c:420 ../src/ca-cli-callbacks.c:569 #, c-format msgid "\tType: %s\n" msgstr "\tTipo: %s\n" #: ../src/ca-cli-callbacks.c:421 ../src/ca-cli-callbacks.c:570 #, c-format msgid "\tKey bitlength: %d\n" msgstr "\tLongitud en bits: %d\n" #: ../src/ca-cli-callbacks.c:423 ../src/ca-cli-callbacks.c:591 msgid "Do you want to change anything? Yes/[No] " msgstr "¿Desea cambiar algo? Sí/[No] " #: ../src/ca-cli-callbacks.c:427 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "" "Se va a proceder a crear una solicitud de certificación con estas " "propiedades." #: ../src/ca-cli-callbacks.c:428 ../src/ca-cli-callbacks.c:596 msgid "Are you sure? [Yes]/No " msgstr "¿Está seguro? [Sí]/No " #: ../src/ca-cli-callbacks.c:433 ../src/ca-cli-callbacks.c:601 #: ../src/ca-cli-callbacks.c:685 ../src/ca-cli-callbacks.c:816 #: ../src/ca-cli-callbacks.c:937 ../src/ca-cli-callbacks.c:966 #: ../src/ca-cli-callbacks.c:1032 ../src/ca-cli-callbacks.c:1059 #: ../src/ca-cli-callbacks.c:1087 ../src/ca-cli-callbacks.c:1102 #: ../src/ca-cli-callbacks.c:1422 ../src/ca-cli-callbacks.c:1465 #, c-format msgid "Operation cancelled.\n" msgstr "Operación cancelada.\n" #: ../src/ca-cli-callbacks.c:471 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "" "Por favor: introduzca los datos correspondientes al titular de la nueva " "autoridad de certificación:\n" #: ../src/ca-cli-callbacks.c:530 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" "Introduzca el número máximo de meses antes de la caducidad de lanueva " "autoridad de certificación" #: ../src/ca-cli-callbacks.c:551 #, c-format msgid "These are the provided new CA properties:\n" msgstr "Estas son las propiedades proporcionadas para la nueva AC:\n" #: ../src/ca-cli-callbacks.c:571 #, c-format msgid "Validity\n" msgstr "Validez\n" #: ../src/ca-cli-callbacks.c:572 ../src/ca-cli-callbacks.c:1199 #, c-format msgid "Validity:\n" msgstr "Validez:\n" #: ../src/ca-cli-callbacks.c:580 ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tActivated on: %s\n" msgstr "\tActivado el: %s\n" #: ../src/ca-cli-callbacks.c:589 ../src/ca-cli-callbacks.c:1216 #, c-format msgid "\tExpires on: %s\n" msgstr "\tCaduca el: %s\n" #: ../src/ca-cli-callbacks.c:595 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "" "Se va a proceder a crear una nueva autoridad de certificación con " "estaspropiedades." #: ../src/ca-cli-callbacks.c:621 ../src/ca-cli-callbacks.c:669 #: ../src/ca-cli-callbacks.c:1176 msgid "The given certificate id. is not valid" msgstr "El identificador de certificado proporcionado no es válido" #: ../src/ca-cli-callbacks.c:628 ../src/ca-cli-callbacks.c:652 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "Clave privada extraída con éxito al fichero '%s'\n" #: ../src/ca-cli-callbacks.c:645 ../src/ca-cli-callbacks.c:797 #: ../src/ca-cli-callbacks.c:950 ../src/ca-cli-callbacks.c:1243 msgid "The given CSR id. is not valid" msgstr "El identificador de CSR proporcionado no es válido" #: ../src/ca-cli-callbacks.c:675 msgid "This certificate will be revoked." msgstr "Este certificado será revocado." #: ../src/ca-cli-callbacks.c:681 #, c-format msgid "Certificate revoked.\n" msgstr "Certificado revocado.\n" #: ../src/ca-cli-callbacks.c:695 ../src/ca-cli-callbacks.c:1224 #, c-format msgid "Certificate uses:\n" msgstr "Usos del certificado:\n" #: ../src/ca-cli-callbacks.c:698 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "* Uso como Autoridad de Certificación habilitado.\n" #: ../src/ca-cli-callbacks.c:700 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "* Uso como Autoridad de Certificación deshabilitado.\n" #: ../src/ca-cli-callbacks.c:704 #, c-format msgid "* CRL signing use enabled.\n" msgstr "* Uso para firma de CRLs habilitado.\n" #: ../src/ca-cli-callbacks.c:706 #, c-format msgid "* CRL signing use disabled.\n" msgstr "* Uso para firma de CRLs deshabilitado.\n" #: ../src/ca-cli-callbacks.c:710 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "* Uso para firma digital habilitado.\n" #: ../src/ca-cli-callbacks.c:712 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "* Uso para firma digital deshabilitado.\n" #: ../src/ca-cli-callbacks.c:716 ../src/ca-cli-callbacks.c:718 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "Uso para cifrado de datos habilitado.\n" #: ../src/ca-cli-callbacks.c:722 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "* Uso para cifrado de claves habilitado.\n" #: ../src/ca-cli-callbacks.c:724 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "* Uso para cifrado de claves deshabilitado.\n" #: ../src/ca-cli-callbacks.c:728 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "* Uso para no repudio habilitado.\n" #: ../src/ca-cli-callbacks.c:730 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "* Uso para no repudio deshabilitado.\n" #: ../src/ca-cli-callbacks.c:734 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "* Uso para negociación de claves habilitado.\n" #: ../src/ca-cli-callbacks.c:736 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "* Uso para negociación de claves deshabilitado.\n" #: ../src/ca-cli-callbacks.c:739 #, c-format msgid "Certificate purposes:\n" msgstr "Finalidades del certificado:\n" #: ../src/ca-cli-callbacks.c:742 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "* Finalidad para protección de correo electrónico habilitada.\n" #: ../src/ca-cli-callbacks.c:744 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "* Finalidad para protección de correo electrónico deshabilitada.\n" #: ../src/ca-cli-callbacks.c:748 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "* Finalidad de firma de código habilitada.\n" #: ../src/ca-cli-callbacks.c:750 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "* Finalidad de firma de código deshabilitada.\n" #: ../src/ca-cli-callbacks.c:754 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "* Finalidad de cliente web TLS habilitada.\n" #: ../src/ca-cli-callbacks.c:756 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "* Finalidad de cliente web TLS deshabilitada.\n" #: ../src/ca-cli-callbacks.c:760 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "* Finalidad de servidor web TLS habilitada.\n" #: ../src/ca-cli-callbacks.c:762 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "* Finalidad de servidor web TLS deshabilitada.\n" #: ../src/ca-cli-callbacks.c:766 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "* Finalidad de sellado de tiempo habilitada.\n" #: ../src/ca-cli-callbacks.c:768 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "* Finalidad de sellado de tiempo deshabilitada.\n" #: ../src/ca-cli-callbacks.c:772 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "* Finalidad de firma de OCSP habilitada\n" #: ../src/ca-cli-callbacks.c:774 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "* Finalidad de firma de OCSP deshabilitada.\n" #: ../src/ca-cli-callbacks.c:778 #, c-format msgid "* Any purpose enabled.\n" msgstr "* Cualquier finalidad habilitada.\n" #: ../src/ca-cli-callbacks.c:780 #, c-format msgid "* Any purpose disabled.\n" msgstr "* Cualquier finalidad deshabilitada.\n" #: ../src/ca-cli-callbacks.c:804 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "Se va a proceder a firmar la siguiente solicitud de certificación:\n" #: ../src/ca-cli-callbacks.c:806 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "con el certificado correspondiente a esta AC:\n" #: ../src/ca-cli-callbacks.c:809 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" "Máximo número de meses antes de la caducidad del nuevo certificado (0 para " "cancelar):" #: ../src/ca-cli-callbacks.c:835 ../src/ca-cli-callbacks.c:923 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "" "El nuevo certificado se validará para los siguientes usos y finalidades:\n" #: ../src/ca-cli-callbacks.c:838 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "¿Desea cambiar alguna propiedad del nuevo certificado? Sí/[No] " #: ../src/ca-cli-callbacks.c:841 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "* ¿Habilitar uso como Autoridad de certificación? [Sí]/No " #: ../src/ca-cli-callbacks.c:843 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "* Uso como Autoridad de Certificación deshabilitado por política\n" #: ../src/ca-cli-callbacks.c:847 msgid "* Enable CRL Signing? [Yes]/No " msgstr "* ¿Habilitar uso para firma de CRL? [Sí]/No " #: ../src/ca-cli-callbacks.c:849 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "* Uso para firmado de CRL deshabilitado por política\n" #: ../src/ca-cli-callbacks.c:853 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "* ¿Habilitar uso para firma digital? [Sí]/No " #: ../src/ca-cli-callbacks.c:855 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "* Uso para firma digital deshabilitado por política\n" #: ../src/ca-cli-callbacks.c:859 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "¿Habilitar uso para cifrado de datos? [Sí]/No " #: ../src/ca-cli-callbacks.c:861 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "* Uso para cifrado de datos deshabilitado por política\n" #: ../src/ca-cli-callbacks.c:865 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "¿Habilitar uso para cifrado de claves? [Sí]/No " #: ../src/ca-cli-callbacks.c:867 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "* Uso para cifrado de claves deshabilitado por política\n" #: ../src/ca-cli-callbacks.c:871 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "¿Habilitar uso para no repudio? [Sí]/No " #: ../src/ca-cli-callbacks.c:873 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "* Uso para no repudio deshabilitado por política\n" #: ../src/ca-cli-callbacks.c:877 msgid "Enable Key Agreement use? [Yes]/No " msgstr "¿Habilitar uso para negociación de claves? [Sí]/No " #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "Uso para negociación de claves deshabilitado por politica\n" #: ../src/ca-cli-callbacks.c:883 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "¿Habilitar finalidad de protección de correo electrónico? [Sí]/No " #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "" "* Finalidad de protección de correo electrónico deshabilitada por política.\n" #: ../src/ca-cli-callbacks.c:889 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "¿Habilitar finalidad de firma de código? [Sí]/No " #: ../src/ca-cli-callbacks.c:891 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "* Finalidad de firma de código deshabilitada por política\n" #: ../src/ca-cli-callbacks.c:895 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "¿Habilitar finalidad de cliente web TLS? [Sí]/No " #: ../src/ca-cli-callbacks.c:897 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "* Finalidad de cliente web TLS deshabilitada por política\n" #: ../src/ca-cli-callbacks.c:901 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "¿Habilitar finalidad de servidor web TLS? [Sí]/No " #: ../src/ca-cli-callbacks.c:903 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "* Finalidad de servidor web TLS deshabilitada por política\n" #: ../src/ca-cli-callbacks.c:907 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "¿Habilitar finalidad de sellado de tiempo? [Sí]/No " #: ../src/ca-cli-callbacks.c:909 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "* Finalidad de sellado de tiempo deshabilitada por política\n" #: ../src/ca-cli-callbacks.c:913 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "¿Habilitar finalidad para firma de OCSP? [Sí]/No " #: ../src/ca-cli-callbacks.c:914 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "* Finalidad para firma de OCSP deshabilitada por política\n" #: ../src/ca-cli-callbacks.c:918 msgid "Enable any purpose? [Yes]/No " msgstr "¿Habilitar uso para cualquier finalidad? [Sí]/No " #: ../src/ca-cli-callbacks.c:920 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "* Uso para cualquier finalidad deshabilitado por política.\n" #: ../src/ca-cli-callbacks.c:928 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "" "Ya se cuenta con todos los datos necesarios para la generación del " "certificado." #: ../src/ca-cli-callbacks.c:928 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "¿Desea continuar con la firma y generación del certificado? [Sí]/No " #: ../src/ca-cli-callbacks.c:934 #, c-format msgid "Certificate signed.\n" msgstr "Certificado firmado.\n" #: ../src/ca-cli-callbacks.c:956 msgid "This Certificate Signing Request will be deleted." msgstr "Se borrará esta solicitud de certificación." #: ../src/ca-cli-callbacks.c:956 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "Esta operación no puede deshacerse. ¿Está seguro? Sí/[No] " #: ../src/ca-cli-callbacks.c:962 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "Solicitud de certificación borrada.\n" #: ../src/ca-cli-callbacks.c:987 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "CRL generada con éxito y guardada en fichero '%s'\n" #: ../src/ca-cli-callbacks.c:1004 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "La longitud en bits del número primo debe ser múltiplo entero de 1024" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "" "Parámetros Diffie-Hellman creados y guardados correctamente en fichero '%s'\n" #: ../src/ca-cli-callbacks.c:1025 msgid "Currently, the database is not password-protected." msgstr "En estos momentos, la base de datos no está protegida con clave." #: ../src/ca-cli-callbacks.c:1025 msgid "Do you want to password protect it? [Yes]/No " msgstr "¿Desea protegerlo con contraseña? [Sí]/No " #: ../src/ca-cli-callbacks.c:1026 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" "Es necesario proporcionar una contraseña para proteger las claves privadas \n" "de la base de datos, de modo que sólo las personas autorizadas puedan \n" "hacer uso de ellas. Esta contraseña será solicitada siempre que gnoMint\n" "requiera emplear cualquier clave privada de la base de datos." #: ../src/ca-cli-callbacks.c:1029 msgid "Insert password:" msgstr "Introduzca contraseña:" #: ../src/ca-cli-callbacks.c:1029 msgid "Insert password (confirm):" msgstr "Introduzca contraseña (confirmación):" #: ../src/ca-cli-callbacks.c:1030 ../src/ca-cli-callbacks.c:1100 msgid "The introduced passwords are distinct." msgstr "Las contraseñas introducidas son distintas." #: ../src/ca-cli-callbacks.c:1041 #, c-format msgid "Password established successfully.\n" msgstr "Contraseña establecida con éxito.\n" #: ../src/ca-cli-callbacks.c:1048 #, c-format msgid "Nothing done.\n" msgstr "No se ha hecho nada.\n" #: ../src/ca-cli-callbacks.c:1052 msgid "Currently, the database IS password-protected." msgstr "En estos momentos, la base de datos ESTÁ protegida con contraseña." #: ../src/ca-cli-callbacks.c:1052 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "¿Desea eliminar esta protección con contraseña? Sí/[No] " #: ../src/ca-cli-callbacks.c:1056 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" "Para eliminar la protección mediante clave, debe proporcionar la \n" "contraseña actual.\n" #: ../src/ca-cli-callbacks.c:1057 ../src/ca-cli-callbacks.c:1085 msgid "Please, insert the current database password (Empty to cancel): " msgstr "" "Introduzca la contrase_ña actual de la base de datos (Vacía para cancelar): " #: ../src/ca-cli-callbacks.c:1064 ../src/ca-cli-callbacks.c:1092 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" "La contraseña actual que ha introducido\n" "no coincide con la contraseña real de la base de datos." #: ../src/ca-cli-callbacks.c:1069 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" "Ocurrió un error al eliminar la contraseña de la base de \n" "datos. Se canceló la operación." #: ../src/ca-cli-callbacks.c:1074 #, c-format msgid "Password removed successfully.\n" msgstr "Contraseña eliminada con éxito.\n" #: ../src/ca-cli-callbacks.c:1084 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "" "Debe proporcionar la contraseña actual de la base de datos antes de " "cambiarla.\n" #: ../src/ca-cli-callbacks.c:1096 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" "Es necesario proporcionar una nueva contraseña para proteger las\n" "claves privadas de la base de datos, para que sólo las personas \n" "autorizadas puedan hacer uso de ellas. Esta contraseña será \n" "solicitada siempre que gnoMint vaya a hacer uso de cualquier\n" "clave privada de la base de datos." #: ../src/ca-cli-callbacks.c:1099 msgid "Insert new password:" msgstr "Introduzca la nueva contraseña:" #: ../src/ca-cli-callbacks.c:1099 msgid "Insert new password (confirm):" msgstr "Introduzca contraseña (confirmación):" #: ../src/ca-cli-callbacks.c:1108 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" "Ocurrió un error al cambiar la contraseña de la base de datos. \n" "Se canceló la operación." #: ../src/ca-cli-callbacks.c:1114 #, c-format msgid "Password changed successfully.\n" msgstr "Contraseña cambiada con éxito.\n" #: ../src/ca-cli-callbacks.c:1132 msgid "Problem when importing the given file." msgstr "Hubo problemas al importar el fichero indicado." #: ../src/ca-cli-callbacks.c:1135 #, c-format msgid "File imported successfully.\n" msgstr "Fichero importado con éxito.\n" #: ../src/ca-cli-callbacks.c:1151 #, c-format msgid "Directory imported successfully.\n" msgstr "Directorio importado con éxito.\n" #: ../src/ca-cli-callbacks.c:1184 #, c-format msgid "Certificate:\n" msgstr "Certificado:\n" #: ../src/ca-cli-callbacks.c:1188 #, c-format msgid "\tSerial number: %s\n" msgstr "\tNº de serie: %s\n" #: ../src/ca-cli-callbacks.c:1192 ../src/ca-cli-callbacks.c:1196 #: ../src/ca-cli-callbacks.c:1255 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "\tNombre distintivo: %s\n" #: ../src/ca-cli-callbacks.c:1192 ../src/ca-cli-callbacks.c:1193 #: ../src/ca-cli-callbacks.c:1196 ../src/ca-cli-callbacks.c:1197 msgid "None." msgstr "Ninguno." #: ../src/ca-cli-callbacks.c:1193 ../src/ca-cli-callbacks.c:1197 #: ../src/ca-cli-callbacks.c:1257 #, c-format msgid "\tUnique ID: %s\n" msgstr "\tIdentificador único: %s\n" #: ../src/ca-cli-callbacks.c:1195 #, c-format msgid "Issuer:\n" msgstr "Emisor:\n" #: ../src/ca-cli-callbacks.c:1218 #, c-format msgid "Fingerprints:\n" msgstr "Huellas digitales:\n" #: ../src/ca-cli-callbacks.c:1219 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "\tHuella digital SHA1: %s\n" #: ../src/ca-cli-callbacks.c:1220 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "\tHuella digital MD5: %s\n" #: ../src/ca-cli-callbacks.c:1221 #, c-format msgid "\tSHA256 fingerprint: %s\n" msgstr "\tHuella digital SHA256: %s\n" #: ../src/ca-cli-callbacks.c:1252 #, c-format msgid "Certificate Signing Request:\n" msgstr "Solicitud de certificación:\n" #: ../src/ca-cli-callbacks.c:1327 msgid "Generated certs inherit Country from CA " msgstr "" "Los certificados generados heredan país de la AC " #: ../src/ca-cli-callbacks.c:1328 msgid "Generated certs inherit State from CA " msgstr "" "Los certificados generados heredan estado/provincia de la " "AC " #: ../src/ca-cli-callbacks.c:1329 msgid "Generated certs inherit Locality from CA " msgstr "" "Los certificados generados heredan localidad o ciudad de la " "AC " #: ../src/ca-cli-callbacks.c:1330 msgid "Generated certs inherit Organization from CA " msgstr "" "Los certificados generados heredan Organización de la " "AC " #: ../src/ca-cli-callbacks.c:1331 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" "Los certificados generados heredan unidad organizacional de la " "AC " #: ../src/ca-cli-callbacks.c:1332 msgid "Country in generated certs must be the same than in CA " msgstr "" "El país de los certificados generados debe coincidir con la AC " #: ../src/ca-cli-callbacks.c:1333 msgid "State in generated certs must be the same than in CA " msgstr "" "Estado o provincia de certif. generados debe coincidir con la " "AC " #: ../src/ca-cli-callbacks.c:1334 msgid "Locality in generated certs must be the same than in CA " msgstr "" "Localidad o ciudad de certif. generados debe coincidir con la AC " #: ../src/ca-cli-callbacks.c:1335 msgid "Organization in generated certs must be the same than in CA " msgstr "" "Organización de certif. generados debe coincidir con la de la AC " #: ../src/ca-cli-callbacks.c:1336 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "Unidad organizativa de certif. debe coincidir con la de la AC" #: ../src/ca-cli-callbacks.c:1337 msgid "Maximum number of hours between CRL updates " msgstr "" "Número máximo de horas entre actualizaciones de CRLs " #: ../src/ca-cli-callbacks.c:1338 msgid "CRL distribution point (URL where CRL is published) " msgstr "Punto de distribución de CRL (URL donde se publica la CRL)" #: ../src/ca-cli-callbacks.c:1339 msgid "Maximum number of months before expiration of new certs " msgstr "" "Máximo nº de meses antes de caducidad de nuevos certificados " #: ../src/ca-cli-callbacks.c:1340 msgid "CA use enabled in generated certs " msgstr "" "Habilitar uso como AC en certificados " "generados " #: ../src/ca-cli-callbacks.c:1341 msgid "CRL Sign use enabled in generated certs " msgstr "" "Habilitar uso para firma de CRLs en certificados " "generados " #: ../src/ca-cli-callbacks.c:1342 msgid "Non reputation use enabled in generated certs " msgstr "" "Habilitar uso para no repudio en certificados generados " #: ../src/ca-cli-callbacks.c:1343 msgid "Digital signature use enabled in generated certs " msgstr "" "Habilitar uso para firma digital en certificados generados " #: ../src/ca-cli-callbacks.c:1344 msgid "Key encipherment use enabled in generated certs " msgstr "" "Habilitar uso para cifrado de claves en certificados " "generados " #: ../src/ca-cli-callbacks.c:1345 msgid "Key agreement use enabled in generated certs " msgstr "" "Habilitar uso para negociación de claves en certificados " "generados " #: ../src/ca-cli-callbacks.c:1346 msgid "Data encipherment use enabled in generated certs " msgstr "" "Habilitar uso para cifrado de datos en certificados " "generados " #: ../src/ca-cli-callbacks.c:1347 msgid "TLS web server purpose enabled in generated certs " msgstr "" "Habilitar finalidad de servidor web TLS para certific. " "generados " #: ../src/ca-cli-callbacks.c:1348 msgid "TLS web client purpose enabled in generated certs " msgstr "" "Habilitar finalidad para cliente web TLS en certific. " "generados " #: ../src/ca-cli-callbacks.c:1349 msgid "Time stamping purpose enabled in generated certs " msgstr "" "Habilitar finalidad para sellado de tiempo en certific. " "generados " #: ../src/ca-cli-callbacks.c:1350 msgid "Code signing server purpose enabled in generated certs " msgstr "" "Habilitar finalidad de firma de código en certificados generados " #: ../src/ca-cli-callbacks.c:1351 msgid "Email protection purpose enabled in generated certs " msgstr "" "Habilitar finalidad para protección de correo-e en cert. " "generados " #: ../src/ca-cli-callbacks.c:1352 msgid "OCSP signing purpose enabled in generated certs " msgstr "" "Habilitar finalidad de firma de OCSP en certificados " "generados " #: ../src/ca-cli-callbacks.c:1353 msgid "Any purpose enabled in generated certs " msgstr "" "Habilitar cualquier finalidad en certificados " "generados " #: ../src/ca-cli-callbacks.c:1367 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "Mostrando políticas del siguiente certificado:\n" #: ../src/ca-cli-callbacks.c:1369 #, c-format msgid "" "\n" "Policies:\n" msgstr "" "\n" "Políticas:\n" #: ../src/ca-cli-callbacks.c:1371 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "Id.\tDescripción\t\t\t\t\t\t\t\tValor\n" #: ../src/ca-cli-callbacks.c:1397 msgid "The given policy id is not valid" msgstr "El identificador de política proporcionado no es válido" #: ../src/ca-cli-callbacks.c:1409 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%s'." msgstr "" "Se va a asignar a la política\n" "'%s' el nuevo valor '%s'." #: ../src/ca-cli-callbacks.c:1413 ../src/ca-cli-callbacks.c:1457 msgid "Are you sure? Yes/[No] : " msgstr "¿Está seguro? Sí/[No] : " #: ../src/ca-cli-callbacks.c:1418 #, c-format msgid "Policy set correctly to '%s'.\n" msgstr "Política establecida correctamente a '%s'.\n" #: ../src/ca-cli-callbacks.c:1432 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "Preferencias actuales de gnoMint-cli:\n" #: ../src/ca-cli-callbacks.c:1434 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "Id.\tNombre\t\t\tValor\n" #: ../src/ca-cli-callbacks.c:1435 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "0\tSoporte de gnome-keyring\t%d\n" #: ../src/ca-cli-callbacks.c:1447 msgid "The given preference id is not valid" msgstr "El identificador de preferencia proporcionado no es válido" #: ../src/ca-cli-callbacks.c:1453 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" "Va a asignar a la preferencia 'Soporte de gnome-keyring' el nuevo valor '%d'." #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" "%s versión %s\n" "%s\n" #: ../src/ca-cli-callbacks.c:1476 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" "\n" "Autores:\n" "%s\n" "\n" #: ../src/ca-cli-callbacks.c:1477 ../src/ca-cli-callbacks.c:1478 #: ../src/main.c:509 msgid "translator-credits" msgstr "" "David Marín Carreño \n" "\n" "Launchpad Contributions:\n" " David Marín https://launchpad.net/~davefx\n" " DiegoJ https://launchpad.net/~diegojromerolopez\n" " Sergio Oller https://launchpad.net/~zeehio\n" " Victor Herrero https://launchpad.net/~victorhera" #: ../src/ca-cli-callbacks.c:1478 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" "Traductores:\n" "%s\n" #: ../src/ca-cli-callbacks.c:1485 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" "NO HAY GARANTÍA PARA ESTE PROGRAMA, HASTA EL EXTREMO PERMITIDO POR LA\n" "LEY APLICABLE. A NO SER QUE SE INDIQUE LO CONTRARIO, LOS PROPIETARIOS DEL\n" "COPYRIGHT, U OTRAS TERCERAS PARTES PROPORCIONAN EL PROGRAMA \"TAL CUAL\", \n" "SIN GARANTÍAS DE NINGÚN TIPO, EXPRESAS O IMPLÍCITAS. ESTO INCLUYE PERO NO\n" "SE LIMITA A LAS GARANTÍAS IMPLÍCITAS DE COMERCIABILIDAD O IDONEIDAD PARA UN\n" "FIN DETERMINADO. TODO RIESGO DERIVADO DE LA CALIDAD O PRESTACIONES\n" "DEL PROGRAMA CORRE DE SU PARTE. SI EL PROGRAMA FUERA DEFECTUOSO, USTED\n" "DEBERÁ ASUMIR LOS COSTES DE CUALQUIER OPERACIÓN DE SOPORTE TÉCNICO,\n" "REPARACIÓN O CORRECCIÓN.\n" "\n" "Para más información sobre la garantía, véanse las secciones 15 y " "siguientes\n" "de la Licencia Pública General GNU. Debería haber recibido una copia de la\n" "Licencia Pública General de GNU junto con este programa. Si no es así, " "veáse\n" ".\n" "\n" #: ../src/ca-cli-callbacks.c:1503 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" "Este programa es software libre; puede distribuirlo y/o modificarlo \n" "según los términos de la Licencia Pública General GNU (GNU GPL), \n" "según fue publicada por la Free Software Foundation; en la versión 3\n" "de la Licencia, o (a su elección) cualquier versión posterior. \n" "\n" "Este programa se distribuye con la esperanza de que sea útil, \n" "pero SIN GARANTÍA DE NINGÚN TIPO; sin ninguna garantía implícita\n" "de estar APTO PARA LA COMERCIALIZACIÓN o de IDONEIDAD PARA ALGÚN\n" "FIN DETERMINADO. Para más detalles, vea la Licencia Pública General\n" "GNU. \n" "\n" "Debería haber recibido una copia de la Licencia Pública General GNU junto\n" "con este programa; si no es así, visite .\n" "\n" #: ../src/ca-cli-callbacks.c:1518 #, c-format msgid "%s version %s\n" msgstr "%s versión %s\n" #: ../src/ca-cli-callbacks.c:1527 #, c-format msgid "Available commands:\n" msgstr "Órdenes disponibles:\n" #: ../src/ca-cli-callbacks.c:1528 #, c-format msgid "===================\n" msgstr "====================\n" #: ../src/ca-cli-callbacks.c:1538 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "Saliendo de gnomint-cli...\n" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "Generando nuevo par de claves RSA" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "Error en generación de claves" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "Generando nuevo par de claves DSA" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "Generando el certificado auto-firmado raíz de la AC" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "Error en generación del certificado" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "Creando base de datos de la AC" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "Error al crear base de datos de la AC" #: ../src/ca_creation.c:142 msgid "CA generated successfully" msgstr "AC generada con éxito" #: ../src/ca_file.c:203 #, c-format msgid "Error opening filename '%s'" msgstr "Error al abrir fichero '%s'" #: ../src/ca_file.c:306 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" "La base de datos seleccionada fue creada mediante una versión de gnoMint más " "reciente que la que se está ejecutando." #: ../src/ca_file.c:1138 msgid "Cannot find last assigned serial number" msgstr "No se pudo encontrar el último número de serie asignado" #: ../src/ca_file.c:1327 msgid "Cannot find parent CA in database" msgstr "No se pudo encontrar la AC padre en la base de datos" #: ../src/ca_file.c:1515 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "" "Este certificado ya existe en la base de datos: no se puede insertar de " "nuevo." #: ../src/ca_file.c:1946 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" "El fichero indicado contiene una clave privada válida. Sin embargo, ésta no " "ha sido importada a la base de datos porque no encaja con ninguno de los " "certificados o solicitudes de certificación existentes sin clave privada." #: ../src/ca_file.c:1949 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" "El fichero indicado contiene una clave privada válida. Sin embargo, ésta no " "ha sido importada a la base de datos porque no encaja con ninguno de los " "certificadosexistentes sin clave privada." #: ../src/certificate_properties.c:357 ../src/tls.c:1068 msgid "Digital signature" msgstr "Firma digital" #: ../src/certificate_properties.c:359 ../src/tls.c:1070 msgid "Non repudiation" msgstr "No repudio" #: ../src/certificate_properties.c:361 ../src/tls.c:1072 msgid "Key encipherment" msgstr "Cifrado de claves" #: ../src/certificate_properties.c:363 ../src/tls.c:1074 msgid "Data encipherment" msgstr "Cifrado de datos" #: ../src/certificate_properties.c:365 ../src/tls.c:1076 msgid "Key agreement" msgstr "Negociación de claves" #: ../src/certificate_properties.c:367 ../src/tls.c:1078 msgid "Certificate signing" msgstr "Firma de certificados" #: ../src/certificate_properties.c:369 ../src/tls.c:1080 msgid "CRL signing" msgstr "Firma de CRLs" #: ../src/certificate_properties.c:371 msgid "Key encipherment only" msgstr "Clave de sólo cifrado" #: ../src/certificate_properties.c:373 msgid "Key decipherment only" msgstr "Clave de sólo descifrado" #: ../src/certificate_properties.c:387 msgid "Version" msgstr "Versión" #: ../src/certificate_properties.c:422 msgid "Serial Number" msgstr "Nº de serie" #: ../src/certificate_properties.c:438 ../src/certificate_properties.c:1092 msgid "Signature" msgstr "Firma" #: ../src/certificate_properties.c:441 ../src/certificate_properties.c:590 #: ../src/certificate_properties.c:593 ../src/certificate_properties.c:1059 msgid "Algorithm" msgstr "Algoritmo" #: ../src/certificate_properties.c:444 ../src/certificate_properties.c:598 #: ../src/certificate_properties.c:626 ../src/certificate_properties.c:654 #: ../src/certificate_properties.c:1062 msgid "Parameters" msgstr "Parámetros" #: ../src/certificate_properties.c:444 ../src/certificate_properties.c:598 #: ../src/certificate_properties.c:654 ../src/certificate_properties.c:656 #: ../src/certificate_properties.c:667 ../src/certificate_properties.c:676 #: ../src/certificate_properties.c:1063 msgid "(unknown)" msgstr "(desconocido)" #: ../src/certificate_properties.c:476 msgid "Issuer" msgstr "Emisor" #: ../src/certificate_properties.c:525 msgid "Validity" msgstr "Validez" #: ../src/certificate_properties.c:528 msgid "Not Before" msgstr "No antes de" #: ../src/certificate_properties.c:531 msgid "Not After" msgstr "No después de" #: ../src/certificate_properties.c:587 msgid "Subject Public Key Info" msgstr "Datos de clave pública de titular" #: ../src/certificate_properties.c:600 msgid "RSA PublicKey" msgstr "Clave pública RSA" #: ../src/certificate_properties.c:610 msgid "Modulus" msgstr "Módulo" #: ../src/certificate_properties.c:616 msgid "Public Exponent" msgstr "Exponente público" #: ../src/certificate_properties.c:649 msgid "DSA PublicKey" msgstr "Clave pública DSA" #: ../src/certificate_properties.c:656 msgid "Subject Public Key" msgstr "Clave pública de titular" #: ../src/certificate_properties.c:667 msgid "Issuer Unique ID" msgstr "Id. único de emisor" #: ../src/certificate_properties.c:676 msgid "Subject Unique ID" msgstr "Id. único de titular" #: ../src/certificate_properties.c:698 ../src/certificate_properties.c:721 #: ../src/certificate_properties.c:790 ../src/certificate_properties.c:894 #: ../src/certificate_properties.c:922 ../src/certificate_properties.c:962 #: ../src/certificate_properties.c:1019 ../src/certificate_properties.c:1144 msgid "Value" msgstr "Valor" #: ../src/certificate_properties.c:760 ../src/certificate_properties.c:864 msgid "DNS Name" msgstr "Nombre DNS" #: ../src/certificate_properties.c:765 ../src/certificate_properties.c:869 msgid "RFC822 Name" msgstr "Nombre RFC822" #: ../src/certificate_properties.c:770 ../src/certificate_properties.c:874 msgid "URI" msgstr "URI" #: ../src/certificate_properties.c:776 msgid "IP" msgstr "IP" #: ../src/certificate_properties.c:783 ../src/certificate_properties.c:887 msgid "Directory Name" msgstr "Nombre de directorio" #: ../src/certificate_properties.c:817 ../src/certificate_properties.c:1002 msgid "TRUE" msgstr "VERDADERO" #: ../src/certificate_properties.c:817 ../src/certificate_properties.c:1002 msgid "FALSE" msgstr "FALSO" #: ../src/certificate_properties.c:822 msgid "CA" msgstr "AC" #: ../src/certificate_properties.c:826 msgid "Path Length Constraint" msgstr "Restricción de longitud de ruta" #: ../src/certificate_properties.c:880 msgid "IP Address" msgstr "Dirección IP" #: ../src/certificate_properties.c:995 msgid "Extensions" msgstr "Extensiones" #: ../src/certificate_properties.c:1004 msgid "Critical" msgstr "Es crítica" #: ../src/certificate_properties.c:1032 msgid "Certificate" msgstr "Certificado" #: ../src/certificate_properties.c:1057 msgid "Signature Algorithm" msgstr "Algoritmo de firma" #: ../src/certificate_properties.c:1140 msgid "Name" msgstr "Nombre" #: ../src/certificate_properties.c:1156 ../src/tls.c:1094 msgid "TLS WWW Server" msgstr "Servidor TLS WWW" #: ../src/certificate_properties.c:1157 msgid "TLS WWW Client" msgstr "Cliente TLS WWW" #: ../src/certificate_properties.c:1158 ../src/tls.c:1098 msgid "Code signing" msgstr "Firma de código" #: ../src/certificate_properties.c:1159 ../src/tls.c:1100 msgid "Email protection" msgstr "Protección de correo electrónico" #: ../src/certificate_properties.c:1160 ../src/tls.c:1102 msgid "Time stamping" msgstr "Sellado de tiempo" #: ../src/certificate_properties.c:1161 ../src/tls.c:1104 msgid "OCSP signing" msgstr "Firma de OCSP" #: ../src/certificate_properties.c:1162 ../src/tls.c:1106 msgid "Any purpose" msgstr "Cualquier propósito" #: ../src/certificate_properties.c:1163 msgid "Subject Directory Attributes" msgstr "Atributos de directorio de titular" #: ../src/certificate_properties.c:1164 msgid "Subject Key Identifier" msgstr "Clave identificadora de titular" #: ../src/certificate_properties.c:1165 msgid "Key Usage" msgstr "Uso de clave" #: ../src/certificate_properties.c:1166 msgid "Private Key Usage Period" msgstr "Período de uso de clave privada" #: ../src/certificate_properties.c:1167 msgid "Subject Alternative Name" msgstr "Nombre alternativo de titular" #: ../src/certificate_properties.c:1168 msgid "Basic Constraints" msgstr "Restricciones básicas" #: ../src/certificate_properties.c:1169 msgid "Name Constraints" msgstr "Restricciones de nombre" #: ../src/certificate_properties.c:1170 msgid "CRL Distribution Points" msgstr "Puntos de distribución de CRLs" #: ../src/certificate_properties.c:1171 msgid "Certificate Policies" msgstr "Políticas de certificado" #: ../src/certificate_properties.c:1172 msgid "Policy Mappings" msgstr "Relación de políticas" #: ../src/certificate_properties.c:1173 msgid "Authority Key Identifier" msgstr "Clave identificadora de autoridad" #: ../src/certificate_properties.c:1174 msgid "Policy Constraints" msgstr "Restricciones de política" #: ../src/certificate_properties.c:1175 msgid "Extended Key Usage" msgstr "Uso extendido de clave" #: ../src/certificate_properties.c:1176 msgid "Delta CRL Distribution Point" msgstr "Punto de distribución de Delta CRLs" #: ../src/certificate_properties.c:1177 msgid "Inhibit Any-Policy" msgstr "Restringir «Any-Policy»" #: ../src/creation_process_window.c:81 msgid "CA creation process finished" msgstr "Proceso de creación de la AC finalizado" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "Proceso de creación cancelado" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "Proceso de creación de solicitud finalizado" #: ../src/creation_process_window.c:272 msgid "Creating Certificate Signing Request" msgstr "Creando solicitud de certificación" #: ../src/crl.c:243 msgid "Export Certificate Revocation List" msgstr "Exportar lista de certificados revocados (CRL)" #: ../src/crl.c:273 msgid "CRL generated successfully" msgstr "CRL generada con éxito" #: ../src/crl.c:302 ../src/crl.c:364 ../src/crl.c:375 msgid "There was an error while exporting CRL." msgstr "Ocurrió un error al exportar la CRL" #: ../src/crl.c:313 msgid "There was an error while getting revoked certificates." msgstr "Ocurrió un error al obtener los certificados revocados." #: ../src/crl.c:329 ../src/crl.c:348 msgid "There was an error while generating CRL." msgstr "Ocurrió un error al generar la CRL." #: ../src/crl.c:356 msgid "There was an error while writing CRL." msgstr "Ocurrió un error al escribir la CRL." #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "Generando solicitud de certificación" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "Error en generación de solicitud" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "Guardando solicitud de certificación en base de datos" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "La solicitud no se pudo guardar" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "Solicitud de certificación generada con éxito" #: ../src/csr_properties.c:72 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" "La clave privada correspondiente a esta petición de certificación está " "almacenada en un fichero externo." #: ../src/dialog.c:103 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" "\n" "La contraseña debe tener, al menos, %d caracteres\n" #: ../src/dialog.c:127 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "Sí#Si#SI#SÍ#S#s#si#sí" #: ../src/dialog.c:128 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "No#no#N#n" #: ../src/dialog.c:396 msgid "To do. Feature not implemented yet." msgstr "Por hacer. Funcionalidad aún no implementada." #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "Ocurrió un error al guardar los parámetros Diffie-Hellman." #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "Error al exportar clave privada." #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "Hubo un problema al obtener la clave privada." #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "Error al descifrar clave privada." #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" "Es necesario proporcionar una contraseña para proteger la clave privada " "exportada, de manera que sólo las personas autorizadas puedan hacer uso de " "ella. Esta contraseña será solicitada por cualquier aplicación que vaya a " "hacer uso de la clave privada." #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "Introduzca contraseña (8 o más caracteres):" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "Introduzca contraseña (confirmación):" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "Las contraseñas introducidas son distintas." #: ../src/export.c:110 msgid "Operation cancelled." msgstr "Operación cancelada." #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "Hubo un error al proteger con contraseña la clave privada." #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "Error al descifrar clave privada." #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "" "Operación no soporta: no se puede generar un PKCS#12 para una solicitud de " "certificación." #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" "Hubo un problema al obtener el certificado y la clave privada de la base de " "datos interna." #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" "Es necesario proporcionar una contraseña para proteger la clave privada " "exportada, de manera que sólo las personas autorizadas puedan hacer uso de " "ella. Esta contraseña será solicitada por cualquier aplicación que vaya a " "importar el certificado." #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "Hubo un problema al generar el fichero PKCS#12" #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "Ocurrió un error al exportar el certificado." #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "-Un gestor de Autoridades de Certificación" #: ../src/gnomint-cli.c:59 ../src/main.c:128 #, c-format msgid "Failed to initialize: %s\n" msgstr "Fallo al inicializar: %s\n" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" "Todo el fichero seleccionado, o alguno de los elementos que\n" "lo conforman, parece haber sido cifrado empleando una \n" "contraseña. Para importar el fichero en la base de datos \n" "de gnoMint, deberá proporcionar una contraseña adecuada.\n" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "Introduzca la contraseña para '%s'" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" "No se pudo importar la solicitud de certificación. \n" "La base de datos devolvió el siguiente error: \n" "\n" "'%s'" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" "No se pudo importar el certificado. \n" "La base de datos devolvió el siguiente error: \n" "\n" "'%s'" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "Clave privada PKCS#8 cifrada" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" "La contraseña que ha introducido no coincide con la contraseña empleada para " "cifrar este elemento" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "Contenedor PKCS#12 cifrado" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" "La contraseña que ha introducido no coincide con la contraseña empleada para " "cifrar este elemento." #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "No se encontró ningún formato soportado en el fichero proporcionado" #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "No se pudo abrir el fichero %s. Compruebe los permisos." #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "No se ha reconocido el fichero %s como clave privada RSA o DSA." #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "Clave privada para %s" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "Clave privada %s" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "Error al llamar a openssl para descifrar la clave privada." #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" "OpenSSL ha devuelto el siguiente error tras intentar descifrar la clave " "privada:\n" "\n" "%s" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "Ocurrió un error al importar el certificado raíz público de la AC." #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "Certificado raíz de la AC" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" "Hubo un problema al importar la clave privada correspondiente al certificado " "raíz de la AC." #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "Ocurrió un error al abrir el directorio certs/." #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "Ocurrió un error al abrir el directorio newcerts/." #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "Ocurrió un error al abrir el directorio req." #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "Ocurrió un error al abrir el directorio crl." #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "Ocurrió un error al abrir el directorio keys." #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" "Los ficheros existentes en el directorio no pertenecen a ningún formato " "soportado de Autoridad de Certificación." #: ../src/main.c:125 msgid "- A graphical Certification Authority manager" msgstr "- Un gestor gráfico de Autoridades de Certificación" #: ../src/main.c:292 msgid "Create new CA database" msgstr "Crear nueva base de datos de AC" #: ../src/main.c:330 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" "Hubo problemas al crear la base de datos de la AC '%s':\n" "%s" #: ../src/main.c:343 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "Hubo problemas al abrir la nueva base de datos de la AC '%s'" #: ../src/main.c:364 msgid "Open CA database" msgstr "Abrir base de datos de AC" #: ../src/main.c:387 ../src/main.c:427 #, c-format msgid "Problem when opening '%s' CA database" msgstr "Hubo problemas al abrir la base de datos de la AC '%s'" #: ../src/main.c:452 msgid "Save CA database as..." msgstr "Guardar base de datos de AC como..." #: ../src/main.c:504 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" "gnoMint es un programa diseñado para crear y gestionar Autoridades de " "Certificación, así como sus certificados" #: ../src/main.c:505 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" "Este programa es software libre; puede distribuirlo y/o modificarlo según " "los términos de la Licencia Pública General GNU (GNU GPL), según fue " "publicada por la Free Software Foundation; en la versión 3 de la Licencia, o " "(a su elección) cualquier versión posterior. \n" "\n" "Este programa se distribuye con la esperanza de que sea útil, pero SIN " "GARANTÍA; sin ninguna garantía implícita de estar APTO PARA LA " "COMERCIALIZACIÓN o de IDONEIDAD PARA UN FIN DETERMINADO. Para más detalles, " "vea la Licencia Pública General GNU. \n" "\n" "Debería haber recibido una copia de la Licencia Pública General GNU junto " "con este programa; si no es así, escriba a la Free Software Foundation, " "Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, EE.UU." #: ../src/new_cert.c:325 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" "La política de esta AC obliga a que los campos \"país\" de los certificados " "expedidos seanigual al del certificado de la AC." #: ../src/new_cert.c:331 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" "La política de esta AC obliga a que los campos \"estado/provincia\" de los " "certificados expedidos seanigual al del certificado de la AC." #: ../src/new_cert.c:337 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" "La política de esta AC obliga a que los campos \"localidad/ciudad\" de los " "certificados expedidos seanigual al del certificado de la AC." #: ../src/new_cert.c:343 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" "La política de esta AC obliga a que los campos \"organización\" de los " "certificados expedidos seanigual al del certificado de la AC." #: ../src/new_cert.c:349 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" "La política de esta AC obliga a que los campos \"unidad organizativa\" de " "los certificados expedidos seanigual al del certificado de la AC." #: ../src/new_cert.c:803 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" "La fecha de caducidad del nuevo certificado es posterior a la fecha de " "caducidad del certificado de la AC.\n" "\n" "Según la normativa actual, no debe generarse ningún certificado así, por lo " "que el nuevo certificado se creará con la misma fecha de caducidad que la " "del certificado de la AC." #: ../src/new_cert.c:819 msgid "Error while signing CSR." msgstr "Error al firmar CSR." #: ../src/pkey_manage.c:81 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" "El fichero que almacena la clave privada del certificado '%s' está protegida " "con contraseña.Por favor, introduzca la contraseña correspondiente a este " "fichero." #: ../src/pkey_manage.c:126 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" "El fichero que almacena la clave privada del certificado\n" "'%s' está protegido con contraseña\n" "\n" #: ../src/pkey_manage.c:172 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" "La contraseña que ha introducido no coincide con la empleada para cifrar " "este fichero." #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:188 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" "El fichero indicado en base de datos contiene una clave privada,pero dicha " "clave no se corresponde con el certificado." #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:192 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" "El fichero indicado en la base de datos no contiene ninguna clave privada " "reconocible." #. The file cannot be opened #: ../src/pkey_manage.c:197 msgid "The file designated in database couldn't be opened." msgstr "No se pudo abrir el fichero indicado en la base de datos." #. The file doesn't exist #: ../src/pkey_manage.c:202 msgid "The file designated in database doesn't exist." msgstr "El fichero indicado en la base de datos no existe." #: ../src/pkey_manage.c:766 ../src/pkey_manage.c:817 msgid "The given password doesn't match the one used in the database" msgstr "" "La contraseña que ha introducido no coincide con la contraseña de la base de " "datos." #: ../src/pkey_manage.c:804 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" "Esta acción necesita emplear una o más claves privadas almacenadas en la " "base de datos de la AC.\n" #: ../src/pkey_manage.c:805 msgid "Please insert the database password:" msgstr "Introduzca la contrase_ña de la base de datos:" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "Error al inicializar estructura de clave privada." #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "Error al crear clave privada: %d" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:557 ../src/tls.c:865 #, c-format msgid "Error exporting private key to PEM structure." msgstr "Error al exportar clave privada a estructura PEM." #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "Error al inicializar estructura de certificado" #: ../src/tls.c:441 ../src/tls.c:693 #, c-format msgid "Error when setting certificate version" msgstr "Error al establecer versión de certificado" #: ../src/tls.c:451 ../src/tls.c:706 #, c-format msgid "Error when setting certificate serial number" msgstr "Error al establecer número de serie del certificado" #: ../src/tls.c:460 ../src/tls.c:715 #, c-format msgid "Error when setting activation time" msgstr "Error al establecer fecha de activación" #: ../src/tls.c:465 ../src/tls.c:723 #, c-format msgid "Error when setting expiration time" msgstr "Error al establecer fecha y hora de caducidad" #: ../src/tls.c:511 ../src/tls.c:772 #, c-format msgid "Error when setting basicConstraint extension" msgstr "Error al establecer extensión basicConstraint" #: ../src/tls.c:516 ../src/tls.c:814 #, c-format msgid "Error when setting keyUsage extension" msgstr "Error al establecer extensión keyUsage" #: ../src/tls.c:531 ../src/tls.c:788 #, c-format msgid "Error when setting subject key identifier extension" msgstr "Error al establecer extensión identificadora de titular" #: ../src/tls.c:535 ../src/tls.c:762 #, c-format msgid "Error when setting authority key identifier extension" msgstr "Error al establecer extensión identificadora de autoridad" #: ../src/tls.c:545 #, c-format msgid "Error when signing self-signed certificate" msgstr "Error al firmar certificado autofirmado" #: ../src/tls.c:575 #, c-format msgid "Error when initializing csr structure" msgstr "Error al inicializar estructura de solicitud" #: ../src/tls.c:579 #, c-format msgid "Error when setting csr version" msgstr "Error al establecer versión de solicitud" #: ../src/tls.c:612 #, c-format msgid "Error when signing self-signed csr" msgstr "Error al firmar solicitud autofirmada" #: ../src/tls.c:623 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "Error al exportar solicitud de certificación a estructura PEM." #: ../src/tls.c:677 #, c-format msgid "Error when initializing crt structure" msgstr "Error al inicializar estructura de solicitud" #: ../src/tls.c:685 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "Error al copiar datos de solicitud a la estructura del certificado" #: ../src/tls.c:850 #, c-format msgid "Error when signing certificate" msgstr "Error al firmar certificado" #: ../src/tls.c:1063 msgid "Certification Authority" msgstr "Autoridad de certificación" #: ../src/tls.c:1082 msgid "Key encipher only" msgstr "Clave de sólo cifrado" #: ../src/tls.c:1084 msgid "Key decipher only" msgstr "Clave de sólo descifrado" #: ../src/tls.c:1096 msgid "TLS WWW Client." msgstr "Cliente TLS WWW" #~ msgid " " #~ msgstr " " #~ msgid "CSR subject" #~ msgstr "Titular de la solicitud" #~ msgid "Certificate fields" #~ msgstr "Campos de certificado" #~ msgid "Certificate hierarchy" #~ msgstr "Jerarquía de certificados" #~ msgid "Certificate purposes" #~ msgstr "Finalidad del certificado" #~ msgid "Certificate subject" #~ msgstr "Titular del certificado" #~ msgid "Certificate uses" #~ msgstr "Usos del certificado" #~ msgid "Emmited by" #~ msgstr "Emitido por" #~ msgid "Fingerprints" #~ msgstr "Huellas digitales" #~ msgid "Inherited fields from CA subject" #~ msgstr "Campos heredados del titular de la AC" #~ msgid "Purposes of new generated certificates" #~ msgstr "Finalidades posibles de los nuevos certificados" #~ msgid "" #~ "This Certificate Signing Request has its corresponding private key " #~ "saved in the internal database." #~ msgstr "" #~ "La clave privada correspondiente a esta petición de certificación está " #~ "almacenada en la base de datos interna." #~ msgid "This certificate has been verified for the following uses:" #~ msgstr "Este certificado ha sido validado para los siguientes usos:" #~ msgid "Uses of new generated certificates" #~ msgstr "Usos posibles de los nuevos certificados" #~ msgid "Validity" #~ msgstr "Validez" #~ msgid "New Certificate Revocation List" #~ msgstr "Nueva lista de certificados revocados" #~ msgid "CA Properties\n" #~ msgstr "Propiedades de la AC\n" #~ msgid "CA Root certificate properties\n" #~ msgstr "Propiedades del certificado raiz de la AC\n" #~ msgid "Certificate Request Properties\n" #~ msgstr "Propiedades de la solicitud\n" #~ msgid "" #~ "Choose private key file\n" #~ "\n" #~ "For doing the selected operation, you must provide the file where resides " #~ "the private key corresponding to the certificate:" #~ msgstr "" #~ "Seleccione fichero con clave privada\n" #~ "\n" #~ "Para realizar la operación seleccionada, deberá proporcionar el fichero " #~ "donde reside la clave privada correspondiente al certificado:" #~ msgid "New Certificate Properties\n" #~ msgstr "Propiedades del nuevo certificado\n" #~ msgid "Password protection\n" #~ msgstr "Cifrado con contraseña\n" #~ msgid "" #~ "Export both (private and public) parts to a password-protected PKCS#12 " #~ "file. This kind of file can be imported by other common programs, such as " #~ "web or mail clients." #~ msgstr "" #~ "Exporta·ambas partes (pública y privada) a un fichero PKCS#12 " #~ "protegido con clave. Esta clase de ficheros puede ser importada por otros " #~ "programas comúnes, tales como clientes web o de correo electrónico." #~ msgid "Export only the certificate to a public file, in PEM format." #~ msgstr "" #~ "Exporta sólo el certificado a un fichero público en formato PEM" #~ msgid "" #~ "Export the saved private key to a PEM file. This option should only be " #~ "used for exporting certificates that will be used in unattended servers." #~ msgstr "" #~ "Exporta la clave privada almacenada a un fichero PEM. Esta opción sólo " #~ "debería ser empleada para exportar certificados que vayan a ser usados en " #~ "servidores no atendidos." #~ msgid "" #~ "Export the saved private key to a PKCS#8 password-protected file. This " #~ "file should only be accessed by the subject of the certificate." #~ msgstr "" #~ "Exporta la clave privada almacenada a un fichero PKCS#8 protegido con " #~ "clave. Este fichero sólo debería ser accesible para el titular del " #~ "certificado." #~ msgid "" #~ "Import a directory containing the structure of\n" #~ "a whole CA made with OpenSSL ." #~ msgstr "" #~ "Importar directorio que contenga la estructura\n" #~ "completa de una AC producida con OpenSSL." #~ msgid "" #~ "Import a single file, encoded in DER or PEM format, containing " #~ "certificates, private keys (encrypted or plain), signing requests (CSRs), " #~ "revocation lists (CRLs) or PKCS#12 packages." #~ msgstr "" #~ "Importar un único fichero, en formato DER o PEM, que contiene " #~ "certificados, claves privadas (cifradas o en claro), solicitudes de " #~ "certificación (CSRs), listas de revocación (CRLs) o paquetes PKCS#12." #~ msgid "" #~ "\n" #~ "It is recommended that all the certificates generated by a CA share the " #~ "same properties.\n" #~ "If you want to generate certificates with different properties, you " #~ "should create a hierarchy of CAs, each one with its own policy for " #~ "certificate generation.\n" #~ "\n" #~ "Please, define the maximum set of properties for the certificates that " #~ "this CA will be able to generate:\n" #~ msgstr "" #~ "\n" #~ "Se recomienda que todos los certificados generados por una AC compartan " #~ "las mismas propiedades.\n" #~ "Si desea generar certificados con propiedades distintas, sería " #~ "aconsejable crear una jerarquía de ACs, cada una con su propia política " #~ "para la generación de certificados.\n" #~ "\n" #~ "Defina el conjunto máximo de propiedades para los certificados que la " #~ "presente Autoridad de Certificación podrá otorgar:\n" #~ msgid "#Description#" #~ msgstr "#Descripción#" #~ msgid "" #~ "PKCS#3 files containing Diffie·Hellman parameters are used " #~ "by some cryptographic \n" #~ "applications for a secure interchange of their keys over insecure " #~ "channels." #~ msgstr "" #~ "Los ficheros PKCS#3·con parámetros·Diffie Hellman·son usados " #~ "por ciertas aplicaciones \n" #~ "criptográficas para realizar intercambios seguros de sus claves a través " #~ "de canales inseguros." #~ msgid "" #~ "The part that is being imported has the description:" #~ msgstr "" #~ "La parte a ser importada tiene la siguiente descripción:" #~ msgid "" #~ "The subject of the new certificate request can inherit information " #~ "from one of the existing Certification Authorities. This is a must if the " #~ "policy of the CA you are going to use is defined to force some fields of " #~ "a certificate subject to be the same as the ones in the CA cert subject." #~ msgstr "" #~ "El titular de la nueva solicitud de certificado puede heredar " #~ "información de una de las autoridades de certificación existentes. Esto " #~ "es necesario si la política de la AC que va a utilizar para firmar el " #~ "certificado obliga a que ciertos campos sean iguales en el certificado de " #~ "la autoridad y en sus certificados hijos." #~ msgid "Activated on" #~ msgstr "Activado el" #~ msgid "Add CSR" #~ msgstr "Añadir CSR" #~ msgid "Add _Certificate Request" #~ msgstr "Añadir _solicitud de certificación" #~ msgid "Add a new Certificate Signing Request" #~ msgstr "Añadir nueva solicitud de certificación" #~ msgid "Add an autosigned CA" #~ msgstr "Añadir autoridad de certificación auto-firmada" #~ msgid "Add autosigned CA certificate" #~ msgstr "Añadir certificado de AC autofirmado" #~ msgid "" #~ "Automatically export created certificates to \n" #~ "Gnome-keyring certificate store" #~ msgstr "" #~ "Exportar automáticamente los certificados creados a\n" #~ "el almacén de certificados de Gnome-keyring" #~ msgid "Both parts." #~ msgstr "Ambas partes." #~ msgid "CA Policy" #~ msgstr "Política de la AC" #~ msgid "" #~ "CA Root Certificate \n" #~ "Common Name (CN):" #~ msgstr "" #~ "Nombre común (CN) del\n" #~ "certificado raiz de la AC:" #~ msgid "CA properties" #~ msgstr "Propiedades de la AC" #~ msgid "CACN" #~ msgstr "CACN" #~ msgid "CAO" #~ msgstr "CAO" #~ msgid "CAOU" #~ msgstr "CAOU" #~ msgid "CSR properties - gnoMint" #~ msgstr "Propiedades de la solicitud - gnoMint" #~ msgid "CertActivationDate" #~ msgstr "Fecha de activación" #~ msgid "CertExpirationDate" #~ msgstr "Fecha de caducidad" #~ msgid "CertSN" #~ msgstr "Núm de serie" #~ msgid "" #~ "Certificate \n" #~ "Common Name (CN):" #~ msgstr "" #~ "Nombre común (CN) del\n" #~ "certificado:" #~ msgid "Certificate DN" #~ msgstr "Descriptor del certificado" #~ msgid "Certificate _Signing Requests" #~ msgstr "_Solicitudes de firma de certificados" #~ msgid "Certificate properties" #~ msgstr "Propiedades del certificado" #~ msgid "Certificate properties - gnoMint" #~ msgstr "Propiedades del certificado - gnoMint" #~ msgid "Change database pass_word" #~ msgstr "Cambiar contrase_ña de base de datos" #~ msgid "Choose CA for signing the CSR" #~ msgstr "Seleccione autoridad que firmará la solicitud" #~ msgid "Choose private key file. gnoMint" #~ msgstr "Seleccione fichero con clave privada. gnoMint" #~ msgid "City" #~ msgstr "Ciudad" #~ msgid "City: " #~ msgstr "Ciudad " #~ msgid "Common Name (CN)" #~ msgstr "Nombre común (CN)" #~ msgid "Country" #~ msgstr "País" #~ msgid "Country:" #~ msgstr "País" #~ msgid "Create a new database" #~ msgstr "Crear nueva base de datos" #~ msgid "Creating CA Root Certificate" #~ msgstr "Creando certificado raíz de la AC" #~ msgid "Creating new CA - gnoMint" #~ msgstr "Creando nueva AC - gnoMint" #~ msgid "DSA" #~ msgstr "DSA" #~ msgid "Database password protection - gnoMint" #~ msgstr "Protección de contraseña de base de datos - gnoMint" #~ msgid "Delete the selected Certificate Signing Request" #~ msgstr "Borrar la solicitud de certificación seleccionada" #~ msgid "Details" #~ msgstr "Detalles" #~ msgid "Don't inherit any fields from existing Certification Authorities" #~ msgstr "No heredar ningún campo de autoridades de certificación existentes" #~ msgid "E_xport" #~ msgstr "E_xportar" #~ msgid "" #~ "Enter new password again \n" #~ "for confirmation:" #~ msgstr "" #~ "Introduzca la nueva contraseña \n" #~ "otra vez para confirmar:" #~ msgid "Enter password - gnoMint" #~ msgstr "Introduzca contraseña - gnoMint" #~ msgid "Enter password again for confirmation:" #~ msgstr "Introduzca otra vez la contraseña para confirmar:" #~ msgid "Expires on" #~ msgstr "Caduca el" #~ msgid "Export certificate - gnoMint" #~ msgstr "Exportar certificado - gnoMint" #~ msgid "Export options" #~ msgstr "Opciones de exportación" #~ msgid "Exports the CSR so it can be imported by any other application" #~ msgstr "" #~ "Exporta la solicitud de certificación de modo que pueda ser importada por " #~ "cualquier otra aplicación" #~ msgid "" #~ "Exports the certificate so it can be imported by any other application" #~ msgstr "" #~ "Exporta el certificado de modo que pueda ser importado por cualquier otra " #~ "aplicación" #~ msgid "Extrac_t private key" #~ msgstr "Ex_traer clave privada" #~ msgid "Extract Private Key" #~ msgstr "Extraer clave privada" #~ msgid "Extract the private key of the selected item into a external file" #~ msgstr "" #~ "Extrae la clave privada del elemento seleccionado a un fichero externo" #~ msgid "Extract the saved private key to an external file or device" #~ msgstr "" #~ "Extrae la clave privada almacenada a un fichero o dispositivo externo" #~ msgid "" #~ "Extracts the private key of the selected \n" #~ "certificate from the database to an \n" #~ "external file. This file must be provided \n" #~ "each time the CSR will be used" #~ msgstr "" #~ "Extrae de la base de datos la clave privada del certificado seleccionado, " #~ "almacenándola en un fichero externo. Este fichero deberá proporcionarse " #~ "cada vez que se emplee la solicitud de certificación" #~ msgid "" #~ "Extracts the private key of the selected \n" #~ "certificate from the database to an \n" #~ "external file. This file must be provided \n" #~ "each time the certificate will be used" #~ msgstr "" #~ "Extrae de la base de datos la clave privada del certificado seleccionado, " #~ "almacenándola en un fichero externo. Este fichero deberá proporcionarse " #~ "cada vez que se emplee el certificado" #~ msgid "General" #~ msgstr "General" #~ msgid "General Preferences - gnoMint" #~ msgstr "Preferencias generales - gnoMint" #~ msgid "Generate D_H parameters..." #~ msgstr "Generar parámetros D_H..." #~ msgid "Generate _CRL" #~ msgstr "Generar _CRL" #~ msgid "Generate the current Certificate Revocation List" #~ msgstr "Generar lista actual de certificados revocados (CRL)" #~ msgid "Hours between CRL updates:" #~ msgstr "Nº de horas entre actualizaciones consecutivas de CRL:" #~ msgid "Import a single file." #~ msgstr "Importar un único fichero." #~ msgid "Import a whole directory." #~ msgstr "Importar un directorio completo." #~ msgid "Import selection - gnoMint" #~ msgstr "Selección de importación - gnoMint" #~ msgid "" #~ "Inherit fields according to selected Certification Authority and its " #~ "policy." #~ msgstr "" #~ "Heredar campos según la política de la autoridad de certificación " #~ "seleccionada." #~ msgid "MD5 fingerprint" #~ msgstr "Huella digital MD5" #~ msgid "MD5FINGERPRINT" #~ msgstr "MD5FINGERPRINT" #~ msgid "" #~ "Maximum number of months before expiration of the new generated " #~ "certificates:" #~ msgstr "" #~ "Máximo número de meses antes de la caducidad de los nuevos certificados:" #~ msgid "Months before certificate expiration:" #~ msgstr "Meses antes de la caducidad del certificado:" #~ msgid "Months before root certificate expiration:" #~ msgstr "Meses antes de la caducidad del certificado raíz:" #~ msgid "New CA - gnoMint" #~ msgstr "Nueva AC - gnoMint" #~ msgid "New CRL - gnoMint" #~ msgstr "Nueva CRL - gnoMint" #~ msgid "New Certificate - gnoMint" #~ msgstr "Nuevo certificado - gnoMint" #~ msgid "New Diffie-Hellman parameters - gnoMint" #~ msgstr "Nuevos parámetros Diffie-Hellman - gnoMint" #~ msgid "" #~ "New certificate \n" #~ "Common Name (CN):" #~ msgstr "" #~ "Nombre común (CN) del\n" #~ "nuevo certificado:" #~ msgid "New certificate request - gnoMint" #~ msgstr "Nueva solicitud de certificación - gnoMint" #~ msgid "Only the private key (crypted)." #~ msgstr "Sólo la clave privada (cifrada)." #~ msgid "Only the private key (uncrypted)." #~ msgstr "Sólo la clave privada (sin cifrar)." #~ msgid "Only the pu_blic part." #~ msgstr "Sólo la parte pú_blica." #~ msgid "Open _recents" #~ msgstr "Abrir _recientes" #~ msgid "Open an existing database" #~ msgstr "Abrir base de datos existente" #~ msgid "Organization" #~ msgstr "Organización" #~ msgid "Organization (O)" #~ msgstr "Organización (O)" #~ msgid "Organization Unit:" #~ msgstr "Unidad organizativa:" #~ msgid "Organization:" #~ msgstr "Organización:" #~ msgid "Organizational Unit (OU)" #~ msgstr "Unidad organizativa (OU)" #~ msgid "Organizational unit" #~ msgstr "Unidad organizativa" #~ msgid "Password (confirm):" #~ msgstr "Contraseña (confirmar):" #~ msgid "Password protect" #~ msgstr "Proteger con contraseña" #~ msgid "Password:" #~ msgstr "Contraseña:" #~ msgid "Please, choose the file:" #~ msgstr "Seleccione el fichero:" #~ msgid "Please, choose the more suitable option for what you want to import:" #~ msgstr "" #~ "Seleccione la opción más adecuada que represente lo que desea importar:" #~ msgid "" #~ "Please, choose which part of the saved certificate you want to export:" #~ msgstr "Seleccione qué parte almacenada del certificado desea exportar:" #~ msgid "" #~ "Please, enter current\n" #~ "password:" #~ msgstr "" #~ "Introduzca la contraseña \n" #~ "actual:" #~ msgid "" #~ "Please, enter new \n" #~ "password:" #~ msgstr "" #~ "Introduzca la nueva \n" #~ "contraseña:" #~ msgid "Please, enter password" #~ msgstr "Introduzca la contraseña" #~ msgid "Please, enter password:" #~ msgstr "Introduzca la contraseña:" #~ msgid "Please, enter the prime size, in bits:" #~ msgstr "Introduzca el tamaño del número primo, en bits:" #~ msgid "" #~ "Please, select the CA for which a Certificate \n" #~ "Revocation List is going to be created:" #~ msgstr "" #~ "Seleccione la autoridad de certificación para la\n" #~ "que se va a crear una CRL (lista de certificados \n" #~ "revocados):" #~ msgid "Private key bit length:" #~ msgstr "Longitud en bits de la clave privada:" #~ msgid "Private key type:" #~ msgstr "Tipo de clave privada:" #~ msgid "" #~ "Protect CA database private \n" #~ "keys with password:" #~ msgstr "" #~ "Proteger con contraseña las claves privadas de la base de datos de la AC:" #~ msgid "" #~ "Protect CA database private keys\n" #~ "with password:" #~ msgstr "" #~ "Proteger con contraseña las claves privadas de la base de datos de la AC:" #~ msgid "RSA" #~ msgstr "RSA" #~ msgid "Remember this password during this gnoMint session" #~ msgstr "Recordar esta contraseña durante toda esta sesión de gnoMint" #~ msgid "Revo_ke" #~ msgstr "Revo_car" #~ msgid "Revoke" #~ msgstr "Revocar" #~ msgid "Revoke the selected certificate" #~ msgstr "Revocar el certificado seleccionado" #~ msgid "Revokes the selected certificate" #~ msgstr "Revoca el certificado seleccionado" #~ msgid "Root certificate prop" #~ msgstr "Prop. de certificado raíz" #~ msgid "SHA1 fingerprint" #~ msgstr "Huella digital SHA1" #~ msgid "SHA1FINGERPRINT" #~ msgstr "SHA1FINGERPRINT" #~ msgid "Serial number" #~ msgstr "Nº de serie" #~ msgid "Shows the CSR properties window" #~ msgstr "Mostrar ventana de propiedades de la solicitud de certificación" #~ msgid "Shows the certificate properties window" #~ msgstr "Muestra la ventana de propiedades del certificado" #~ msgid "Sign" #~ msgstr "Firmar" #~ msgid "Sign the selected Certificate Signing Request" #~ msgstr "Firmar la solicitud de certificación seleccionada" #~ msgid "State or Province name" #~ msgstr "Nombre de estado o provincia" #~ msgid "State or Province name: " #~ msgstr "Nombre de estado o provincia: " #~ msgid "SubjectCN" #~ msgstr "NombreTitular" #~ msgid "SubjectO" #~ msgstr "OrganizaciónTitular" #~ msgid "SubjectOU" #~ msgstr "UnidadOrganizativaTitular" #~ msgid "TLS Web client" #~ msgstr "Cliente WWW TLS" #~ msgid "TLS Web server" #~ msgstr "Servidor web TLS" #~ msgid "" #~ "The whole selected file, or some of its elements, seems to be cyphered " #~ "using a password or passphrase.\n" #~ "\n" #~ "For importing the file into gnoMint database, you must provide an " #~ "appropiate password." #~ msgstr "" #~ "Todo el fichero seleccionado, o alguno de los elementos que lo conforman, " #~ "parece haber sido cifrado empleando una contraseña.\n" #~ "\n" #~ "Para importar el fichero en la base de datos de gnoMint, deberá " #~ "proporcionar una contraseña adecuada." #~ msgid "" #~ "This action requires using one or more private keys saved in the CA " #~ "database.\n" #~ "\n" #~ "Please insert the database password." #~ msgstr "" #~ "Esta acción necesita emplear una o más claves privadas almacenadas en la " #~ "base de datos de la AC.\n" #~ "\n" #~ "Por favor, introduzca la contraseña de la base de datos." #~ msgid "" #~ "You are about to create and export a set of Diffie·Hellman " #~ "parameters into a PKCS#3 structure file." #~ msgstr "" #~ "Se va a crear y exportar un conjunto de parámetros Diffie-Hellman a un " #~ "fichero con formato PKCS#3." #~ msgid "" #~ "You are about to sign a Certificate Signing Request, and this way, " #~ "creating a new certificate. Please check the certificate properties." #~ msgstr "" #~ "Se va a proceder a la firma de una solicitud de certificación, creándose " #~ "así un nuevo certificado. Por favor, compruebe las propiedades de éste." #~ msgid "" #~ "You are about to sign a Certificate Signing Request. Please, choose the " #~ "Certification Authority you are going to use for signing it." #~ msgstr "" #~ "Se va a proceder a la firma de una solicitud de certificación. Por favor, " #~ "seleccione la autoridad de certificación que se va a emplear para " #~ "firmarlo." #~ msgid "_Add self-signed CA" #~ msgstr "_Añadir autoridad de certificación auto-firmada" #~ msgid "_Certificates" #~ msgstr "Certificados" #~ msgid "_Edit" #~ msgstr "_Editar" #~ msgid "_Help" #~ msgstr "Ay_uda" #~ msgid "_Import" #~ msgstr "I_mportar" #~ msgid "_New certificate database" #~ msgstr "_Nueva base de datos de certificados" #~ msgid "_No" #~ msgstr "_No" #~ msgid "_Open certificate database" #~ msgstr "Abrir base de datos de certificados" #~ msgid "_Revoked Certificates" #~ msgstr "Certificados _revocados" #~ msgid "_Save certificate database as..." #~ msgstr "_Guardar base de datos de certificados como..." #~ msgid "_Save filename in the database for automatic loading" #~ msgstr "" #~ "_Guardar nombre de fichero en base de datos para cargarlo automáticamente" #~ msgid "_Sign" #~ msgstr "_Firmar" #~ msgid "_View" #~ msgstr "_Ver" #~ msgid "_Yes" #~ msgstr "_Sí" #~ msgid "gnoMint" #~ msgstr "gnoMint" #~ msgid "gtk-cancel" #~ msgstr "gtk-cancel" #~ msgid "gtk-ok" #~ msgstr "gtk-ok" #~ msgid "label" #~ msgstr "etiqueta" #~ msgid "may differ" #~ msgstr "puede variar" #~ msgid "must be the same" #~ msgstr "debe coincidir" #~ msgid "page 3" #~ msgstr "página 3" #~ msgid "" #~ "The certificate will be generated with the following uses and purposes:\n" #~ msgstr "" #~ "Este certificado se habilitará para los siguientes usos y finalidades:\n" #~ msgid "gtk-add" #~ msgstr "gtk-add" #~ msgid "gtk-delete" #~ msgstr "gtk-delete" #~ msgid "gtk-properties" #~ msgstr "gtk-properties" #~ msgid "" #~ "Couldn't import the given private key. \n" #~ "%s" #~ msgstr "" #~ "No se pudo importar la clave privada proporcionada.\n" #~ "%s" #~ msgid "Certificate properties\n" #~ msgstr "Propiedades del certificado\n" #~ msgid "New certificate properties\n" #~ msgstr "Propiedades del nuevo certificado\n" #~ msgid "" #~ "Please, select the Certification Authority that will create the new " #~ "certificate:" #~ msgstr "" #~ "Por favor: seleccione la Autoridad de Certificación que se empleará para " #~ "crear el nuevo certificado:" #~ msgid "Select the CA to sign this new certificate" #~ msgstr "Seleccione la AC para firmar este nuevo certificado" #~ msgid "Subject Common Name (CN):" #~ msgstr "Nombre común (CN) del titular:" #~ msgid "Save CA database" #~ msgstr "Guardar base de datos de AC" #~ msgid "Problem when saving new CA database" #~ msgstr "Problema al guardar nueva base de datos de AC" #~ msgid "_Actions" #~ msgstr "A_cciones" #~ msgid "_File" #~ msgstr "_Archivo" #~ msgid "_New CA" #~ msgstr "_Nueva AC" #~ msgid "Field value" #~ msgstr "Valor del campo" #~ msgid "Afghanistan" #~ msgstr "Afganistán" #~ msgid "Aland Islands" #~ msgstr "Islas Aland" #~ msgid "Albania" #~ msgstr "Albania" #~ msgid "American Samoa" #~ msgstr "Samoa americana" #~ msgid "Andorra" #~ msgstr "Andorra" #~ msgid "Angola" #~ msgstr "Angola" #~ msgid "Anguilla" #~ msgstr "Anguilla" #~ msgid "Antarctica" #~ msgstr "Antártida" #~ msgid "Antigua and Barbuda" #~ msgstr "Antigua y Barbuda" #~ msgid "Argentina" #~ msgstr "Argentina" #~ msgid "Armenia" #~ msgstr "Armenia" #~ msgid "Aruba" #~ msgstr "Aruba" #~ msgid "Australia" #~ msgstr "Australia" #~ msgid "Austria" #~ msgstr "Austria" #~ msgid "Azerbaijan" #~ msgstr "Acerbaiján" #~ msgid "Bahamas" #~ msgstr "Bahamas" #~ msgid "Bahrain" #~ msgstr "Bahrein" #~ msgid "Bangladesh" #~ msgstr "Bangladesh" #~ msgid "Barbados" #~ msgstr "Barbados" #~ msgid "Belarus" #~ msgstr "Bielorrusia" #~ msgid "Belgium" #~ msgstr "Bélgica" #~ msgid "Belize" #~ msgstr "Belice" #~ msgid "Benin" #~ msgstr "Benín" #~ msgid "Bermuda" #~ msgstr "Bermuda" #~ msgid "Bhutan" #~ msgstr "Bután" #~ msgid "Bolivia" #~ msgstr "Bolivia" #~ msgid "Bosnia and Herzegovina" #~ msgstr "Bosnia Herzegovina" #~ msgid "Botswana" #~ msgstr "Botswana" #~ msgid "Bouvet Island" #~ msgstr "Isla Bouvet" #~ msgid "Brazil" #~ msgstr "Brasil" #~ msgid "British Indian Ocean Territory" #~ msgstr "Territorio Británico en el Océano Índico" #~ msgid "Brunei Darussalam" #~ msgstr "Brunei" #~ msgid "Bulgaria" #~ msgstr "Bulgaria" #~ msgid "Burkina Faso" #~ msgstr "Burkina Faso" #~ msgid "Burundi" #~ msgstr "Burundi" #~ msgid "Cambodia" #~ msgstr "Camboya" #~ msgid "Cameroon" #~ msgstr "Camerún" #~ msgid "Canada" #~ msgstr "Canadá" #~ msgid "Cape Verde" #~ msgstr "Cabo Verde" #~ msgid "Cayman Islands" #~ msgstr "Islas Caimán" #~ msgid "Central African Republic" #~ msgstr "República Centroafricana" #~ msgid "Chad" #~ msgstr "Chad" #~ msgid "Chile" #~ msgstr "Chile" #~ msgid "China" #~ msgstr "China" #~ msgid "Christmas Island" #~ msgstr "Isla de Navidad" #~ msgid "Cocos (Keeling) Islands" #~ msgstr "Islas Cocos (Keeling)" #~ msgid "Colombia" #~ msgstr "Colombia" #~ msgid "Comoros" #~ msgstr "Comoros" #~ msgid "Congo" #~ msgstr "Congo" #~ msgid "Congo, the Democratic Republic of the" #~ msgstr "Congo, República Democrática del" #~ msgid "Cook Islands" #~ msgstr "Islas Cook" #~ msgid "Costa Rica" #~ msgstr "Costa Rica" #~ msgid "Cote d'Ivoire" #~ msgstr "Costa de Marfil" #~ msgid "Cuba" #~ msgstr "Cuba" #~ msgid "Cyprus" #~ msgstr "Chipre" #~ msgid "Czech Republic" #~ msgstr "República Checa" #~ msgid "Denmark" #~ msgstr "Dinamarca" #~ msgid "Djibouti" #~ msgstr "Yibuti" #~ msgid "Dominica" #~ msgstr "Dominica" #~ msgid "Dominican Republic" #~ msgstr "República Dominicana" #~ msgid "Ecuador" #~ msgstr "Ecuador" #~ msgid "Egypt" #~ msgstr "Egipto" #~ msgid "El Salvador" #~ msgstr "El Salvador" #~ msgid "Equatorial Guinea" #~ msgstr "Guinea Ecuatorial" #~ msgid "Eritrea" #~ msgstr "Eritrea" #~ msgid "Estonia" #~ msgstr "Estonia" #~ msgid "Ethiopia" #~ msgstr "Etiopía" #~ msgid "Falkland Islands (Malvinas)" #~ msgstr "Islas Malvinas (Falkland)" #~ msgid "Faroe Islands" #~ msgstr "Islas Feroe" #~ msgid "Fiji" #~ msgstr "Fiji" #~ msgid "Finland" #~ msgstr "Finlandia" #~ msgid "France" #~ msgstr "Francia" #~ msgid "French Guiana" #~ msgstr "Guyana Francesa" #~ msgid "French Polynesia" #~ msgstr "Polinesia Francesa" #~ msgid "French Southern Territories" #~ msgstr "Territorios franceses del sur" #~ msgid "Gabon" #~ msgstr "Gabón" #~ msgid "Gambia" #~ msgstr "Gambia" #~ msgid "Georgia" #~ msgstr "Georgia" #~ msgid "Germany" #~ msgstr "Alemania" #~ msgid "Ghana" #~ msgstr "Ghana" #~ msgid "Gibraltar" #~ msgstr "Gibraltar" #~ msgid "Greece" #~ msgstr "Grecia" #~ msgid "Greenland" #~ msgstr "Groelandia" #~ msgid "Grenada" #~ msgstr "Granada" #~ msgid "Guadeloupe" #~ msgstr "Guadalupe" #~ msgid "Guam" #~ msgstr "Guam" #~ msgid "Guatemala" #~ msgstr "Guatemala" #~ msgid "Guernsey" #~ msgstr "Guernsey" #~ msgid "Guinea" #~ msgstr "Guinea" #~ msgid "Guinea-Bissau" #~ msgstr "Guinea-Bissau" #~ msgid "Guyana" #~ msgstr "Guyana" #~ msgid "Haiti" #~ msgstr "Haití" #~ msgid "Heard Island and Mcdonald Islands" #~ msgstr "Isla Heard e Islas McDonald" #~ msgid "Holy See (Vatican City State)" #~ msgstr "Ciudad del Vaticano (Santa Sede)" #~ msgid "Honduras" #~ msgstr "Honduras" #~ msgid "Hong Kong" #~ msgstr "Hong Kong" #~ msgid "Hungary" #~ msgstr "Hungría" #~ msgid "Iceland" #~ msgstr "Islandia" #~ msgid "India" #~ msgstr "India" #~ msgid "Indonesia" #~ msgstr "Indonesia" #~ msgid "Iran, Islamic Republic of" #~ msgstr "Irán, República Islámica de" #~ msgid "Iraq" #~ msgstr "Irak" #~ msgid "Ireland" #~ msgstr "Irlanda" #~ msgid "Isle of Man" #~ msgstr "Isla de Man" #~ msgid "Israel" #~ msgstr "Israel" #~ msgid "Italy" #~ msgstr "Italia" #~ msgid "Jamaica" #~ msgstr "Jamaica" #~ msgid "Japan" #~ msgstr "Japón" #~ msgid "Jersey" #~ msgstr "Jersey" #~ msgid "Jordan" #~ msgstr "Jordania" #~ msgid "Kazakhstan" #~ msgstr "Kazajistán" #~ msgid "Kenya" #~ msgstr "Kenia" #~ msgid "Kiribati" #~ msgstr "Kiribati" #~ msgid "Korea, Democratic People's Republic of" #~ msgstr "Corea del Norte" #~ msgid "Korea, Republic of" #~ msgstr "Corea del Sur" #~ msgid "Kuwait" #~ msgstr "Kuwait" #~ msgid "Kyrgyzstan" #~ msgstr "Kirguizistán" #~ msgid "Lao People's Democratic Republic" #~ msgstr "Laos" #~ msgid "Latvia" #~ msgstr "Letonia" #~ msgid "Lebanon" #~ msgstr "Líbano" #~ msgid "Lesotho" #~ msgstr "Lesotho" #~ msgid "Liberia" #~ msgstr "Liberia" #~ msgid "Libyan Arab Jamahiriya" #~ msgstr "Libia" #~ msgid "Liechtenstein" #~ msgstr "Liechtenstein" #~ msgid "Lithuania" #~ msgstr "Lituania" #~ msgid "Luxembourg" #~ msgstr "Luxemburgo" #~ msgid "Macao" #~ msgstr "Macao" #~ msgid "Macedonia, The Former Yugoslav Republic of" #~ msgstr "Macedonia, Antigua República Yugoslava de" #~ msgid "Madagascar" #~ msgstr "Madagascar" #~ msgid "Malawi" #~ msgstr "Malawi" #~ msgid "Malaysia" #~ msgstr "Malasia" #~ msgid "Maldives" #~ msgstr "Maldivas" #~ msgid "Mali" #~ msgstr "Mali" #~ msgid "Malta" #~ msgstr "Malta" #~ msgid "Marshall Islands" #~ msgstr "Islas Marshall" #~ msgid "Martinique" #~ msgstr "Martinica" #~ msgid "Mauritania" #~ msgstr "Mauritania" #~ msgid "Mauritius" #~ msgstr "Mauricio" #~ msgid "Mayotte" #~ msgstr "Mayotte" #~ msgid "Mexico" #~ msgstr "México" #~ msgid "Micronesia, Federated States of" #~ msgstr "Micronesia, Estados Federados de" #~ msgid "Moldova, Republic of" #~ msgstr "Moldavia, República de" #~ msgid "Monaco" #~ msgstr "Mónaco" #~ msgid "Mongolia" #~ msgstr "Mongolia" #~ msgid "Montserrat" #~ msgstr "Montserrat" #~ msgid "Morocco" #~ msgstr "Marruecos" #~ msgid "Mozambique" #~ msgstr "Mozambique" #~ msgid "Myanmar" #~ msgstr "Myanmar" #~ msgid "Namibia" #~ msgstr "Namibia" #~ msgid "Nauru" #~ msgstr "Nauru" #~ msgid "Nepal" #~ msgstr "Nepal" #~ msgid "Netherlands" #~ msgstr "Países Bajos" #~ msgid "Netherlands Antilles" #~ msgstr "Antillas holandesas" #~ msgid "New Caledonia" #~ msgstr "Nueva Caledonia" #~ msgid "New Zealand" #~ msgstr "Nueva Zelanda" #~ msgid "Nicaragua" #~ msgstr "Nicaragua" #~ msgid "Niger" #~ msgstr "Níger" #~ msgid "Nigeria" #~ msgstr "Nigeria" #~ msgid "Niue" #~ msgstr "Niue" #~ msgid "Norfolk Island" #~ msgstr "Isla Norfolk" #~ msgid "Northern Mariana Islands" #~ msgstr "Islas Marianas del Norte" #~ msgid "Norway" #~ msgstr "Noruega" #~ msgid "Oman" #~ msgstr "Omán" #~ msgid "Pakistan" #~ msgstr "Pakistán" #~ msgid "Palestinian Territory, Occupied" #~ msgstr "Palestina, Territorio Ocupado de" #~ msgid "Panama" #~ msgstr "Panamá" #~ msgid "Papua New Guinea" #~ msgstr "Papúa Nueva Guinea" #~ msgid "Paraguay" #~ msgstr "Paraguay" #~ msgid "Peru" #~ msgstr "Perú" #~ msgid "Pitcairn" #~ msgstr "Pitcairn" #~ msgid "Poland" #~ msgstr "Polonia" #~ msgid "Portugal" #~ msgstr "Portugal" #~ msgid "Puerto Rico" #~ msgstr "Puerto Rico" #~ msgid "Qatar" #~ msgstr "Qatar" #~ msgid "Reunion" #~ msgstr "Reunión" #~ msgid "Romania" #~ msgstr "Rumanía" #~ msgid "Russian Federation" #~ msgstr "Federación Rusa" #~ msgid "Rwanda" #~ msgstr "Ruanda" #~ msgid "Saint Helena" #~ msgstr "Santa Elena" #~ msgid "Saint Kitts and Nevis" #~ msgstr "San Cristóbal y Nieves" #~ msgid "Saint Lucia" #~ msgstr "Santa Lucía" #~ msgid "Saint Pierre and Miquelon" #~ msgstr "San Pedro y Miquelón" #~ msgid "Saint Vincent and the Grenadines" #~ msgstr "San Vicente y las Granadinas" #~ msgid "Samoa" #~ msgstr "Samoa" #~ msgid "San Marino" #~ msgstr "San Marino" #~ msgid "Sao Tome and Principe" #~ msgstr "Santo Tomé y Príncipe" #~ msgid "Saudi Arabia" #~ msgstr "Arabia Saudí" #~ msgid "Senegal" #~ msgstr "Senegal" #~ msgid "Serbia and Montenegro" #~ msgstr "Serbia y Montenegro" #~ msgid "Seychelles" #~ msgstr "Seychelles" #~ msgid "Sierra Leone" #~ msgstr "Sierra Leona" #~ msgid "Slovakia" #~ msgstr "Eslovaquia" #~ msgid "Slovenia" #~ msgstr "Eslovenia" #~ msgid "Solomon Islands" #~ msgstr "Islas Salomón" #~ msgid "Somalia" #~ msgstr "Somalia" #~ msgid "South Africa" #~ msgstr "Sudáfrica" #~ msgid "South Georgia and the South Sandwich Islands" #~ msgstr "Georgia del sur e Islas Sandwich del sur" #~ msgid "Spain" #~ msgstr "España" #~ msgid "Sri Lanka" #~ msgstr "Sri Lanka" #~ msgid "Sudan" #~ msgstr "Sudán" #~ msgid "Suriname" #~ msgstr "Surinam" #~ msgid "Svalbard and Jan Mayen" #~ msgstr "Svalbard y Jan Mayen" #~ msgid "Swaziland" #~ msgstr "Suazilandia" #~ msgid "Sweden" #~ msgstr "Suecia" #~ msgid "Switzerland" #~ msgstr "Suiza" #~ msgid "Syrian Arab Republic" #~ msgstr "República árabe de Siria" #~ msgid "Taiwan, Province of China" #~ msgstr "Taiwán, Provincia de China" #~ msgid "Tajikistan" #~ msgstr "Tayikistán" #~ msgid "Tanzania, United Republic of" #~ msgstr "Tanzania, República Unida de" #~ msgid "Thailand" #~ msgstr "Tailandia" #~ msgid "Timor-Leste" #~ msgstr "Timor Oriental" #~ msgid "Togo" #~ msgstr "Togo" #~ msgid "Tokelau" #~ msgstr "Tokelau" #~ msgid "Tonga" #~ msgstr "Tonga" #~ msgid "Trinidad and Tobago" #~ msgstr "Trinidad y Tobago" #~ msgid "Tunisia" #~ msgstr "Túnez" #~ msgid "Turkey" #~ msgstr "Turquía" #~ msgid "Turkmenistan" #~ msgstr "Turkmenistán" #~ msgid "Turks and Caicos Islands" #~ msgstr "Islas Turks y Caicos" #~ msgid "Tuvalu" #~ msgstr "Tuvalu" #~ msgid "Uganda" #~ msgstr "Uganda" #~ msgid "Ukraine" #~ msgstr "Ucrania" #~ msgid "United Arab Emirates" #~ msgstr "Emiratos Árabes Unidos" #~ msgid "United Kingdom" #~ msgstr "Reino Unido" #~ msgid "United States Minor Outlying Islands" #~ msgstr "Estados Unidos, Islas menores exteriores de" #~ msgid "Uruguay" #~ msgstr "Uruguay" #~ msgid "Uzbekistan" #~ msgstr "Uzbekistán" #~ msgid "Vanuatu" #~ msgstr "Vanuatu" #~ msgid "Venezuela" #~ msgstr "Venezuela" #~ msgid "Virgin Islands, British" #~ msgstr "Islas Vírgenes británicas" #~ msgid "Virgin Islands, U.S." #~ msgstr "Islas Vírgenes estadounidenses" #~ msgid "Wallis and Futuna" #~ msgstr "Wallis y Futuna" #~ msgid "Western Sahara" #~ msgstr "Sahara Occidental" #~ msgid "Yemen" #~ msgstr "Yemen" #~ msgid "Zambia" #~ msgstr "Zambia" #~ msgid "Zimbabwe" #~ msgstr "Zimbabue" #~ msgid "CA Root database file\n" #~ msgstr "Fichero de base de datos de la AC\n" #~ msgid "CA database file" #~ msgstr "Fichero de base de datos de la AC" #~ msgid "..." #~ msgstr "..." gnomint-1.3.0/po/pt_BR.po0000664000175000017500000022320712672052326012110 00000000000000# Brazilian Portuguese translation for gnomint # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the gnomint package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: gnomint\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-06-03 23:09+0200\n" "PO-Revision-Date: 2009-06-03 22:30+0000\n" "Last-Translator: Enrico Nicoletto \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-08-11 09:00+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "Exportação automática de certificados para o gnome-keyring" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "Visibilidade de pedidos de certificado" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "Visibilidade de certificados revogados" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" "O tamanho (largura, comprimento) que o gnoMint deve ficar ao iniciar. Isto " "não pode ser menor que (320,200)." #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "Se os pedidos de certificado devem ser visíveis." #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" "Se os certificados criados ou importados são automaticamente exportados para " "o armazém de certificado do gnome-keyring." #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "Se os certificados revogados devem ser visíveis." #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "Tamanho da janela" #: ../gui/gnomint.glade.h:1 msgid " " msgstr " " #: ../gui/gnomint.glade.h:2 msgid "CSR subject" msgstr "assunto CSR" #: ../gui/gnomint.glade.h:3 msgid "Certificate fields" msgstr "Campos do certificado" #: ../gui/gnomint.glade.h:4 msgid "Certificate hierarchy" msgstr "Hierarquia do certificado" #: ../gui/gnomint.glade.h:5 msgid "Certificate purposes" msgstr "Objetivos do certificado" #: ../gui/gnomint.glade.h:6 msgid "Certificate subject" msgstr "Assunto do certificado" #: ../gui/gnomint.glade.h:7 msgid "Certificate uses" msgstr "Usos do certificado" #: ../gui/gnomint.glade.h:8 msgid "Emmited by" msgstr "Emitido por" #: ../gui/gnomint.glade.h:9 msgid "Fingerprints" msgstr "Impressões digitais" #: ../gui/gnomint.glade.h:10 msgid "Inherited fields from CA subject" msgstr "Campos herdados do assunto de CA" #: ../gui/gnomint.glade.h:11 msgid "Purposes of new generated certificates" msgstr "Objetivos dos novos certificados gerados" #: ../gui/gnomint.glade.h:12 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in the internal database." msgstr "" "Este Pedido de Assinatura de Certificado possui a sua chave privada " "correspondente salva na base de dados interna." #: ../gui/gnomint.glade.h:13 msgid "This certificate has been verified for the following uses:" msgstr "Este certificado foi validado para os seguintes usos:" #: ../gui/gnomint.glade.h:14 msgid "Uses of new generated certificates" msgstr "Usos dos novos certificados gerados" #: ../gui/gnomint.glade.h:15 msgid "Validity" msgstr "Validade" #: ../gui/gnomint.glade.h:16 msgid "New Certificate Revocation List" msgstr "Nova Lista de Certificados Revogados" #: ../gui/gnomint.glade.h:17 msgid "CA Properties\n" msgstr "Propriedades da CA\n" #: ../gui/gnomint.glade.h:19 msgid "CA Root certificate properties\n" msgstr "" #: ../gui/gnomint.glade.h:21 msgid "Certificate Request Properties\n" msgstr "Propriedades de Pedidos de Certificado\n" #: ../gui/gnomint.glade.h:23 msgid "" "Choose private key file\n" "\n" "For doing the selected operation, you must provide the file where resides " "the private key corresponding to the certificate:" msgstr "" "Escolher arquivo de chave privada\n" "\n" "Para realizar a operação selecionada, você deve fornecer o arquivo onde " "reside a chave privada correspondente ao certificado:" #: ../gui/gnomint.glade.h:26 msgid "New Certificate Properties\n" msgstr "Propriedades do Novo Certificado\n" #: ../gui/gnomint.glade.h:28 msgid "Password protection\n" msgstr "Proteção com senha\n" #: ../gui/gnomint.glade.h:30 msgid "" "Export both (private and public) parts to a password-protected PKCS#12 " "file. This kind of file can be imported by other common programs, such as " "web or mail clients." msgstr "" #: ../gui/gnomint.glade.h:31 msgid "Export only the certificate to a public file, in PEM format." msgstr "" #: ../gui/gnomint.glade.h:32 msgid "" "Export the saved private key to a PEM file. This option should only be " "used for exporting certificates that will be used in unattended servers." msgstr "" #: ../gui/gnomint.glade.h:33 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the certificate." msgstr "" #: ../gui/gnomint.glade.h:34 msgid "" "Import a directory containing the structure of\n" "a whole CA made with OpenSSL ." msgstr "" #: ../gui/gnomint.glade.h:36 msgid "" "Import a single file, encoded in DER or PEM format, containing " "certificates, private keys (encrypted or plain), signing requests (CSRs), " "revocation lists (CRLs) or PKCS#12 packages." msgstr "" #: ../gui/gnomint.glade.h:37 msgid "" "\n" "It is recommended that all the certificates generated by a CA share the same " "properties.\n" "If you want to generate certificates with different properties, you should " "create a hierarchy of CAs, each one with its own policy for certificate " "generation.\n" "\n" "Please, define the maximum set of properties for the certificates that this " "CA will be able to generate:\n" msgstr "" #: ../gui/gnomint.glade.h:43 msgid "#Description#" msgstr "" #: ../gui/gnomint.glade.h:44 msgid "" "PKCS#3 files containing Diffie·Hellman parameters are used by " "some cryptographic \n" "applications for a secure interchange of their keys over insecure " "channels." msgstr "" #: ../gui/gnomint.glade.h:46 msgid "" "The part that is being imported has the description:" msgstr "" #: ../gui/gnomint.glade.h:47 msgid "" "The subject of the new certificate request can inherit information " "from one of the existing Certification Authorities. This is a must if the " "policy of the CA you are going to use is defined to force some fields of a " "certificate subject to be the same as the ones in the CA cert " "subject." msgstr "" #: ../gui/gnomint.glade.h:48 msgid "Activated on" msgstr "" #: ../gui/gnomint.glade.h:49 msgid "Add CSR" msgstr "" #: ../gui/gnomint.glade.h:50 msgid "Add _Certificate Request" msgstr "" #: ../gui/gnomint.glade.h:51 msgid "Add a new Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:52 msgid "Add an autosigned CA" msgstr "" #: ../gui/gnomint.glade.h:53 msgid "Add autosigned CA certificate" msgstr "" #: ../gui/gnomint.glade.h:54 ../src/certificate_properties.c:1130 #: ../src/tls.c:1082 msgid "Any purpose" msgstr "" #: ../gui/gnomint.glade.h:55 msgid "" "Automatically export created certificates to \n" "Gnome-keyring certificate store" msgstr "" #: ../gui/gnomint.glade.h:57 msgid "Both parts." msgstr "" #: ../gui/gnomint.glade.h:58 msgid "CA Policy" msgstr "" #: ../gui/gnomint.glade.h:59 msgid "" "CA Root Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:61 msgid "CA properties" msgstr "" #: ../gui/gnomint.glade.h:62 msgid "CACN" msgstr "" #: ../gui/gnomint.glade.h:63 msgid "CAO" msgstr "" #: ../gui/gnomint.glade.h:64 msgid "CAOU" msgstr "" #: ../gui/gnomint.glade.h:65 ../src/certificate_properties.c:358 #: ../src/tls.c:1056 msgid "CRL signing" msgstr "" #: ../gui/gnomint.glade.h:66 msgid "CSR properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:67 msgid "CertActivationDate" msgstr "" #: ../gui/gnomint.glade.h:68 msgid "CertExpirationDate" msgstr "" #: ../gui/gnomint.glade.h:69 msgid "CertSN" msgstr "" #: ../gui/gnomint.glade.h:70 msgid "" "Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:72 msgid "Certificate DN" msgstr "" #: ../gui/gnomint.glade.h:73 msgid "Certificate _Signing Requests" msgstr "" #: ../gui/gnomint.glade.h:74 msgid "Certificate properties" msgstr "" #: ../gui/gnomint.glade.h:75 msgid "Certificate properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:76 ../src/tls.c:1039 msgid "Certification Authority" msgstr "" #: ../gui/gnomint.glade.h:77 msgid "Change database pass_word" msgstr "" #: ../gui/gnomint.glade.h:78 msgid "Choose CA for signing the CSR" msgstr "" #: ../gui/gnomint.glade.h:79 msgid "Choose private key file. gnoMint" msgstr "" #: ../gui/gnomint.glade.h:80 msgid "City" msgstr "" #: ../gui/gnomint.glade.h:81 msgid "City: " msgstr "" #: ../gui/gnomint.glade.h:82 ../src/certificate_properties.c:1126 #: ../src/tls.c:1074 msgid "Code signing" msgstr "" #: ../gui/gnomint.glade.h:83 msgid "Common Name (CN)" msgstr "" #: ../gui/gnomint.glade.h:84 msgid "Country" msgstr "" #: ../gui/gnomint.glade.h:85 msgid "Country:" msgstr "" #: ../gui/gnomint.glade.h:86 msgid "Create a new database" msgstr "" #: ../gui/gnomint.glade.h:87 msgid "Creating CA Root Certificate" msgstr "" #: ../gui/gnomint.glade.h:88 msgid "Creating new CA - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:89 msgid "DSA" msgstr "" #: ../gui/gnomint.glade.h:90 ../src/certificate_properties.c:352 #: ../src/tls.c:1050 msgid "Data encipherment" msgstr "" #: ../gui/gnomint.glade.h:91 msgid "Database password protection - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:92 msgid "Delete the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:93 msgid "Details" msgstr "" #: ../gui/gnomint.glade.h:94 ../src/certificate_properties.c:346 #: ../src/tls.c:1044 msgid "Digital signature" msgstr "" #: ../gui/gnomint.glade.h:95 msgid "Don't inherit any fields from existing Certification Authorities" msgstr "" #: ../gui/gnomint.glade.h:96 msgid "E_xport" msgstr "" #: ../gui/gnomint.glade.h:97 ../src/certificate_properties.c:1127 #: ../src/tls.c:1076 msgid "Email protection" msgstr "" #: ../gui/gnomint.glade.h:98 msgid "" "Enter new password again \n" "for confirmation:" msgstr "" #: ../gui/gnomint.glade.h:100 msgid "Enter password - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:101 msgid "Enter password again for confirmation:" msgstr "" #: ../gui/gnomint.glade.h:102 msgid "Expires on" msgstr "" #: ../gui/gnomint.glade.h:103 msgid "Export certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:104 msgid "Export options" msgstr "" #: ../gui/gnomint.glade.h:105 msgid "Exports the CSR so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:106 msgid "" "Exports the certificate so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:107 msgid "Extrac_t private key" msgstr "" #: ../gui/gnomint.glade.h:108 msgid "Extract Private Key" msgstr "" #: ../gui/gnomint.glade.h:109 msgid "Extract the private key of the selected item into a external file" msgstr "" #: ../gui/gnomint.glade.h:110 msgid "Extract the saved private key to an external file or device" msgstr "" #: ../gui/gnomint.glade.h:111 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the CSR will be used" msgstr "" #: ../gui/gnomint.glade.h:115 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the certificate will be used" msgstr "" #: ../gui/gnomint.glade.h:119 msgid "General" msgstr "" #: ../gui/gnomint.glade.h:120 msgid "General Preferences - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:121 msgid "Generate D_H parameters..." msgstr "" #: ../gui/gnomint.glade.h:122 msgid "Generate _CRL" msgstr "" #: ../gui/gnomint.glade.h:123 msgid "Generate the current Certificate Revocation List" msgstr "" #: ../gui/gnomint.glade.h:124 msgid "Hours between CRL updates:" msgstr "" #: ../gui/gnomint.glade.h:125 msgid "Import a single file." msgstr "" #: ../gui/gnomint.glade.h:126 msgid "Import a whole directory." msgstr "" #: ../gui/gnomint.glade.h:127 msgid "Import selection - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:128 msgid "" "Inherit fields according to selected Certification Authority and its policy." msgstr "" #: ../gui/gnomint.glade.h:129 ../src/certificate_properties.c:354 #: ../src/tls.c:1052 msgid "Key agreement" msgstr "" #: ../gui/gnomint.glade.h:130 ../src/certificate_properties.c:350 #: ../src/tls.c:1048 msgid "Key encipherment" msgstr "" #: ../gui/gnomint.glade.h:131 msgid "MD5 fingerprint" msgstr "" #: ../gui/gnomint.glade.h:132 msgid "MD5FINGERPRINT" msgstr "" #: ../gui/gnomint.glade.h:133 msgid "" "Maximum number of months before expiration of the new generated certificates:" msgstr "" #: ../gui/gnomint.glade.h:134 msgid "Months before certificate expiration:" msgstr "" #: ../gui/gnomint.glade.h:135 msgid "Months before root certificate expiration:" msgstr "" #: ../gui/gnomint.glade.h:136 msgid "New CA - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:137 msgid "New CRL - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:138 msgid "New Certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:139 msgid "New Diffie-Hellman parameters - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:140 msgid "" "New certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:142 msgid "New certificate request - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:143 ../src/certificate_properties.c:348 #: ../src/tls.c:1046 msgid "Non repudiation" msgstr "" #: ../gui/gnomint.glade.h:144 ../src/certificate_properties.c:1129 #: ../src/tls.c:1080 msgid "OCSP signing" msgstr "" #: ../gui/gnomint.glade.h:145 msgid "Only the private key (crypted)." msgstr "" #: ../gui/gnomint.glade.h:146 msgid "Only the private key (uncrypted)." msgstr "" #: ../gui/gnomint.glade.h:147 msgid "Only the pu_blic part." msgstr "" #: ../gui/gnomint.glade.h:148 msgid "Open _recents" msgstr "" #: ../gui/gnomint.glade.h:149 msgid "Open an existing database" msgstr "" #: ../gui/gnomint.glade.h:150 msgid "Organization" msgstr "" #: ../gui/gnomint.glade.h:151 msgid "Organization (O)" msgstr "" #: ../gui/gnomint.glade.h:152 msgid "Organization Unit:" msgstr "" #: ../gui/gnomint.glade.h:153 msgid "Organization:" msgstr "" #: ../gui/gnomint.glade.h:154 msgid "Organizational Unit (OU)" msgstr "" #: ../gui/gnomint.glade.h:155 msgid "Organizational unit" msgstr "" #: ../gui/gnomint.glade.h:156 msgid "Password (confirm):" msgstr "" #: ../gui/gnomint.glade.h:157 msgid "Password protect" msgstr "" #: ../gui/gnomint.glade.h:158 msgid "Password:" msgstr "" #: ../gui/gnomint.glade.h:159 msgid "Please, choose the file:" msgstr "" #: ../gui/gnomint.glade.h:160 msgid "Please, choose the more suitable option for what you want to import:" msgstr "" #: ../gui/gnomint.glade.h:161 msgid "" "Please, choose which part of the saved certificate you want to export:" msgstr "" #: ../gui/gnomint.glade.h:162 msgid "" "Please, enter current\n" "password:" msgstr "" #: ../gui/gnomint.glade.h:164 msgid "" "Please, enter new \n" "password:" msgstr "" #: ../gui/gnomint.glade.h:166 msgid "Please, enter password" msgstr "" #: ../gui/gnomint.glade.h:167 msgid "Please, enter password:" msgstr "" #: ../gui/gnomint.glade.h:168 msgid "Please, enter the prime size, in bits:" msgstr "" #: ../gui/gnomint.glade.h:169 msgid "" "Please, select the CA for which a Certificate \n" "Revocation List is going to be created:" msgstr "" #: ../gui/gnomint.glade.h:171 msgid "Private key bit length:" msgstr "" #: ../gui/gnomint.glade.h:172 msgid "Private key type:" msgstr "" #: ../gui/gnomint.glade.h:173 msgid "" "Protect CA database private \n" "keys with password:" msgstr "" #: ../gui/gnomint.glade.h:175 msgid "" "Protect CA database private keys\n" "with password:" msgstr "" #: ../gui/gnomint.glade.h:177 msgid "RSA" msgstr "" #: ../gui/gnomint.glade.h:178 msgid "Remember this password during this gnoMint session" msgstr "" #: ../gui/gnomint.glade.h:179 msgid "Revo_ke" msgstr "" #: ../gui/gnomint.glade.h:180 msgid "Revoke" msgstr "" #: ../gui/gnomint.glade.h:181 msgid "Revoke the selected certificate" msgstr "" #: ../gui/gnomint.glade.h:182 msgid "Revokes the selected certificate" msgstr "" #: ../gui/gnomint.glade.h:183 msgid "Root certificate prop" msgstr "" #: ../gui/gnomint.glade.h:184 msgid "SHA1 fingerprint" msgstr "" #: ../gui/gnomint.glade.h:185 msgid "SHA1FINGERPRINT" msgstr "" #: ../gui/gnomint.glade.h:186 msgid "Serial number" msgstr "" #: ../gui/gnomint.glade.h:187 msgid "Shows the CSR properties window" msgstr "" #: ../gui/gnomint.glade.h:188 msgid "Shows the certificate properties window" msgstr "" #: ../gui/gnomint.glade.h:189 msgid "Sign" msgstr "" #: ../gui/gnomint.glade.h:190 msgid "Sign the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:191 msgid "State or Province name" msgstr "" #: ../gui/gnomint.glade.h:192 msgid "State or Province name: " msgstr "" #: ../gui/gnomint.glade.h:193 msgid "SubjectCN" msgstr "" #: ../gui/gnomint.glade.h:194 msgid "SubjectO" msgstr "" #: ../gui/gnomint.glade.h:195 msgid "SubjectOU" msgstr "" #: ../gui/gnomint.glade.h:196 msgid "TLS Web client" msgstr "" #: ../gui/gnomint.glade.h:197 msgid "TLS Web server" msgstr "" #: ../gui/gnomint.glade.h:198 msgid "" "The whole selected file, or some of its elements, seems to be cyphered using " "a password or passphrase.\n" "\n" "For importing the file into gnoMint database, you must provide an appropiate " "password." msgstr "" #: ../gui/gnomint.glade.h:201 msgid "" "This action requires using one or more private keys saved in the CA " "database.\n" "\n" "Please insert the database password." msgstr "" #: ../gui/gnomint.glade.h:204 ../src/certificate_properties.c:1128 #: ../src/tls.c:1078 msgid "Time stamping" msgstr "" #: ../gui/gnomint.glade.h:205 msgid "" "You are about to create and export a set of Diffie·Hellman parameters " "into a PKCS#3 structure file." msgstr "" #: ../gui/gnomint.glade.h:206 msgid "" "You are about to sign a Certificate Signing Request, and this way, creating " "a new certificate. Please check the certificate properties." msgstr "" #: ../gui/gnomint.glade.h:207 msgid "" "You are about to sign a Certificate Signing Request. Please, choose the " "Certification Authority you are going to use for signing it." msgstr "" #: ../gui/gnomint.glade.h:208 msgid "_Add self-signed CA" msgstr "" #: ../gui/gnomint.glade.h:209 msgid "_Certificates" msgstr "" #: ../gui/gnomint.glade.h:210 msgid "_Edit" msgstr "" #: ../gui/gnomint.glade.h:211 msgid "_Help" msgstr "" #: ../gui/gnomint.glade.h:212 msgid "_Import" msgstr "" #: ../gui/gnomint.glade.h:213 msgid "_New certificate database" msgstr "" #: ../gui/gnomint.glade.h:214 msgid "_No" msgstr "" #: ../gui/gnomint.glade.h:215 msgid "_Open certificate database" msgstr "" #: ../gui/gnomint.glade.h:216 msgid "_Revoked Certificates" msgstr "" #: ../gui/gnomint.glade.h:217 msgid "_Save certificate database as..." msgstr "" #: ../gui/gnomint.glade.h:218 msgid "_Save filename in the database for automatic loading" msgstr "" #: ../gui/gnomint.glade.h:219 msgid "_Sign" msgstr "" #: ../gui/gnomint.glade.h:220 msgid "_View" msgstr "" #: ../gui/gnomint.glade.h:221 msgid "_Yes" msgstr "" #: ../gui/gnomint.glade.h:222 msgid "gnoMint" msgstr "" #: ../gui/gnomint.glade.h:223 msgid "gtk-cancel" msgstr "" #: ../gui/gnomint.glade.h:224 msgid "gtk-ok" msgstr "" #: ../gui/gnomint.glade.h:225 msgid "label" msgstr "" #: ../gui/gnomint.glade.h:226 msgid "may differ" msgstr "" #: ../gui/gnomint.glade.h:227 msgid "must be the same" msgstr "" #: ../gui/gnomint.glade.h:228 msgid "page 3" msgstr "" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "" #: ../src/ca.c:147 msgid "Certificates" msgstr "" #: ../src/ca.c:263 msgid "Certificate Signing Requests" msgstr "" #: ../src/ca.c:304 ../src/ca-cli-callbacks.c:168 ../src/ca-cli-callbacks.c:178 #: ../src/ca-cli-callbacks.c:189 ../src/ca-cli-callbacks.c:547 #: ../src/ca-cli-callbacks.c:551 ../src/ca-cli-callbacks.c:1162 #: ../src/ca-cli-callbacks.c:1166 ../src/certificate_properties.c:178 #: ../src/certificate_properties.c:183 msgid "%m/%d/%Y %R GMT" msgstr "" #: ../src/ca.c:448 ../src/certificate_properties.c:531 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "" #: ../src/ca.c:483 msgid "Serial" msgstr "" #: ../src/ca.c:490 msgid "Activation" msgstr "" #: ../src/ca.c:497 msgid "Expiration" msgstr "" #: ../src/ca.c:504 msgid "Revocation" msgstr "" #: ../src/ca.c:791 msgid "Export certificate" msgstr "" #: ../src/ca.c:798 msgid "Export certificate signing request" msgstr "" #: ../src/ca.c:813 ../src/ca.c:849 ../src/ca.c:859 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "" #: ../src/ca.c:815 ../src/ca.c:851 ../src/ca.c:861 msgid "There was an error while exporting CSR." msgstr "" #: ../src/ca.c:874 ../src/ca.c:1040 msgid "Certificate exported successfully" msgstr "" #: ../src/ca.c:881 msgid "Certificate signing request exported successfully" msgstr "" #: ../src/ca.c:900 msgid "Export crypted private key" msgstr "" #: ../src/ca.c:929 ../src/ca.c:981 msgid "Private key exported successfully" msgstr "" #: ../src/ca.c:951 msgid "Export uncrypted private key" msgstr "" #: ../src/ca.c:1002 msgid "Export whole certificate in PKCS#12 package" msgstr "" #: ../src/ca.c:1073 msgid "Export CSR - gnoMint" msgstr "" #: ../src/ca.c:1078 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" #: ../src/ca.c:1083 msgid "" "Export the Certificate Signing Request to a public file, in PEM " "format." msgstr "" #: ../src/ca.c:1088 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" #: ../src/ca.c:1146 msgid "Unexpected error" msgstr "" #: ../src/ca.c:1196 msgid "Are you sure you want to revoke this certificate?" msgstr "" #: ../src/ca.c:1235 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "" #: ../src/ca.c:1512 msgid "Change CA password - gnoMint" msgstr "" #: ../src/ca.c:1530 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" #: ../src/ca.c:1545 msgid "Error while changing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1554 msgid "Password changed successfully" msgstr "" #: ../src/ca.c:1564 ../src/ca-cli-callbacks.c:1002 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1574 msgid "Password established successfully" msgstr "" #: ../src/ca.c:1584 msgid "Error while removing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1593 msgid "Password removed successfully" msgstr "" #: ../src/ca.c:1731 msgid "Save Diffie-Hellman parameters" msgstr "" #: ../src/ca.c:1757 msgid "Diffie-Hellman parameters saved successfully" msgstr "" #. Import single file #: ../src/ca.c:1826 msgid "Select PEM file to import" msgstr "" #: ../src/ca.c:1847 #, c-format msgid "Problem when importing '%s' file" msgstr "" #: ../src/ca.c:1860 msgid "Select directory to import" msgstr "" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "" #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "" #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "" #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "" #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "" #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "" #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "" #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "" #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "" #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "" #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "" #: ../src/ca-cli.c:55 msgid "" "Generate a new CRL for the given CA, saving it into the file " msgstr "" #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "" #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "" #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "" #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "" #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "" #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "" #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "" #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "" #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "" #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "" #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr "" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr "" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "" #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:638 msgid "Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:140 #, c-format msgid "CertList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:143 msgid "CertList IsCA|Y\t" msgstr "" #: ../src/ca-cli-callbacks.c:145 msgid "CertList IsCA|N\t" msgstr "" #: ../src/ca-cli-callbacks.c:150 #, c-format msgid "CertList Subject|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:153 msgid "CertList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:155 msgid "CertList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:158 msgid "CertList PKeyInDB|Y\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:160 msgid "CertList PKeyInDB|N\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:164 msgid "CertList Activation|\t" msgstr "" #: ../src/ca-cli-callbacks.c:169 #, c-format msgid "CertList Activation|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:174 msgid "CertList Expiration|\t" msgstr "" #: ../src/ca-cli-callbacks.c:179 #, c-format msgid "CertList Expiration|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:185 msgid "CertList Revocation|\n" msgstr "" #: ../src/ca-cli-callbacks.c:190 #, c-format msgid "CertList Revocation|%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:207 #, c-format msgid "Certificates in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:208 #, c-format msgid "" "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "" #: ../src/ca-cli-callbacks.c:211 #, c-format msgid "\t\tRevocation\n" msgstr "" #: ../src/ca-cli-callbacks.c:221 #, c-format msgid "CsrList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "CsrList ParentID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 msgid "CsrList ParentID|\t" msgstr "" #: ../src/ca-cli-callbacks.c:228 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "" #: ../src/ca-cli-callbacks.c:231 msgid "CsrList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:233 msgid "CsrList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:236 msgid "CsrList PKeyInDB|Y\n" msgstr "" #: ../src/ca-cli-callbacks.c:238 msgid "CsrList PKeyInDB|N\n" msgstr "" #: ../src/ca-cli-callbacks.c:246 #, c-format msgid "Certificate Requests in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:247 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "" #: ../src/ca-cli-callbacks.c:275 ../src/ca-cli-callbacks.c:945 #: ../src/ca-cli-callbacks.c:1310 ../src/ca-cli-callbacks.c:1339 msgid "The given CA id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:328 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:330 ../src/ca-cli-callbacks.c:453 msgid "Enter country (C)" msgstr "" #: ../src/ca-cli-callbacks.c:336 ../src/ca-cli-callbacks.c:459 msgid "Enter state or province (ST)" msgstr "" #: ../src/ca-cli-callbacks.c:342 ../src/ca-cli-callbacks.c:465 msgid "Enter locality or city (L)" msgstr "" #: ../src/ca-cli-callbacks.c:348 ../src/ca-cli-callbacks.c:471 msgid "Enter organization (O)" msgstr "" #: ../src/ca-cli-callbacks.c:354 ../src/ca-cli-callbacks.c:477 msgid "Enter organizational unit (OU)" msgstr "" #: ../src/ca-cli-callbacks.c:360 ../src/ca-cli-callbacks.c:483 msgid "Enter common name (CN)" msgstr "" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:493 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "" #: ../src/ca-cli-callbacks.c:382 ../src/ca-cli-callbacks.c:505 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "" #: ../src/ca-cli-callbacks.c:386 #, c-format msgid "These are the provided CSR properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:388 ../src/ca-cli-callbacks.c:526 #: ../src/ca-cli-callbacks.c:1152 ../src/ca-cli-callbacks.c:1204 #, c-format msgid "Subject:\n" msgstr "" #: ../src/ca-cli-callbacks.c:389 ../src/ca-cli-callbacks.c:527 #, c-format msgid "\tDistinguished Name: " msgstr "" #: ../src/ca-cli-callbacks.c:403 ../src/ca-cli-callbacks.c:541 #, c-format msgid "Key pair\n" msgstr "" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:542 #, c-format msgid "\tType: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:543 #, c-format msgid "\tKey bitlength: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:407 ../src/ca-cli-callbacks.c:554 msgid "Do you want to change anything? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:411 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:412 ../src/ca-cli-callbacks.c:559 msgid "Are you sure? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:417 ../src/ca-cli-callbacks.c:564 #: ../src/ca-cli-callbacks.c:648 ../src/ca-cli-callbacks.c:779 #: ../src/ca-cli-callbacks.c:902 ../src/ca-cli-callbacks.c:931 #: ../src/ca-cli-callbacks.c:997 ../src/ca-cli-callbacks.c:1024 #: ../src/ca-cli-callbacks.c:1052 ../src/ca-cli-callbacks.c:1067 #: ../src/ca-cli-callbacks.c:1369 ../src/ca-cli-callbacks.c:1412 #, c-format msgid "Operation cancelled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:451 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "" #: ../src/ca-cli-callbacks.c:510 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" #: ../src/ca-cli-callbacks.c:524 #, c-format msgid "These are the provided new CA properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:544 #, c-format msgid "Validity\n" msgstr "" #: ../src/ca-cli-callbacks.c:545 ../src/ca-cli-callbacks.c:1160 #, c-format msgid "Validity:\n" msgstr "" #: ../src/ca-cli-callbacks.c:548 ../src/ca-cli-callbacks.c:1163 #, c-format msgid "\tActivated on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:552 ../src/ca-cli-callbacks.c:1167 #, c-format msgid "\tExpires on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:558 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:632 #: ../src/ca-cli-callbacks.c:1137 msgid "The given certificate id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:591 ../src/ca-cli-callbacks.c:615 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:608 ../src/ca-cli-callbacks.c:760 #: ../src/ca-cli-callbacks.c:915 ../src/ca-cli-callbacks.c:1193 msgid "The given CSR id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:638 msgid "This certificate will be revoked." msgstr "" #: ../src/ca-cli-callbacks.c:644 #, c-format msgid "Certificate revoked.\n" msgstr "" #: ../src/ca-cli-callbacks.c:658 ../src/ca-cli-callbacks.c:1174 #, c-format msgid "Certificate uses:\n" msgstr "" #: ../src/ca-cli-callbacks.c:661 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:663 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:667 #, c-format msgid "* CRL signing use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:669 #, c-format msgid "* CRL signing use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:673 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:675 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:679 ../src/ca-cli-callbacks.c:681 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:685 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:687 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:691 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:693 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:697 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:699 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:702 #, c-format msgid "Certificate purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:705 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:707 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:711 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:713 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:717 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:719 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:723 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:725 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:729 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:731 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:735 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:737 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:741 #, c-format msgid "* Any purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:743 #, c-format msgid "* Any purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:767 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:769 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "" #: ../src/ca-cli-callbacks.c:772 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" #: ../src/ca-cli-callbacks.c:782 #, c-format msgid "" "The certificate will be generated with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:800 ../src/ca-cli-callbacks.c:888 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:803 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:806 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:808 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:812 msgid "* Enable CRL Signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:814 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:818 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:820 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:824 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:826 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:830 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:832 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:836 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:838 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:842 msgid "Enable Key Agreement use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:844 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:848 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:850 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:854 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:856 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:860 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:862 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:866 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:868 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:872 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:874 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:878 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:883 msgid "Enable any purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:899 #, c-format msgid "Certificate signed.\n" msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This Certificate Signing Request will be deleted." msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:927 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "" #: ../src/ca-cli-callbacks.c:952 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:969 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "" #: ../src/ca-cli-callbacks.c:978 #, c-format msgid "" "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Currently, the database is not password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Do you want to password protect it? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:991 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password:" msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:995 ../src/ca-cli-callbacks.c:1065 msgid "The introduced passwords are distinct." msgstr "" #: ../src/ca-cli-callbacks.c:1006 #, c-format msgid "Password established successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Nothing done.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Currently, the database IS password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:1021 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1022 ../src/ca-cli-callbacks.c:1050 msgid "Please, insert the current database password (Empty to cancel): " msgstr "" #: ../src/ca-cli-callbacks.c:1029 ../src/ca-cli-callbacks.c:1057 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" #: ../src/ca-cli-callbacks.c:1034 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1039 #, c-format msgid "Password removed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1049 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1061 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password:" msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:1073 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1079 #, c-format msgid "Password changed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1097 msgid "Problem when importing the given file." msgstr "" #: ../src/ca-cli-callbacks.c:1100 #, c-format msgid "File imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1116 #, c-format msgid "Directory imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1145 #, c-format msgid "Certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1149 #, c-format msgid "\tSerial number: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1157 #: ../src/ca-cli-callbacks.c:1205 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1154 #: ../src/ca-cli-callbacks.c:1157 ../src/ca-cli-callbacks.c:1158 msgid "None." msgstr "" #: ../src/ca-cli-callbacks.c:1154 ../src/ca-cli-callbacks.c:1158 #: ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tUnique ID: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1156 #, c-format msgid "Issuer:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1169 #, c-format msgid "Fingerprints:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1170 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1171 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1202 #, c-format msgid "Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1275 msgid "Generated certs inherit Country from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1276 msgid "Generated certs inherit State from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1277 msgid "Generated certs inherit Locality from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1278 msgid "Generated certs inherit Organization from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1279 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1280 msgid "Country in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1281 msgid "State in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1282 msgid "Locality in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1283 msgid "Organization in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1284 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "" #: ../src/ca-cli-callbacks.c:1285 msgid "Maximum number of hours between CRL updates " msgstr "" #: ../src/ca-cli-callbacks.c:1286 msgid "Maximum number of months before expiration of new certs " msgstr "" #: ../src/ca-cli-callbacks.c:1287 msgid "CA use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1288 msgid "CRL Sign use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1289 msgid "Non reputation use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1290 msgid "Digital signature use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1291 msgid "Key encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1292 msgid "Key agreement use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1293 msgid "Data encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1294 msgid "TLS web server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1295 msgid "TLS web client purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1296 msgid "Time stamping purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1297 msgid "Code signing server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1298 msgid "Email protection purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1299 msgid "OCSP signing purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1300 msgid "Any purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1314 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1316 #, c-format msgid "" "\n" "Policies:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1318 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1344 msgid "The given policy id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1356 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1360 ../src/ca-cli-callbacks.c:1404 msgid "Are you sure? Yes/[No] : " msgstr "" #: ../src/ca-cli-callbacks.c:1365 #, c-format msgid "Policy set correctly to '%d'.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1379 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1381 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1382 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "" #: ../src/ca-cli-callbacks.c:1394 msgid "The given preference id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1400 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1422 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1423 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1424 ../src/ca-cli-callbacks.c:1425 #: ../src/main.c:502 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " Enrico Nicoletto https://launchpad.net/~liverig" #: ../src/ca-cli-callbacks.c:1425 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1432 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1450 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1465 #, c-format msgid "%s version %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1474 #, c-format msgid "Available commands:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "===================\n" msgstr "" #: ../src/ca-cli-callbacks.c:1485 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "" #: ../src/ca_creation.c:144 msgid "CA generated successfully" msgstr "" #: ../src/ca_file.c:196 #, c-format msgid "Error opening filename '%s'" msgstr "" #: ../src/ca_file.c:299 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" #: ../src/ca_file.c:1311 msgid "Cannot find parent CA in database" msgstr "" #: ../src/ca_file.c:1499 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "" #: ../src/ca_file.c:1930 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" #: ../src/ca_file.c:1933 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" #: ../src/certificate_properties.c:356 ../src/tls.c:1054 msgid "Certificate signing" msgstr "" #: ../src/certificate_properties.c:360 msgid "Key encipherment only" msgstr "" #: ../src/certificate_properties.c:362 msgid "Key decipherment only" msgstr "" #: ../src/certificate_properties.c:376 msgid "Version" msgstr "" #: ../src/certificate_properties.c:411 msgid "Serial Number" msgstr "" #: ../src/certificate_properties.c:427 ../src/certificate_properties.c:1060 msgid "Signature" msgstr "" #: ../src/certificate_properties.c:430 ../src/certificate_properties.c:558 #: ../src/certificate_properties.c:561 ../src/certificate_properties.c:1027 msgid "Algorithm" msgstr "" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:594 ../src/certificate_properties.c:622 #: ../src/certificate_properties.c:1030 msgid "Parameters" msgstr "" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:622 ../src/certificate_properties.c:624 #: ../src/certificate_properties.c:635 ../src/certificate_properties.c:644 #: ../src/certificate_properties.c:1031 msgid "(unknown)" msgstr "" #: ../src/certificate_properties.c:465 msgid "Issuer" msgstr "" #: ../src/certificate_properties.c:493 msgid "Validity" msgstr "" #: ../src/certificate_properties.c:496 msgid "Not Before" msgstr "" #: ../src/certificate_properties.c:499 msgid "Not After" msgstr "" #: ../src/certificate_properties.c:555 msgid "Subject Public Key Info" msgstr "" #: ../src/certificate_properties.c:568 msgid "RSA PublicKey" msgstr "" #: ../src/certificate_properties.c:578 msgid "Modulus" msgstr "" #: ../src/certificate_properties.c:584 msgid "Public Exponent" msgstr "" #: ../src/certificate_properties.c:617 msgid "DSA PublicKey" msgstr "" #: ../src/certificate_properties.c:624 msgid "Subject Public Key" msgstr "" #: ../src/certificate_properties.c:635 msgid "Issuer Unique ID" msgstr "" #: ../src/certificate_properties.c:644 msgid "Subject Unique ID" msgstr "" #: ../src/certificate_properties.c:666 ../src/certificate_properties.c:689 #: ../src/certificate_properties.c:758 ../src/certificate_properties.c:862 #: ../src/certificate_properties.c:890 ../src/certificate_properties.c:930 #: ../src/certificate_properties.c:987 ../src/certificate_properties.c:1112 msgid "Value" msgstr "" #: ../src/certificate_properties.c:728 ../src/certificate_properties.c:832 msgid "DNS Name" msgstr "" #: ../src/certificate_properties.c:733 ../src/certificate_properties.c:837 msgid "RFC822 Name" msgstr "" #: ../src/certificate_properties.c:738 ../src/certificate_properties.c:842 msgid "URI" msgstr "" #: ../src/certificate_properties.c:744 msgid "IP" msgstr "" #: ../src/certificate_properties.c:751 ../src/certificate_properties.c:855 msgid "Directory Name" msgstr "" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "TRUE" msgstr "" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "FALSE" msgstr "" #: ../src/certificate_properties.c:790 msgid "CA" msgstr "" #: ../src/certificate_properties.c:794 msgid "Path Length Constraint" msgstr "" #: ../src/certificate_properties.c:848 msgid "IP Address" msgstr "" #: ../src/certificate_properties.c:963 msgid "Extensions" msgstr "" #: ../src/certificate_properties.c:972 msgid "Critical" msgstr "" #: ../src/certificate_properties.c:1000 msgid "Certificate" msgstr "" #: ../src/certificate_properties.c:1025 msgid "Signature Algorithm" msgstr "" #: ../src/certificate_properties.c:1108 msgid "Name" msgstr "" #: ../src/certificate_properties.c:1124 ../src/tls.c:1070 msgid "TLS WWW Server" msgstr "" #: ../src/certificate_properties.c:1125 msgid "TLS WWW Client" msgstr "" #: ../src/certificate_properties.c:1131 msgid "Subject Directory Attributes" msgstr "" #: ../src/certificate_properties.c:1132 msgid "Subject Key Identifier" msgstr "" #: ../src/certificate_properties.c:1133 msgid "Key Usage" msgstr "" #: ../src/certificate_properties.c:1134 msgid "Private Key Usage Period" msgstr "" #: ../src/certificate_properties.c:1135 msgid "Subject Alternative Name" msgstr "" #: ../src/certificate_properties.c:1136 msgid "Basic Constraints" msgstr "" #: ../src/certificate_properties.c:1137 msgid "Name Constraints" msgstr "" #: ../src/certificate_properties.c:1138 msgid "CRL Distribution Points" msgstr "" #: ../src/certificate_properties.c:1139 msgid "Certificate Policies" msgstr "" #: ../src/certificate_properties.c:1140 msgid "Policy Mappings" msgstr "" #: ../src/certificate_properties.c:1141 msgid "Authority Key Identifier" msgstr "" #: ../src/certificate_properties.c:1142 msgid "Policy Constraints" msgstr "" #: ../src/certificate_properties.c:1143 msgid "Extended Key Usage" msgstr "" #: ../src/certificate_properties.c:1144 msgid "Delta CRL Distribution Point" msgstr "" #: ../src/certificate_properties.c:1145 msgid "Inhibit Any-Policy" msgstr "" #: ../src/creation_process_window.c:79 msgid "CA creation process finished" msgstr "" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "" #: ../src/creation_process_window.c:274 msgid "Creating Certificate Signing Request" msgstr "" #: ../src/crl.c:250 msgid "Export Certificate Revocation List" msgstr "" #: ../src/crl.c:280 msgid "CRL generated successfully" msgstr "" #: ../src/crl.c:309 ../src/crl.c:371 ../src/crl.c:382 msgid "There was an error while exporting CRL." msgstr "" #: ../src/crl.c:320 msgid "There was an error while getting revoked certificates." msgstr "" #: ../src/crl.c:336 ../src/crl.c:355 msgid "There was an error while generating CRL." msgstr "" #: ../src/crl.c:363 msgid "There was an error while writing CRL." msgstr "" #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "" #: ../src/csr_properties.c:78 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" #: ../src/dialog.c:79 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" #: ../src/dialog.c:103 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "" #: ../src/dialog.c:104 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "" #: ../src/dialog.c:372 msgid "To do. Feature not implemented yet." msgstr "" #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "" #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "" #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "" #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "" #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "" #: ../src/export.c:110 msgid "Operation cancelled." msgstr "" #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "" #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "" #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "" #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "" #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "" #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "" #: ../src/gnomint-cli.c:59 ../src/main.c:129 #, c-format msgid "Failed to initialize: %s\n" msgstr "" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "" #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "" #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "" #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "" #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "" #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "" #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "" #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "" #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "" #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "" #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" #: ../src/main.c:126 msgid "- A graphical Certification Authority manager" msgstr "" #: ../src/main.c:285 msgid "Create new CA database" msgstr "" #: ../src/main.c:323 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" #: ../src/main.c:336 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "" #: ../src/main.c:357 msgid "Open CA database" msgstr "" #: ../src/main.c:380 ../src/main.c:420 #, c-format msgid "Problem when opening '%s' CA database" msgstr "" #: ../src/main.c:445 msgid "Save CA database as..." msgstr "" #: ../src/main.c:497 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" #: ../src/main.c:498 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" #: ../src/new_cert.c:329 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:335 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:341 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:347 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:353 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:799 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" #: ../src/new_cert.c:815 msgid "Error while signing CSR." msgstr "" #: ../src/pkey_manage.c:80 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" #: ../src/pkey_manage.c:125 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" #: ../src/pkey_manage.c:171 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:187 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:191 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" #. The file cannot be opened #: ../src/pkey_manage.c:196 msgid "The file designated in database couldn't be opened." msgstr "" #. The file doesn't exist #: ../src/pkey_manage.c:201 msgid "The file designated in database doesn't exist." msgstr "" #: ../src/pkey_manage.c:760 ../src/pkey_manage.c:811 msgid "The given password doesn't match the one used in the database" msgstr "" #: ../src/pkey_manage.c:798 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" #: ../src/pkey_manage.c:799 msgid "Please insert the database password:" msgstr "" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "" #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:553 ../src/tls.c:855 #, c-format msgid "Error exporting private key to PEM structure." msgstr "" #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "" #: ../src/tls.c:441 ../src/tls.c:689 #, c-format msgid "Error when setting certificate version" msgstr "" #: ../src/tls.c:451 ../src/tls.c:702 #, c-format msgid "Error when setting certificate serial number" msgstr "" #: ../src/tls.c:460 ../src/tls.c:711 #, c-format msgid "Error when setting activation time" msgstr "" #: ../src/tls.c:465 ../src/tls.c:719 #, c-format msgid "Error when setting expiration time" msgstr "" #: ../src/tls.c:511 ../src/tls.c:768 #, c-format msgid "Error when setting basicConstraint extension" msgstr "" #: ../src/tls.c:516 ../src/tls.c:810 #, c-format msgid "Error when setting keyUsage extension" msgstr "" #: ../src/tls.c:527 ../src/tls.c:784 #, c-format msgid "Error when setting subject key identifier extension" msgstr "" #: ../src/tls.c:531 ../src/tls.c:758 #, c-format msgid "Error when setting authority key identifier extension" msgstr "" #: ../src/tls.c:541 #, c-format msgid "Error when signing self-signed certificate" msgstr "" #: ../src/tls.c:571 #, c-format msgid "Error when initializing csr structure" msgstr "" #: ../src/tls.c:575 #, c-format msgid "Error when setting csr version" msgstr "" #: ../src/tls.c:608 #, c-format msgid "Error when signing self-signed csr" msgstr "" #: ../src/tls.c:619 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "" #: ../src/tls.c:673 #, c-format msgid "Error when initializing crt structure" msgstr "" #: ../src/tls.c:681 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "" #: ../src/tls.c:840 #, c-format msgid "Error when signing certificate" msgstr "" #: ../src/tls.c:1058 msgid "Key encipher only" msgstr "" #: ../src/tls.c:1060 msgid "Key decipher only" msgstr "" #: ../src/tls.c:1072 msgid "TLS WWW Client." msgstr "" gnomint-1.3.0/po/ru.po0000664000175000017500000040210712672052326011526 00000000000000# Russian translation for gnomint # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the gnomint package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: gnomint\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-06-03 23:09+0200\n" "PO-Revision-Date: 2009-10-12 03:55+0000\n" "Last-Translator: David Marín \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-08-11 09:00+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "Автоматический экспорт сертификатов для gnome-keyring" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "Отображение запросов сертификата" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "Отображение отозванных сертификатов" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" "Размер (ширина, длинна), который gnoMint должен принять при запуске. Не " "может быть меньше чем (320,200)." #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "Должны ли запросы сертификата быть видны" #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" "Автоматически ли экспортировать созданные или импортированные сертификаты в " "gnome-keyring хранилище сертификатов." #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "Должны ли отозванные сертификаты быть видны" #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "Размер окна" #: ../gui/gnomint.glade.h:1 msgid " " msgstr " " #: ../gui/gnomint.glade.h:2 msgid "CSR subject" msgstr "Заголовок CSR" #: ../gui/gnomint.glade.h:3 msgid "Certificate fields" msgstr "Поля сертификата" #: ../gui/gnomint.glade.h:4 msgid "Certificate hierarchy" msgstr "Иерархия сертификата" #: ../gui/gnomint.glade.h:5 msgid "Certificate purposes" msgstr "Назначение сертификата" #: ../gui/gnomint.glade.h:6 msgid "Certificate subject" msgstr "Заголовок сертификата" #: ../gui/gnomint.glade.h:7 msgid "Certificate uses" msgstr "Сертификат использует" #: ../gui/gnomint.glade.h:8 msgid "Emmited by" msgstr "Выдан" #: ../gui/gnomint.glade.h:9 msgid "Fingerprints" msgstr "Отпечаток" #: ../gui/gnomint.glade.h:10 msgid "Inherited fields from CA subject" msgstr "Поля наследуемые из заголовка CA" #: ../gui/gnomint.glade.h:11 msgid "Purposes of new generated certificates" msgstr "Предназначения вновь сгенерированного сертификата" #: ../gui/gnomint.glade.h:12 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in the internal database." msgstr "" "Это запрос на подпись сертификата имеет свой соответствующий закрытый " "ключ, сохранённый во внутренней базе" #: ../gui/gnomint.glade.h:13 msgid "This certificate has been verified for the following uses:" msgstr "Этот сертификат был заверен для следующего использования:" #: ../gui/gnomint.glade.h:14 msgid "Uses of new generated certificates" msgstr "Использование вновь сгенерированных сертификатов" #: ../gui/gnomint.glade.h:15 msgid "Validity" msgstr "Период действия" #: ../gui/gnomint.glade.h:16 msgid "New Certificate Revocation List" msgstr "Новый список отозванных сертификатов" #: ../gui/gnomint.glade.h:17 msgid "CA Properties\n" msgstr "Свойства CA\n" #: ../gui/gnomint.glade.h:19 msgid "CA Root certificate properties\n" msgstr "Свойства корневого сертификата CA\n" #: ../gui/gnomint.glade.h:21 msgid "Certificate Request Properties\n" msgstr "Свойства запроса сертификата\n" #: ../gui/gnomint.glade.h:23 msgid "" "Choose private key file\n" "\n" "For doing the selected operation, you must provide the file where resides " "the private key corresponding to the certificate:" msgstr "Выберете файл закрытого ключа" #: ../gui/gnomint.glade.h:26 msgid "New Certificate Properties\n" msgstr "Свойства нового сертификата\n" #: ../gui/gnomint.glade.h:28 msgid "Password protection\n" msgstr "Защита паролем\n" #: ../gui/gnomint.glade.h:30 msgid "" "Export both (private and public) parts to a password-protected PKCS#12 " "file. This kind of file can be imported by other common programs, such as " "web or mail clients." msgstr "" "Экспорт обоих (закрытой и открытой) частей в защищённый паролем PKCS#12 " "файл. Такой тип файла может быть импортирован большинством других программ, " "такими как веб или почтовый клиенты." #: ../gui/gnomint.glade.h:31 msgid "Export only the certificate to a public file, in PEM format." msgstr "Экспорт только сертификата в публичный файл в PEM формате." #: ../gui/gnomint.glade.h:32 msgid "" "Export the saved private key to a PEM file. This option should only be " "used for exporting certificates that will be used in unattended servers." msgstr "" "Экспорт сохранённого закрытого ключа в PEM файл. Эта опция может быть " "использована только для экспорта сертификатов, которые будут использоваться " "на необслуживаемых серверах." #: ../gui/gnomint.glade.h:33 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the certificate." msgstr "" "Экспорт сохранённого закрытого ключа в PKCS#8 защищённый паролем файл. " "Этот файл должен быть доступен только для владельца сертификата." #: ../gui/gnomint.glade.h:34 msgid "" "Import a directory containing the structure of\n" "a whole CA made with OpenSSL ." msgstr "" "Импорт каталога, содержащего структуру\n" "целого CA, созданного с помощью OpenSSL" #: ../gui/gnomint.glade.h:36 msgid "" "Import a single file, encoded in DER or PEM format, containing " "certificates, private keys (encrypted or plain), signing requests (CSRs), " "revocation lists (CRLs) or PKCS#12 packages." msgstr "" "Импорт одного файла, кодированного в DER или PEM формате, содержащего " "сертификат, закрытый ключ (зашифрованный или нешифрованный), запрос на " "подпись сертификата (CSRs), список отозванных сертификатов (CRLs) или " "PKCS#12 пакеты." #: ../gui/gnomint.glade.h:37 msgid "" "\n" "It is recommended that all the certificates generated by a CA share the same " "properties.\n" "If you want to generate certificates with different properties, you should " "create a hierarchy of CAs, each one with its own policy for certificate " "generation.\n" "\n" "Please, define the maximum set of properties for the certificates that this " "CA will be able to generate:\n" msgstr "" "\n" "Рекомендуется, чтобы все сертификаты, генерируемые CA, имели те же " "свойства.\n" "Если вы хотите сгенерировать сертификат с отличающимися свойствами, вы " "должны создать иерархию CA, каждый из которых со своей собственной политикой " "для генерации сертификатов.\n" "\n" "Пожалуйста, определите максимальный набор свойств для сертификатов, которые " "данный CA сможет генерировать:\n" #: ../gui/gnomint.glade.h:43 msgid "#Description#" msgstr "#Описание#" #: ../gui/gnomint.glade.h:44 msgid "" "PKCS#3 files containing Diffie·Hellman parameters are used by " "some cryptographic \n" "applications for a secure interchange of their keys over insecure " "channels." msgstr "" "файлы PKCS#3, содержащие Diffie·Hellman параметры " "используются некоторыми криптографическими \n" "приложениями для безопасного обмена своих ключей через небезопасные " "каналы." #: ../gui/gnomint.glade.h:46 msgid "" "The part that is being imported has the description:" msgstr "" "Часть, которая сейчас импортирована, имеет описание:" #: ../gui/gnomint.glade.h:47 msgid "" "The subject of the new certificate request can inherit information " "from one of the existing Certification Authorities. This is a must if the " "policy of the CA you are going to use is defined to force some fields of a " "certificate subject to be the same as the ones in the CA cert " "subject." msgstr "" "Заголовок нового запроса сертификата может наследовать информацию от " "одного из существующих Центров сертификации (CA). Это обязательно если " "политика используемого CA предопределяет некоторые поля в заголовке " "сертификата быть такими же как и в заголовке сертификата CA." #: ../gui/gnomint.glade.h:48 msgid "Activated on" msgstr "Активировано на" #: ../gui/gnomint.glade.h:49 msgid "Add CSR" msgstr "Добавить CSR" #: ../gui/gnomint.glade.h:50 msgid "Add _Certificate Request" msgstr "Добавить запрос _Сертификата" #: ../gui/gnomint.glade.h:51 msgid "Add a new Certificate Signing Request" msgstr "Добавить новый Запрос на Подпись Сертификата" #: ../gui/gnomint.glade.h:52 msgid "Add an autosigned CA" msgstr "Добавить самоподписанный CA" #: ../gui/gnomint.glade.h:53 msgid "Add autosigned CA certificate" msgstr "Добавить самоподписанный CA сертификат" #: ../gui/gnomint.glade.h:54 ../src/certificate_properties.c:1130 #: ../src/tls.c:1082 msgid "Any purpose" msgstr "Любая цель" #: ../gui/gnomint.glade.h:55 msgid "" "Automatically export created certificates to \n" "Gnome-keyring certificate store" msgstr "" "Автоматически экспортировать созданные сертификаты в \n" "Gnome-keyring хранилище сертификатов" #: ../gui/gnomint.glade.h:57 msgid "Both parts." msgstr "Обе части." #: ../gui/gnomint.glade.h:58 msgid "CA Policy" msgstr "Политика CA" #: ../gui/gnomint.glade.h:59 msgid "" "CA Root Certificate \n" "Common Name (CN):" msgstr "" "Корневой сертификат CA \n" "Обычное Имя (CN):" #: ../gui/gnomint.glade.h:61 msgid "CA properties" msgstr "Свойства CA" #: ../gui/gnomint.glade.h:62 msgid "CACN" msgstr "CACN" #: ../gui/gnomint.glade.h:63 msgid "CAO" msgstr "CAO" #: ../gui/gnomint.glade.h:64 msgid "CAOU" msgstr "CAOU" #: ../gui/gnomint.glade.h:65 ../src/certificate_properties.c:358 #: ../src/tls.c:1056 msgid "CRL signing" msgstr "Подпись CRL" #: ../gui/gnomint.glade.h:66 msgid "CSR properties - gnoMint" msgstr "Свойства CSR - gnoMint" #: ../gui/gnomint.glade.h:67 msgid "CertActivationDate" msgstr "ДатаАктвацииСертификата" #: ../gui/gnomint.glade.h:68 msgid "CertExpirationDate" msgstr "ДатаПросрочкиСертификата" #: ../gui/gnomint.glade.h:69 msgid "CertSN" msgstr "CertSN" #: ../gui/gnomint.glade.h:70 msgid "" "Certificate \n" "Common Name (CN):" msgstr "" "Сертификат \n" "Обычное имя (CN):" #: ../gui/gnomint.glade.h:72 msgid "Certificate DN" msgstr "DN сертификата" #: ../gui/gnomint.glade.h:73 msgid "Certificate _Signing Requests" msgstr "Запрос _Подписи сертификата" #: ../gui/gnomint.glade.h:74 msgid "Certificate properties" msgstr "Свойства сертификата" #: ../gui/gnomint.glade.h:75 msgid "Certificate properties - gnoMint" msgstr "Свойства сертификата - gnoMint" #: ../gui/gnomint.glade.h:76 ../src/tls.c:1039 msgid "Certification Authority" msgstr "Центр сертификации" #: ../gui/gnomint.glade.h:77 msgid "Change database pass_word" msgstr "Изменить па_роль базы" #: ../gui/gnomint.glade.h:78 msgid "Choose CA for signing the CSR" msgstr "Выбор CA для подписи CSR" #: ../gui/gnomint.glade.h:79 msgid "Choose private key file. gnoMint" msgstr "Выбор закрытого ключа. gnoMint" #: ../gui/gnomint.glade.h:80 msgid "City" msgstr "Город" #: ../gui/gnomint.glade.h:81 msgid "City: " msgstr "Город: " #: ../gui/gnomint.glade.h:82 ../src/certificate_properties.c:1126 #: ../src/tls.c:1074 msgid "Code signing" msgstr "Подпись кода" #: ../gui/gnomint.glade.h:83 msgid "Common Name (CN)" msgstr "Обычное Имя (CN)" #: ../gui/gnomint.glade.h:84 msgid "Country" msgstr "Страна" #: ../gui/gnomint.glade.h:85 msgid "Country:" msgstr "Страна:" #: ../gui/gnomint.glade.h:86 msgid "Create a new database" msgstr "Создать новую базу" #: ../gui/gnomint.glade.h:87 msgid "Creating CA Root Certificate" msgstr "Создание корневого сертификата CA" #: ../gui/gnomint.glade.h:88 msgid "Creating new CA - gnoMint" msgstr "Создать новый CA - gnoMint" #: ../gui/gnomint.glade.h:89 msgid "DSA" msgstr "DSA" #: ../gui/gnomint.glade.h:90 ../src/certificate_properties.c:352 #: ../src/tls.c:1050 msgid "Data encipherment" msgstr "Шифрование данных" #: ../gui/gnomint.glade.h:91 msgid "Database password protection - gnoMint" msgstr "Защита базы паролем - gnoMint" #: ../gui/gnomint.glade.h:92 msgid "Delete the selected Certificate Signing Request" msgstr "Удалить выбранный Запрос на Подпись Сертификата" #: ../gui/gnomint.glade.h:93 msgid "Details" msgstr "Детали" #: ../gui/gnomint.glade.h:94 ../src/certificate_properties.c:346 #: ../src/tls.c:1044 msgid "Digital signature" msgstr "Цифровая подпись" #: ../gui/gnomint.glade.h:95 msgid "Don't inherit any fields from existing Certification Authorities" msgstr "Не наследовать ни одного поля из существующего Центра Сертификации" #: ../gui/gnomint.glade.h:96 msgid "E_xport" msgstr "Э_кспорт" #: ../gui/gnomint.glade.h:97 ../src/certificate_properties.c:1127 #: ../src/tls.c:1076 msgid "Email protection" msgstr "Защита эл.почты" #: ../gui/gnomint.glade.h:98 msgid "" "Enter new password again \n" "for confirmation:" msgstr "" "Введите новый пароль снова \n" "для подтверждения:" #: ../gui/gnomint.glade.h:100 msgid "Enter password - gnoMint" msgstr "Введите пароль - gnoMint" #: ../gui/gnomint.glade.h:101 msgid "Enter password again for confirmation:" msgstr "Введите пароль снова для подтверждения:" #: ../gui/gnomint.glade.h:102 msgid "Expires on" msgstr "Срок истечения" #: ../gui/gnomint.glade.h:103 msgid "Export certificate - gnoMint" msgstr "Экспорт сертификата - gnoMint" #: ../gui/gnomint.glade.h:104 msgid "Export options" msgstr "Опции экспорта" #: ../gui/gnomint.glade.h:105 msgid "Exports the CSR so it can be imported by any other application" msgstr "" "Экспорт CSR, так он может быть импортирован в любые другие приложениях" #: ../gui/gnomint.glade.h:106 msgid "" "Exports the certificate so it can be imported by any other application" msgstr "" "Экспорт сертификата, так он может быть импортирован в любые другие приложения" #: ../gui/gnomint.glade.h:107 msgid "Extrac_t private key" msgstr "Извлечени_е закрытого ключа" #: ../gui/gnomint.glade.h:108 msgid "Extract Private Key" msgstr "Извлечь Закрытый Ключ" #: ../gui/gnomint.glade.h:109 msgid "Extract the private key of the selected item into a external file" msgstr "Извлечь закрытый ключ выбранного объекта во внешний файл" #: ../gui/gnomint.glade.h:110 msgid "Extract the saved private key to an external file or device" msgstr "" "Извлечение сохранённого закрытого ключа во внешний файл или устройство" #: ../gui/gnomint.glade.h:111 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the CSR will be used" msgstr "" "Извлечение закрытого ключа выбранного \n" "сертификата из базы во \n" "внешний файл. Этот файл должен быть предоставлен\n" "каждый раз, когда CSR будет использован" #: ../gui/gnomint.glade.h:115 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the certificate will be used" msgstr "" "Извлечение закрытого ключа выбранного \n" "сертификата из базы во \n" "внешний файл. Этот файл должен быть предоставлен \n" "каждый раз, когда сертификат будет использован" #: ../gui/gnomint.glade.h:119 msgid "General" msgstr "Основное" #: ../gui/gnomint.glade.h:120 msgid "General Preferences - gnoMint" msgstr "Основные свойства - gnoMint" #: ../gui/gnomint.glade.h:121 msgid "Generate D_H parameters..." msgstr "Основные D_H параметры..." #: ../gui/gnomint.glade.h:122 msgid "Generate _CRL" msgstr "Генерировать _CRL" #: ../gui/gnomint.glade.h:123 msgid "Generate the current Certificate Revocation List" msgstr "Генерировать текущий Список Отозванных Сертификатов" #: ../gui/gnomint.glade.h:124 msgid "Hours between CRL updates:" msgstr "Кол-во часов между обновлениями CRL:" #: ../gui/gnomint.glade.h:125 msgid "Import a single file." msgstr "Импорт один файл." #: ../gui/gnomint.glade.h:126 msgid "Import a whole directory." msgstr "Импорт всего каталога" #: ../gui/gnomint.glade.h:127 msgid "Import selection - gnoMint" msgstr "Импорт выбранного - gnoMint" #: ../gui/gnomint.glade.h:128 msgid "" "Inherit fields according to selected Certification Authority and its policy." msgstr "" "Наследовать поля в соответствии с выбранным Центром Авторизации и его " "политикой." #: ../gui/gnomint.glade.h:129 ../src/certificate_properties.c:354 #: ../src/tls.c:1052 msgid "Key agreement" msgstr "Согласование ключа" #: ../gui/gnomint.glade.h:130 ../src/certificate_properties.c:350 #: ../src/tls.c:1048 msgid "Key encipherment" msgstr "Шифрование ключа" #: ../gui/gnomint.glade.h:131 msgid "MD5 fingerprint" msgstr "MD5 отпечаток" #: ../gui/gnomint.glade.h:132 msgid "MD5FINGERPRINT" msgstr "MD5ОТПЕЧАТОК" #: ../gui/gnomint.glade.h:133 msgid "" "Maximum number of months before expiration of the new generated certificates:" msgstr "" "Максимальное количество месяцев перед истечением вновь сгенерированного " "сертификата:" #: ../gui/gnomint.glade.h:134 msgid "Months before certificate expiration:" msgstr "Количество месяцев до истечения срока сертификата:" #: ../gui/gnomint.glade.h:135 msgid "Months before root certificate expiration:" msgstr "Количество месяцев до истечения срока корневого сертификата" #: ../gui/gnomint.glade.h:136 msgid "New CA - gnoMint" msgstr "Новый CA - gnoMint" #: ../gui/gnomint.glade.h:137 msgid "New CRL - gnoMint" msgstr "Новый CRL - gnoMint" #: ../gui/gnomint.glade.h:138 msgid "New Certificate - gnoMint" msgstr "Новый Сертификат - gnoMint" #: ../gui/gnomint.glade.h:139 msgid "New Diffie-Hellman parameters - gnoMint" msgstr "Новые параметры Diffie-Hellman - gnoMint" #: ../gui/gnomint.glade.h:140 msgid "" "New certificate \n" "Common Name (CN):" msgstr "" "Новый сертификат \n" "Обычное имя (CN):" #: ../gui/gnomint.glade.h:142 msgid "New certificate request - gnoMint" msgstr "Новый запрос сертификата - gnoMint" #: ../gui/gnomint.glade.h:143 ../src/certificate_properties.c:348 #: ../src/tls.c:1046 msgid "Non repudiation" msgstr "нерасторгаемый" #: ../gui/gnomint.glade.h:144 ../src/certificate_properties.c:1129 #: ../src/tls.c:1080 msgid "OCSP signing" msgstr "OCSP подпись" #: ../gui/gnomint.glade.h:145 msgid "Only the private key (crypted)." msgstr "Только закрытый ключ (зашифрованный)." #: ../gui/gnomint.glade.h:146 msgid "Only the private key (uncrypted)." msgstr "Только закрытый ключ (незашифрованный)." #: ../gui/gnomint.glade.h:147 msgid "Only the pu_blic part." msgstr "Только пу_бличную часть." #: ../gui/gnomint.glade.h:148 msgid "Open _recents" msgstr "Открыть _недавние" #: ../gui/gnomint.glade.h:149 msgid "Open an existing database" msgstr "Открыть существующую базу" #: ../gui/gnomint.glade.h:150 msgid "Organization" msgstr "Организация" #: ../gui/gnomint.glade.h:151 msgid "Organization (O)" msgstr "Организация (О)" #: ../gui/gnomint.glade.h:152 msgid "Organization Unit:" msgstr "Организационная единица:" #: ../gui/gnomint.glade.h:153 msgid "Organization:" msgstr "Организация:" #: ../gui/gnomint.glade.h:154 msgid "Organizational Unit (OU)" msgstr "Организационная единица (OU)" #: ../gui/gnomint.glade.h:155 msgid "Organizational unit" msgstr "Организационная единица" #: ../gui/gnomint.glade.h:156 msgid "Password (confirm):" msgstr "Пароль (подтверждение):" #: ../gui/gnomint.glade.h:157 msgid "Password protect" msgstr "Защита паролем" #: ../gui/gnomint.glade.h:158 msgid "Password:" msgstr "Пароль:" #: ../gui/gnomint.glade.h:159 msgid "Please, choose the file:" msgstr "Пожалуйста, выберите файл:" #: ../gui/gnomint.glade.h:160 msgid "Please, choose the more suitable option for what you want to import:" msgstr "" "Пожалуйста, выберите более подходящую опцию для того, что вы хотите " "импортировать:" #: ../gui/gnomint.glade.h:161 msgid "" "Please, choose which part of the saved certificate you want to export:" msgstr "" "Пожалуйста, выберите какую часть сохранённого сертификата вы хотите " "экспортировать:" #: ../gui/gnomint.glade.h:162 msgid "" "Please, enter current\n" "password:" msgstr "" "Пожалуйста, введите текущий\n" "пароль:" #: ../gui/gnomint.glade.h:164 msgid "" "Please, enter new \n" "password:" msgstr "" "Пожалуйста, введите новый \n" "пароль:" #: ../gui/gnomint.glade.h:166 msgid "Please, enter password" msgstr "Пожалуйста, введите пароль" #: ../gui/gnomint.glade.h:167 msgid "Please, enter password:" msgstr "Пожалуйста, введите пароль:" #: ../gui/gnomint.glade.h:168 msgid "Please, enter the prime size, in bits:" msgstr "Пожалуйста, введите первоначальный размер, в битах:" #: ../gui/gnomint.glade.h:169 msgid "" "Please, select the CA for which a Certificate \n" "Revocation List is going to be created:" msgstr "" "Пожалуйста, выберите CA, для которого \n" "будет создан Список Отозванных Сертификатов:" #: ../gui/gnomint.glade.h:171 msgid "Private key bit length:" msgstr "Длина в битах закрытого ключа:" #: ../gui/gnomint.glade.h:172 msgid "Private key type:" msgstr "Тип закрытого ключа:" #: ../gui/gnomint.glade.h:173 msgid "" "Protect CA database private \n" "keys with password:" msgstr "" "Защитить базу CA закрытых \n" "ключей паролем:" #: ../gui/gnomint.glade.h:175 msgid "" "Protect CA database private keys\n" "with password:" msgstr "" "Защитить базу CA закрытых ключей\n" "паролем:" #: ../gui/gnomint.glade.h:177 msgid "RSA" msgstr "RSA" #: ../gui/gnomint.glade.h:178 msgid "Remember this password during this gnoMint session" msgstr "Запомнить этот пароль на время текущей сессии gnoMint" #: ../gui/gnomint.glade.h:179 msgid "Revo_ke" msgstr "Отоз_вать" #: ../gui/gnomint.glade.h:180 msgid "Revoke" msgstr "Отозвать" #: ../gui/gnomint.glade.h:181 msgid "Revoke the selected certificate" msgstr "Отозвать выбранные сертификаты" #: ../gui/gnomint.glade.h:182 msgid "Revokes the selected certificate" msgstr "Отозвать выбранный сертификат" #: ../gui/gnomint.glade.h:183 msgid "Root certificate prop" msgstr "Свойства корневого сертификата" #: ../gui/gnomint.glade.h:184 msgid "SHA1 fingerprint" msgstr "SHA1 отпечаток" #: ../gui/gnomint.glade.h:185 msgid "SHA1FINGERPRINT" msgstr "SHA1ОТПЕЧАТОК" #: ../gui/gnomint.glade.h:186 msgid "Serial number" msgstr "Серийный номер" #: ../gui/gnomint.glade.h:187 msgid "Shows the CSR properties window" msgstr "Показывать окно свойств CSR" #: ../gui/gnomint.glade.h:188 msgid "Shows the certificate properties window" msgstr "Показывать окно свойств сертификата" #: ../gui/gnomint.glade.h:189 msgid "Sign" msgstr "Подписать" #: ../gui/gnomint.glade.h:190 msgid "Sign the selected Certificate Signing Request" msgstr "Подписать выбранный Запрос на Подпись Сертификата" #: ../gui/gnomint.glade.h:191 msgid "State or Province name" msgstr "Название штата или области" #: ../gui/gnomint.glade.h:192 msgid "State or Province name: " msgstr "Название штата или области: " #: ../gui/gnomint.glade.h:193 msgid "SubjectCN" msgstr "ЗаголовокCN" #: ../gui/gnomint.glade.h:194 msgid "SubjectO" msgstr "ЗаголовокO" #: ../gui/gnomint.glade.h:195 msgid "SubjectOU" msgstr "ЗаголовокOU" #: ../gui/gnomint.glade.h:196 msgid "TLS Web client" msgstr "TLS Веб клиент" #: ../gui/gnomint.glade.h:197 msgid "TLS Web server" msgstr "TLS Веб сервер" #: ../gui/gnomint.glade.h:198 msgid "" "The whole selected file, or some of its elements, seems to be cyphered using " "a password or passphrase.\n" "\n" "For importing the file into gnoMint database, you must provide an appropiate " "password." msgstr "" "Файл целиком или некоторые из его элементов, по всей видимости, зашифрованны " "с использованием пароля или парольной фразы.\n" "Для импортирования файла в базу gnoMint, вы должны предоставить " "соответствующий пароль." #: ../gui/gnomint.glade.h:201 msgid "" "This action requires using one or more private keys saved in the CA " "database.\n" "\n" "Please insert the database password." msgstr "" "Это действие требует использования одного или нескольких закрытых ключей, " "сохранённых в базе CA.\n" "Пожалуйста введите пароль базы." #: ../gui/gnomint.glade.h:204 ../src/certificate_properties.c:1128 #: ../src/tls.c:1078 msgid "Time stamping" msgstr "Временная отметка" #: ../gui/gnomint.glade.h:205 msgid "" "You are about to create and export a set of Diffie·Hellman parameters " "into a PKCS#3 structure file." msgstr "" "Вы собираетесь создать и экспортировать набор параметров Diffie·Hellman " "в файл структуры PKCS#3." #: ../gui/gnomint.glade.h:206 msgid "" "You are about to sign a Certificate Signing Request, and this way, creating " "a new certificate. Please check the certificate properties." msgstr "" "Вы подписываете Запрос Подписи Сертификата и ,таким образом, создаёте новый " "сертификат. Пожалуйста проверьте свойства сертификата." #: ../gui/gnomint.glade.h:207 msgid "" "You are about to sign a Certificate Signing Request. Please, choose the " "Certification Authority you are going to use for signing it." msgstr "" "Вы подписываете Запрос Подписи Сертификата. Пожалуйста, выберите Центр " "Авторизации, который вы будете использовать для его подписи." #: ../gui/gnomint.glade.h:208 msgid "_Add self-signed CA" msgstr "_Добавить самоподписанный CA" #: ../gui/gnomint.glade.h:209 msgid "_Certificates" msgstr "_Сертификат" #: ../gui/gnomint.glade.h:210 msgid "_Edit" msgstr "_Изменить" #: ../gui/gnomint.glade.h:211 msgid "_Help" msgstr "_Справка" #: ../gui/gnomint.glade.h:212 msgid "_Import" msgstr "_Импорт" #: ../gui/gnomint.glade.h:213 msgid "_New certificate database" msgstr "_Новая база сертификатов" #: ../gui/gnomint.glade.h:214 msgid "_No" msgstr "_Нет" #: ../gui/gnomint.glade.h:215 msgid "_Open certificate database" msgstr "_Открыть базу сертификатов" #: ../gui/gnomint.glade.h:216 msgid "_Revoked Certificates" msgstr "_Отозванные Сертификаты" #: ../gui/gnomint.glade.h:217 msgid "_Save certificate database as..." msgstr "_Сохранить базу сертификатов как..." #: ../gui/gnomint.glade.h:218 msgid "_Save filename in the database for automatic loading" msgstr "_Сохранить файл в базе для автоматической загрузки" #: ../gui/gnomint.glade.h:219 msgid "_Sign" msgstr "_Подписать" #: ../gui/gnomint.glade.h:220 msgid "_View" msgstr "_Вид" #: ../gui/gnomint.glade.h:221 msgid "_Yes" msgstr "_Да" #: ../gui/gnomint.glade.h:222 msgid "gnoMint" msgstr "gnoMint" #: ../gui/gnomint.glade.h:223 msgid "gtk-cancel" msgstr "Отмена" #: ../gui/gnomint.glade.h:224 msgid "gtk-ok" msgstr "ОК" #: ../gui/gnomint.glade.h:225 msgid "label" msgstr "метка" #: ../gui/gnomint.glade.h:226 msgid "may differ" msgstr "могут отличаться" #: ../gui/gnomint.glade.h:227 msgid "must be the same" msgstr "могут быть одинаковыми" #: ../gui/gnomint.glade.h:228 msgid "page 3" msgstr "страница 3" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "Управлять сертификатами X.509 и CA легко и визуально" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "gnoMint менеджер X.509 CA" #: ../src/ca.c:147 msgid "Certificates" msgstr "Сертификат" #: ../src/ca.c:263 msgid "Certificate Signing Requests" msgstr "Запрос на Подпись Сертификата" #: ../src/ca.c:304 ../src/ca-cli-callbacks.c:168 ../src/ca-cli-callbacks.c:178 #: ../src/ca-cli-callbacks.c:189 ../src/ca-cli-callbacks.c:547 #: ../src/ca-cli-callbacks.c:551 ../src/ca-cli-callbacks.c:1162 #: ../src/ca-cli-callbacks.c:1166 ../src/certificate_properties.c:178 #: ../src/certificate_properties.c:183 msgid "%m/%d/%Y %R GMT" msgstr "%m/%d/%Y %R GMT" #: ../src/ca.c:448 ../src/certificate_properties.c:531 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "Заголовок" #: ../src/ca.c:483 msgid "Serial" msgstr "Серийный номер" #: ../src/ca.c:490 msgid "Activation" msgstr "Активация" #: ../src/ca.c:497 msgid "Expiration" msgstr "Срок истечения" #: ../src/ca.c:504 msgid "Revocation" msgstr "Отзыв" #: ../src/ca.c:791 msgid "Export certificate" msgstr "Экспорт сертификата" #: ../src/ca.c:798 msgid "Export certificate signing request" msgstr "Экспорт запроса на подпись сертификата" #: ../src/ca.c:813 ../src/ca.c:849 ../src/ca.c:859 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "Произошла ошибка во время экспорта сертификата." #: ../src/ca.c:815 ../src/ca.c:851 ../src/ca.c:861 msgid "There was an error while exporting CSR." msgstr "Произошла ошибка во время экспорта CSR." #: ../src/ca.c:874 ../src/ca.c:1040 msgid "Certificate exported successfully" msgstr "Сертификат успешно экспортирован" #: ../src/ca.c:881 msgid "Certificate signing request exported successfully" msgstr "Запрос на подпись сертификата успешно экспортирован" #: ../src/ca.c:900 msgid "Export crypted private key" msgstr "Экспорт зашифрованного закрытого ключ" #: ../src/ca.c:929 ../src/ca.c:981 msgid "Private key exported successfully" msgstr "Закрытый ключ успешно экспортирован" #: ../src/ca.c:951 msgid "Export uncrypted private key" msgstr "Экспорт незашифрованного закрытого ключа" #: ../src/ca.c:1002 msgid "Export whole certificate in PKCS#12 package" msgstr "Экспорт всего сертификата в PKCS#12 пакет" #: ../src/ca.c:1073 msgid "Export CSR - gnoMint" msgstr "Экспорт CSR - gnoMint" #: ../src/ca.c:1078 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" "Пожалуйста, выберите какую часть сохранённого Запроса на Подпись Сертификата " "вы хотите экспортировать:" #: ../src/ca.c:1083 msgid "" "Export the Certificate Signing Request to a public file, in PEM " "format." msgstr "" "Экспорт Запроса на Подпись Сертификата в незашифрованный файл PEM " "формата." #: ../src/ca.c:1088 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" "Экспрорт сохранённого закрытого ключа в PKCS#8 файл защищённый паролем. " "Этот файл должен быть доступен владельцу Запроса на Подпись Сертификата." #: ../src/ca.c:1146 msgid "Unexpected error" msgstr "Неожиданная ошибка" #: ../src/ca.c:1196 msgid "Are you sure you want to revoke this certificate?" msgstr "Вы уверены, что хотите отозвать сертификат?" #: ../src/ca.c:1235 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "Вы уверены, что хотите улалить Запрос на Подпись Сертификата?" #: ../src/ca.c:1512 msgid "Change CA password - gnoMint" msgstr "Изменить CA пароль - gnoMint" #: ../src/ca.c:1530 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" "Текущий пароль, который вы ввели, не совпадает с текущим актуальным паролем " "базы." #: ../src/ca.c:1545 msgid "Error while changing database password. The operation was cancelled." msgstr "Произошла ошибка при смене пароля базы. Операция отменена." #: ../src/ca.c:1554 msgid "Password changed successfully" msgstr "Пароль изменён успешно" #: ../src/ca.c:1564 ../src/ca-cli-callbacks.c:1002 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "Произошла ошибка при установке пароля базы. Операция отменена." #: ../src/ca.c:1574 msgid "Password established successfully" msgstr "Пароль установлен успешно" #: ../src/ca.c:1584 msgid "Error while removing database password. The operation was cancelled." msgstr "Произошла ошибка при удалении пароля базы. Операция отменена." #: ../src/ca.c:1593 msgid "Password removed successfully" msgstr "Пароль удалён успешно." #: ../src/ca.c:1731 msgid "Save Diffie-Hellman parameters" msgstr "Сохранить Diffie-Hellman параметры" #: ../src/ca.c:1757 msgid "Diffie-Hellman parameters saved successfully" msgstr "Параметры Diffie-Hellman сохранены успешно" #. Import single file #: ../src/ca.c:1826 msgid "Select PEM file to import" msgstr "Выберите PEM файл для импорта" #: ../src/ca.c:1847 #, c-format msgid "Problem when importing '%s' file" msgstr "Проблема при импорте файла '%s'" #: ../src/ca.c:1860 msgid "Select directory to import" msgstr "Выберите каталог для импорта" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "новая база <имяфайла>" #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "Закрыть текущий файл и создать новую базу с данным именем файла" #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "открыть базу <имяфайла>" #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "Закрыть текущий файл и открыть файл с заданным именем" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "сохранить базу <имяфайла>" #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "Сохранить текущий файл под другим именем" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "" "Получить текущий статус (открытый файл, номер сертификатов, т.д. ...)" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "Список сертификатов в базе." #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "Список CSR в базе" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "addcsr [ca-id-for-inherit-fields]" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "Стартовать процесс создания нового CSR" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "Стартовать процесс создания нового самоподписанного CA" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "extractcertpkey " #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" "Извлечь закрытый ключ сертификата с данным внутренним номером и сохранить " "его в заданный файл" #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "extractcsrpkey " #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" "Извлечь закрытый ключ CSR с данным внутренним номером и сохранить его в " "заданный файл" #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "revoke " #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "Отозвать сертификат с данным внутренним номером" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "sign " #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "Генерировать сертификат подписывая данный CSR с данным CA" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "delete " #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "Удалить данный CSR из базы данных" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "crlgen " #: ../src/ca-cli.c:55 msgid "" "Generate a new CRL for the given CA, saving it into the file " msgstr "Создать новый CRL для данного CA, сохранив его в файле " #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "dhgen " #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" "Генерировать новый набор DH-параметров, сохраняя его в файле <имяфайла>" #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "Изменить пароль для текущей базы данных" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "importfile " #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "Импорт файла с заданым именем <имяфайла>" #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "importdir " #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "Импорт данного каталога как OpenSSL-CA каталога" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "showcert " #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "Показать свойства данного сертификата" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "showcsr " #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "Показать свойства данного CSR" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "showpolicy " #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "Показать политики CA" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "setpolicy " #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "Изменить данную политику CA" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "Показать настройки программы" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "setpreference " #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "Установить данную настройку программы" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "Показать сведения о программе" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "Показать сведения о гарантиях" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "Показать сведения о распространении" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "Показать сведения о версии" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "Показать (это) сообщение помощи" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "Закрыть базу данных и выйти из программы" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "Открыть базу данных %s..." #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr " OK.\n" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr " Ошибка.\n" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" "\n" "\n" "%s версия %s\n" "%s\n" "\n" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" "Эта программа идёт АБСОЛЮТНО БЕЗ ГАРАНТИЙ;\n" "для подробностей наберите 'warranty'.\n" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" "Это свободная программа и приветствуется её распространение\n" "при определённых условиях; наберите 'distribution' для деталей.\n" "\n" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "Непарные кавычки\n" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" "Неверная команда. Попробуйте 'help' для получения списка распознаваемых " "команд.\n" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "Неверное число параметров.\n" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "Синтакс: %s\n" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "Файл уже существует, поэтому он будет переписан." #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:638 msgid "Are you sure? Yes/[No] " msgstr "Вы уверены? Да/[Нет] " #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "Проблема при открытии новой базы CA '%s'\n" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "Открыт файл '%s'\n" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "" "Проблема с открытием базы CA '%s\n" "'\n" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "Текущий открытый файл: %s\n" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "Количество сертификатов в файле: %d\n" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "Количество CSR в файле: %d\n" #: ../src/ca-cli-callbacks.c:140 #, c-format msgid "CertList ID|%s\t" msgstr "CertList ID|%s\t" #: ../src/ca-cli-callbacks.c:143 msgid "CertList IsCA|Y\t" msgstr "CertList является CA|Y\t" #: ../src/ca-cli-callbacks.c:145 msgid "CertList IsCA|N\t" msgstr "CertList является CA|N\t" #: ../src/ca-cli-callbacks.c:150 #, c-format msgid "CertList Subject|%s\t" msgstr "CertList Заголовок|%s\t" #: ../src/ca-cli-callbacks.c:153 msgid "CertList PadIfSubject<16|\t" msgstr "CertList ДополнятьЕслиЗаголовок<16|\t" #: ../src/ca-cli-callbacks.c:155 msgid "CertList PadIfSubject<8|\t" msgstr "CertList ДополнятьЕслиЗаголовок<8|\t" #: ../src/ca-cli-callbacks.c:158 msgid "CertList PKeyInDB|Y\t\t" msgstr "CertList PKeyInDB|Y\t\t" #: ../src/ca-cli-callbacks.c:160 msgid "CertList PKeyInDB|N\t\t" msgstr "CertList PKeyInDB|N\t\t" #: ../src/ca-cli-callbacks.c:164 msgid "CertList Activation|\t" msgstr "CertList Активация|\t" #: ../src/ca-cli-callbacks.c:169 #, c-format msgid "CertList Activation|%s\t" msgstr "CertList Активация|%s\t" #: ../src/ca-cli-callbacks.c:174 msgid "CertList Expiration|\t" msgstr "CertList Истечение срока|\t" #: ../src/ca-cli-callbacks.c:179 #, c-format msgid "CertList Expiration|%s\t" msgstr "CertList Истечение срока|%s\t" #: ../src/ca-cli-callbacks.c:185 msgid "CertList Revocation|\n" msgstr "CertList Отзыв|\n" #: ../src/ca-cli-callbacks.c:190 #, c-format msgid "CertList Revocation|%s\n" msgstr "CertList Отзыв|%s\n" #: ../src/ca-cli-callbacks.c:207 #, c-format msgid "Certificates in Database:\n" msgstr "Сертификаты в базе:\n" #: ../src/ca-cli-callbacks.c:208 #, c-format msgid "" "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "" "Id.\tявляется CA?\tЗаголовок Сертификата\tКлюч в базе?\tАктивация\t\t" "Истечение срока" #: ../src/ca-cli-callbacks.c:211 #, c-format msgid "\t\tRevocation\n" msgstr "\t\tОтзыв\n" #: ../src/ca-cli-callbacks.c:221 #, c-format msgid "CsrList ID|%s\t" msgstr "CsrList ID|%s\t" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "CsrList ParentID|%s\t" msgstr "CsrList ID предка|%s\t" #: ../src/ca-cli-callbacks.c:223 msgid "CsrList ParentID|\t" msgstr "CsrList ID предка|\t" #: ../src/ca-cli-callbacks.c:228 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "CsrList Заголовок|%-24s\t" #: ../src/ca-cli-callbacks.c:231 msgid "CsrList PadIfSubject<16|\t" msgstr "CsrList ДополнятьЕслиЗаголовок<16|\t" #: ../src/ca-cli-callbacks.c:233 msgid "CsrList PadIfSubject<8|\t" msgstr "CsrList ДополнятьЕслиЗаголовок<8|\t" #: ../src/ca-cli-callbacks.c:236 msgid "CsrList PKeyInDB|Y\n" msgstr "CsrList PKeyInDB|Y\n" #: ../src/ca-cli-callbacks.c:238 msgid "CsrList PKeyInDB|N\n" msgstr "CsrList PKeyInDB|N\n" #: ../src/ca-cli-callbacks.c:246 #, c-format msgid "Certificate Requests in Database:\n" msgstr "Запросы сертификата в Базе:\n" #: ../src/ca-cli-callbacks.c:247 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "Id.\tId предка.\tCSR Заголовок\t\tКлюч в базе?\n" #: ../src/ca-cli-callbacks.c:275 ../src/ca-cli-callbacks.c:945 #: ../src/ca-cli-callbacks.c:1310 ../src/ca-cli-callbacks.c:1339 msgid "The given CA id. is not valid" msgstr "Заданный идентификатор CA не верен" #: ../src/ca-cli-callbacks.c:328 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "" "Пожалуйста введите данные соответствующие заголовку Запроса на Подпись " "Сертификата:\n" #: ../src/ca-cli-callbacks.c:330 ../src/ca-cli-callbacks.c:453 msgid "Enter country (C)" msgstr "Введите страну (C)" #: ../src/ca-cli-callbacks.c:336 ../src/ca-cli-callbacks.c:459 msgid "Enter state or province (ST)" msgstr "Введите название штата или области (ST)" #: ../src/ca-cli-callbacks.c:342 ../src/ca-cli-callbacks.c:465 msgid "Enter locality or city (L)" msgstr "Введите название местности или города (L)" #: ../src/ca-cli-callbacks.c:348 ../src/ca-cli-callbacks.c:471 msgid "Enter organization (O)" msgstr "Введите название организации (O)" #: ../src/ca-cli-callbacks.c:354 ../src/ca-cli-callbacks.c:477 msgid "Enter organizational unit (OU)" msgstr "Введите название организационной единицы (OU)" #: ../src/ca-cli-callbacks.c:360 ../src/ca-cli-callbacks.c:483 msgid "Enter common name (CN)" msgstr "Введите обычное имя (СN)" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:493 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "Введите тип ключа, который вы будете создавать (RSA/DSA)" #: ../src/ca-cli-callbacks.c:382 ../src/ca-cli-callbacks.c:505 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "Введите битовую длину ключа (должно быть кратно 1024)" #: ../src/ca-cli-callbacks.c:386 #, c-format msgid "These are the provided CSR properties:\n" msgstr "Предоставленные свойства CSR:\n" #: ../src/ca-cli-callbacks.c:388 ../src/ca-cli-callbacks.c:526 #: ../src/ca-cli-callbacks.c:1152 ../src/ca-cli-callbacks.c:1204 #, c-format msgid "Subject:\n" msgstr "Заголовок:\n" #: ../src/ca-cli-callbacks.c:389 ../src/ca-cli-callbacks.c:527 #, c-format msgid "\tDistinguished Name: " msgstr "\tОтличительное Имя (DN): " #: ../src/ca-cli-callbacks.c:403 ../src/ca-cli-callbacks.c:541 #, c-format msgid "Key pair\n" msgstr "Пара ключей\n" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:542 #, c-format msgid "\tType: %s\n" msgstr "\tТип: %s\n" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:543 #, c-format msgid "\tKey bitlength: %d\n" msgstr "\tБитовая длина ключа: %d\n" #: ../src/ca-cli-callbacks.c:407 ../src/ca-cli-callbacks.c:554 msgid "Do you want to change anything? Yes/[No] " msgstr "Хотите ли вы изменить всё? Да/[Нет] " #: ../src/ca-cli-callbacks.c:411 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "Вы создаёте Запрос на Подпись Сертификата с такими свойствами." #: ../src/ca-cli-callbacks.c:412 ../src/ca-cli-callbacks.c:559 msgid "Are you sure? [Yes]/No " msgstr "Вы уверены? [Да]/Нет " #: ../src/ca-cli-callbacks.c:417 ../src/ca-cli-callbacks.c:564 #: ../src/ca-cli-callbacks.c:648 ../src/ca-cli-callbacks.c:779 #: ../src/ca-cli-callbacks.c:902 ../src/ca-cli-callbacks.c:931 #: ../src/ca-cli-callbacks.c:997 ../src/ca-cli-callbacks.c:1024 #: ../src/ca-cli-callbacks.c:1052 ../src/ca-cli-callbacks.c:1067 #: ../src/ca-cli-callbacks.c:1369 ../src/ca-cli-callbacks.c:1412 #, c-format msgid "Operation cancelled.\n" msgstr "Действие отменено.\n" #: ../src/ca-cli-callbacks.c:451 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "" "Пожалуйста введите данные соответствующие заголовку нового Центра " "Авторизации:\n" #: ../src/ca-cli-callbacks.c:510 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" "Введите количество месяцев до истечения срока нового центра авторизации" #: ../src/ca-cli-callbacks.c:524 #, c-format msgid "These are the provided new CA properties:\n" msgstr "Заданные свойства нового CA:\n" #: ../src/ca-cli-callbacks.c:544 #, c-format msgid "Validity\n" msgstr "Годность\n" #: ../src/ca-cli-callbacks.c:545 ../src/ca-cli-callbacks.c:1160 #, c-format msgid "Validity:\n" msgstr "Годность:\n" #: ../src/ca-cli-callbacks.c:548 ../src/ca-cli-callbacks.c:1163 #, c-format msgid "\tActivated on: %s\n" msgstr "\tАктивирован: %s\n" #: ../src/ca-cli-callbacks.c:552 ../src/ca-cli-callbacks.c:1167 #, c-format msgid "\tExpires on: %s\n" msgstr "\tСрок истекает: %s\n" #: ../src/ca-cli-callbacks.c:558 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "Вы создаёте новый Центр Авторизации со следующими свойствами." #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:632 #: ../src/ca-cli-callbacks.c:1137 msgid "The given certificate id. is not valid" msgstr "Заданный номер сертификата не верен" #: ../src/ca-cli-callbacks.c:591 ../src/ca-cli-callbacks.c:615 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "Закрытый ключ извлечён успешно в файл '%s'\n" #: ../src/ca-cli-callbacks.c:608 ../src/ca-cli-callbacks.c:760 #: ../src/ca-cli-callbacks.c:915 ../src/ca-cli-callbacks.c:1193 msgid "The given CSR id. is not valid" msgstr "Заданный номер CSR не верен" #: ../src/ca-cli-callbacks.c:638 msgid "This certificate will be revoked." msgstr "Сертификат будет отозван." #: ../src/ca-cli-callbacks.c:644 #, c-format msgid "Certificate revoked.\n" msgstr "Сертификат отозван.\n" #: ../src/ca-cli-callbacks.c:658 ../src/ca-cli-callbacks.c:1174 #, c-format msgid "Certificate uses:\n" msgstr "Сертификат использует:\n" #: ../src/ca-cli-callbacks.c:661 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "* Использование Центра Сертификации включено.\n" #: ../src/ca-cli-callbacks.c:663 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "* Использование Центра Сертификации отключено.\n" #: ../src/ca-cli-callbacks.c:667 #, c-format msgid "* CRL signing use enabled.\n" msgstr "* Использование подписывания CRL включено.\n" #: ../src/ca-cli-callbacks.c:669 #, c-format msgid "* CRL signing use disabled.\n" msgstr "* Использование для подписи CRL отключено.\n" #: ../src/ca-cli-callbacks.c:673 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "* Использование для цифровой подписи разрешено.\n" #: ../src/ca-cli-callbacks.c:675 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "* Использование для цифровой подписи запрещено.\n" #: ../src/ca-cli-callbacks.c:679 ../src/ca-cli-callbacks.c:681 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "* Использование для шифрования данных разрешено.\n" #: ../src/ca-cli-callbacks.c:685 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "* Использование для шифрования ключей разрешено.\n" #: ../src/ca-cli-callbacks.c:687 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "* Использование для шифрования ключей запрещено.\n" #: ../src/ca-cli-callbacks.c:691 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "" "* Использование для удостоверения в невозможности отказа разрешено.\n" #: ../src/ca-cli-callbacks.c:693 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "" "* Использование для удостоверения в невозможности отказа запрещено.\n" #: ../src/ca-cli-callbacks.c:697 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "Использование для согласования ключей разрешено.\n" #: ../src/ca-cli-callbacks.c:699 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "Использование для согласования ключей запрещено.\n" #: ../src/ca-cli-callbacks.c:702 #, c-format msgid "Certificate purposes:\n" msgstr "Назначение сертификата:\n" #: ../src/ca-cli-callbacks.c:705 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "* Назначение для защиты эл.почты разрешено.\n" #: ../src/ca-cli-callbacks.c:707 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "* Назначение для защиты эл.почты запрещено.\n" #: ../src/ca-cli-callbacks.c:711 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "* Назначение для подписи кода разрешено.\n" #: ../src/ca-cli-callbacks.c:713 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "* Назначение для подписи кода запрещено.\n" #: ../src/ca-cli-callbacks.c:717 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "* Назначение как TLS Веб клиент разрешено.\n" #: ../src/ca-cli-callbacks.c:719 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "* Назначение как TLS Веб клиент запрещено.\n" #: ../src/ca-cli-callbacks.c:723 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "* Назначение как TLS Веб сервер разрешено.\n" #: ../src/ca-cli-callbacks.c:725 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "* Назначение как TLS Веб сервер запрещено.\n" #: ../src/ca-cli-callbacks.c:729 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "* Назначение для отметки времени разрешено.\n" #: ../src/ca-cli-callbacks.c:731 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "* Назначение для отметки времени запрещено.\n" #: ../src/ca-cli-callbacks.c:735 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "Назначение для подписи OCSP разрешено.\n" #: ../src/ca-cli-callbacks.c:737 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "Назначение для подписи OCSP запрещено.\n" #: ../src/ca-cli-callbacks.c:741 #, c-format msgid "* Any purpose enabled.\n" msgstr "* Любое назначение разрешено.\n" #: ../src/ca-cli-callbacks.c:743 #, c-format msgid "* Any purpose disabled.\n" msgstr "* Любое назначение запрещено.\n" #: ../src/ca-cli-callbacks.c:767 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "Вы собираетесь подписать следующий Запрос на подпись Сертификата:\n" #: ../src/ca-cli-callbacks.c:769 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "с сертификатом, относящимся к следующему CA:\n" #: ../src/ca-cli-callbacks.c:772 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" "Введите количество месяцев до истечения нового сертификата (0 для " "безсрочного)" #: ../src/ca-cli-callbacks.c:782 #, c-format msgid "" "The certificate will be generated with the following uses and purposes:\n" msgstr "" "Сертификат будет сгенерирован для следующего использования и назначения:\n" #: ../src/ca-cli-callbacks.c:800 ../src/ca-cli-callbacks.c:888 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "" "Новый сертификат будет сгенерирован для следующего использования и " "назначения:\n" #: ../src/ca-cli-callbacks.c:803 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "" "Хотите ли вы изменить какое-либо свойство нового сертификата? Да/[Нет] " #: ../src/ca-cli-callbacks.c:806 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "* Разрешить использование для Центра Сертификации? [Да]/Нет " #: ../src/ca-cli-callbacks.c:808 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "* Использование для Центра Сертификации запрещено политикой\n" #: ../src/ca-cli-callbacks.c:812 msgid "* Enable CRL Signing? [Yes]/No " msgstr "* Разрешить подпись CRL? [Да]/Нет " #: ../src/ca-cli-callbacks.c:814 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "* Использование для подписи CRL запрещено политикой\n" #: ../src/ca-cli-callbacks.c:818 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "* Разрешить использование для Цифровой Подписи? [Да]/Нет " #: ../src/ca-cli-callbacks.c:820 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "* Использование для Цифровой Подписи запрещено политикой\n" #: ../src/ca-cli-callbacks.c:824 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "Разрешить использование для Шифрования Данных? [Да]/Нет " #: ../src/ca-cli-callbacks.c:826 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "* Использование для Шифрования Данных запрещено политикой\n" #: ../src/ca-cli-callbacks.c:830 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "Разрешить использование как Ключа Шифрования? [Да]/Нет " #: ../src/ca-cli-callbacks.c:832 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "* Использование как Ключа Шифрования запрещено политикой\n" #: ../src/ca-cli-callbacks.c:836 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "" "Разрешить использование для удостоверения в невозможности отказа (Non-" "Repudiation)? [Да]/Нет " #: ../src/ca-cli-callbacks.c:838 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "" "* Использование для удостоверения в невозможности отказа (Non-Repudiation) " "запрещено политикой\n" #: ../src/ca-cli-callbacks.c:842 msgid "Enable Key Agreement use? [Yes]/No " msgstr "Разрешить использование для Согласования Ключа? [Да]/Нет " #: ../src/ca-cli-callbacks.c:844 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "* Использование для Согласования Ключа запрещено политикой\n" #: ../src/ca-cli-callbacks.c:848 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "Разрешить назначение для Защиты Эл.Почты? [Да]/Нет " #: ../src/ca-cli-callbacks.c:850 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "* Назначение для Защиты Эл.Почты запрещено политикой\n" #: ../src/ca-cli-callbacks.c:854 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "Разрешить назначение для Подписи Кода? [Да]/Нет " #: ../src/ca-cli-callbacks.c:856 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "* Назначения для Подписи Кода запрещено политикой\n" #: ../src/ca-cli-callbacks.c:860 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "Разрешить назначение как TLS веб клиент? [Да]/Нет " #: ../src/ca-cli-callbacks.c:862 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "* Назначение как TLS веб клиент запрещено политикой\n" #: ../src/ca-cli-callbacks.c:866 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "Разрешить назначение как TLS Веб сервер? [Да]/Нет " #: ../src/ca-cli-callbacks.c:868 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "* Назначение как TLS веб сервер запрещено политикой\n" #: ../src/ca-cli-callbacks.c:872 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "Разрешить назначения для Временных Меток? [Да]/Нет " #: ../src/ca-cli-callbacks.c:874 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "* Назначение для Временных Меток запрещено политикой\n" #: ../src/ca-cli-callbacks.c:878 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "Разрешить назначение для подписи OCSP? [Да]/Нет " #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "* Назначение для подписи OCSP запрещено политикой\n" #: ../src/ca-cli-callbacks.c:883 msgid "Enable any purpose? [Yes]/No " msgstr "Разрешить любое назначение? [Да]/Нет " #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "* Любое назначение запрещено политикой\n" #: ../src/ca-cli-callbacks.c:893 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "Все обязательные данные для генерации сертификата были собраны." #: ../src/ca-cli-callbacks.c:893 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "Хотите ли вы продолжить процедуру подписывания? [Да]/Нет " #: ../src/ca-cli-callbacks.c:899 #, c-format msgid "Certificate signed.\n" msgstr "Сертификат подписан.\n" #: ../src/ca-cli-callbacks.c:921 msgid "This Certificate Signing Request will be deleted." msgstr "Этот Запрос на Подпись Сертификата будет удалён." #: ../src/ca-cli-callbacks.c:921 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "Эта операция не может быть отменена. Вы уверены? Да/[Нет] " #: ../src/ca-cli-callbacks.c:927 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "Запрос на Подпись Сертификата удалён.\n" #: ../src/ca-cli-callbacks.c:952 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "Генерация CRL в файл '%s' прошла успешно\n" #: ../src/ca-cli-callbacks.c:969 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "Битовая длинна основного числа должна быть кратна 1024" #: ../src/ca-cli-callbacks.c:978 #, c-format msgid "" "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "Параметры Diffie-Hellman созданы и успешно сохранены в файле '%s'\n" #: ../src/ca-cli-callbacks.c:990 msgid "Currently, the database is not password-protected." msgstr "На данный момент база не защищена паролем." #: ../src/ca-cli-callbacks.c:990 msgid "Do you want to password protect it? [Yes]/No " msgstr "Хотите ли вы защитить её паролем? [Да]/Нет " #: ../src/ca-cli-callbacks.c:991 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" "Хорошо. Вы должны ввести пароль для защиты закрытых ключей в \n" "базе, чтобы никто кроме авторизованных лиц не мог использовать их. Пароль\n" "будет запрошен в то время, когда gnoMint будет использовать закрытый ключ в " "базе." #: ../src/ca-cli-callbacks.c:994 msgid "Insert password:" msgstr "Введите пароль:" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password (confirm):" msgstr "Введите пароль (подтверждение):" #: ../src/ca-cli-callbacks.c:995 ../src/ca-cli-callbacks.c:1065 msgid "The introduced passwords are distinct." msgstr "Введённые пароли различаются." #: ../src/ca-cli-callbacks.c:1006 #, c-format msgid "Password established successfully.\n" msgstr "Пароль успешно установлен.\n" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Nothing done.\n" msgstr "Нечего делать.\n" #: ../src/ca-cli-callbacks.c:1017 msgid "Currently, the database IS password-protected." msgstr "На данный момент, база защищена паролем." #: ../src/ca-cli-callbacks.c:1017 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "Хотите ли вы удалить защиту паролем? Да/[Нет] " #: ../src/ca-cli-callbacks.c:1021 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" "Для удаления парольной защиты необходимо ввести текущий\n" "пароль базы.\n" #: ../src/ca-cli-callbacks.c:1022 ../src/ca-cli-callbacks.c:1050 msgid "Please, insert the current database password (Empty to cancel): " msgstr "Пожалуйста, введите текущий пароль базы (Пустой ввод для отмены): " #: ../src/ca-cli-callbacks.c:1029 ../src/ca-cli-callbacks.c:1057 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" "Текущий пароль который вы ввели\n" "не совпадает с фактическим паролем базы." #: ../src/ca-cli-callbacks.c:1034 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" "Произошла ошибка во время снятия пароля базы. \n" "Операция была отменена." #: ../src/ca-cli-callbacks.c:1039 #, c-format msgid "Password removed successfully.\n" msgstr "Пароль успешно удалён.\n" #: ../src/ca-cli-callbacks.c:1049 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "Вы должны ввести текущий пароль базы перед сменой пароля.\n" #: ../src/ca-cli-callbacks.c:1061 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" "Хорошо. Сейчас вы должны ввести пароль для защиты закрытых ключей в\n" "базе, чтобы никто кроме авторизованных лиц не мог использовать их. Пароль\n" "будет запрашиваться каждый раз, когда gnoMint будет использовать закрытый " "ключ в базе." #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password:" msgstr "Введите новый пароль:" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password (confirm):" msgstr "Введите новый пароль (подтверждение):" #: ../src/ca-cli-callbacks.c:1073 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" "Произошла ошибка во время смены пароля. \n" "Операция была отменена." #: ../src/ca-cli-callbacks.c:1079 #, c-format msgid "Password changed successfully.\n" msgstr "Пароль успешно изменён.\n" #: ../src/ca-cli-callbacks.c:1097 msgid "Problem when importing the given file." msgstr "Проблема при импортировании данного файла." #: ../src/ca-cli-callbacks.c:1100 #, c-format msgid "File imported successfully.\n" msgstr "Файл импортирован успешно.\n" #: ../src/ca-cli-callbacks.c:1116 #, c-format msgid "Directory imported successfully.\n" msgstr "Каталог импортирован успешно.\n" #: ../src/ca-cli-callbacks.c:1145 #, c-format msgid "Certificate:\n" msgstr "Сертификат:\n" #: ../src/ca-cli-callbacks.c:1149 #, c-format msgid "\tSerial number: %s\n" msgstr "\tСерийный номер:%s\n" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1157 #: ../src/ca-cli-callbacks.c:1205 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "\tОпределяющее Имя (DN): %s\n" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1154 #: ../src/ca-cli-callbacks.c:1157 ../src/ca-cli-callbacks.c:1158 msgid "None." msgstr "Нет." #: ../src/ca-cli-callbacks.c:1154 ../src/ca-cli-callbacks.c:1158 #: ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tUnique ID: %s\n" msgstr "\tУникальный ID: %s\n" #: ../src/ca-cli-callbacks.c:1156 #, c-format msgid "Issuer:\n" msgstr "Поставщик:\n" #: ../src/ca-cli-callbacks.c:1169 #, c-format msgid "Fingerprints:\n" msgstr "Отпечатки:\n" #: ../src/ca-cli-callbacks.c:1170 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "\tSHA1 отпечаток: %s\n" #: ../src/ca-cli-callbacks.c:1171 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "\tMD5 отпечаток: %s\n" #: ../src/ca-cli-callbacks.c:1202 #, c-format msgid "Certificate Signing Request:\n" msgstr "Запрос на Подпись Сертификата:\n" #: ../src/ca-cli-callbacks.c:1275 msgid "Generated certs inherit Country from CA " msgstr "" "Сгенерированные сертификаты наследуют Страну от CA " #: ../src/ca-cli-callbacks.c:1276 msgid "Generated certs inherit State from CA " msgstr "" "Сгенерированные сертификаты наследуют Область от CA " " " #: ../src/ca-cli-callbacks.c:1277 msgid "Generated certs inherit Locality from CA " msgstr "" "Сгенерированные сертификаты наследуют Местность от CA " " " #: ../src/ca-cli-callbacks.c:1278 msgid "Generated certs inherit Organization from CA " msgstr "" "Сгенерированные сертификаты наследуют Организацию от CA " #: ../src/ca-cli-callbacks.c:1279 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" "Сгенерированные сертификаты наследуют Организационную Единицу от CA " " " #: ../src/ca-cli-callbacks.c:1280 msgid "Country in generated certs must be the same than in CA " msgstr "" "Страна в сгенерированных сертификатах должны быть такой же как в CA " " " #: ../src/ca-cli-callbacks.c:1281 msgid "State in generated certs must be the same than in CA " msgstr "" "Область в сгенерированных сертификатах должна быть такой же как в CA " " " #: ../src/ca-cli-callbacks.c:1282 msgid "Locality in generated certs must be the same than in CA " msgstr "" "Район в сгенерированных сертификатах должен быть таким же как в CA " #: ../src/ca-cli-callbacks.c:1283 msgid "Organization in generated certs must be the same than in CA " msgstr "" "Организация в сгенерированных сертификатах должна быть такой же как в CA " " " #: ../src/ca-cli-callbacks.c:1284 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "" "Организационная Единица в сгенерированных сертификатах должна быть такой же " "как в CA" #: ../src/ca-cli-callbacks.c:1285 msgid "Maximum number of hours between CRL updates " msgstr "" "Максимальное количество часов между обновлениями CRL " #: ../src/ca-cli-callbacks.c:1286 msgid "Maximum number of months before expiration of new certs " msgstr "" "Максимальное количество месяцев до истечения срока новых сертификатов " " " #: ../src/ca-cli-callbacks.c:1287 msgid "CA use enabled in generated certs " msgstr "" "Использование для CA разрешено в сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1288 msgid "CRL Sign use enabled in generated certs " msgstr "" "Использование для Подписи CRL разрешено в сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1289 msgid "Non reputation use enabled in generated certs " msgstr "" "Использование для заверения невозможности отказа разрешено сгенерированных " "сертификатах " #: ../src/ca-cli-callbacks.c:1290 msgid "Digital signature use enabled in generated certs " msgstr "" "Использование для цифровой подписи разрешено в сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1291 msgid "Key encipherment use enabled in generated certs " msgstr "" "Использование для шифрования ключей разрешено в сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1292 msgid "Key agreement use enabled in generated certs " msgstr "" "Использование для согласования ключей разрешено в сгенерированных " "сертификатах " #: ../src/ca-cli-callbacks.c:1293 msgid "Data encipherment use enabled in generated certs " msgstr "" "Использование для шифрования данных разрешено в сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1294 msgid "TLS web server purpose enabled in generated certs " msgstr "" "Назначение как TLS веб-сервер разрешено в сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1295 msgid "TLS web client purpose enabled in generated certs " msgstr "" "Назначение как TLS веб-клиент разрешено в сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1296 msgid "Time stamping purpose enabled in generated certs " msgstr "" "Назначение для временных меток разрешено сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1297 msgid "Code signing server purpose enabled in generated certs " msgstr "" "Назначение для подписи кода разрешено в сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1298 msgid "Email protection purpose enabled in generated certs " msgstr "" "Назначение для защита почты разрешено в сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1299 msgid "OCSP signing purpose enabled in generated certs " msgstr "" "Назначение для подписи OCSP разрешено в сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1300 msgid "Any purpose enabled in generated certs " msgstr "" "Любое назначение рарешено в сгенерированных сертификатах " " " #: ../src/ca-cli-callbacks.c:1314 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "Отображение политик следующего сертификата:\n" #: ../src/ca-cli-callbacks.c:1316 #, c-format msgid "" "\n" "Policies:\n" msgstr "" "\n" "Политики:\n" #: ../src/ca-cli-callbacks.c:1318 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "Id.\tОписание\t\t\t\t\t\t\t\tЗначение\n" #: ../src/ca-cli-callbacks.c:1344 msgid "The given policy id is not valid" msgstr "Данная политика недействительна" #: ../src/ca-cli-callbacks.c:1356 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%d'." msgstr "" "Вы собираетесь назначить политике\n" "'%s' новое значение '%d'." #: ../src/ca-cli-callbacks.c:1360 ../src/ca-cli-callbacks.c:1404 msgid "Are you sure? Yes/[No] : " msgstr "Вы уверены? Да/[Нет]: " #: ../src/ca-cli-callbacks.c:1365 #, c-format msgid "Policy set correctly to '%d'.\n" msgstr "Политика установлена корректно в '%d'.\n" #: ../src/ca-cli-callbacks.c:1379 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "gnoMint-cli текущие настройки:\n" #: ../src/ca-cli-callbacks.c:1381 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "Id.\tИмя\t\t\tЗначение\n" #: ../src/ca-cli-callbacks.c:1382 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "0\tПоддержка Gnome keyring\t%d\n" #: ../src/ca-cli-callbacks.c:1394 msgid "The given preference id is not valid" msgstr "Заданный id свойств не верный" #: ../src/ca-cli-callbacks.c:1400 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" "Вы собираетесь назначить свойству 'Поддержка Gnome keyring' новое значение " "'%d'." #: ../src/ca-cli-callbacks.c:1422 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" "%s версия %s\n" "%s\n" #: ../src/ca-cli-callbacks.c:1423 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" "\n" "Авторы:\n" "%s\n" "\n" #: ../src/ca-cli-callbacks.c:1424 ../src/ca-cli-callbacks.c:1425 #: ../src/main.c:502 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " David Marín https://launchpad.net/~davefx\n" " aquanaut https://launchpad.net/~thecrux" #: ../src/ca-cli-callbacks.c:1425 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" "Переводчики:\n" "%s\n" #: ../src/ca-cli-callbacks.c:1432 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" "ГАРАНТИИ НА ПРОГРАММУ НЕ ПРЕДОСТАВЛЯЮТСЯ В ТОЙ СТЕПЕНИ, В КАКОЙ ЭТО\n" "ДОПУСКАЕТСЯ ПРИМЕНИМЫМ ПРАВОМ. НАСТОЯЩАЯ ПРОГРАММА ПОСТАВЛЯЕТСЯ\n" "НА УСЛОВИЯХ \"КАК ЕСТЬ\". ЕСЛИ ИНОЕ НЕ УКАЗАНО В ПИСЬМЕННОЙ ФОРМЕ, АВТОР\n" "И/ИЛИ ИНОЙ ПРАВООБЛАДАТЕЛЬ НЕ ПРИНИМАЕТ НА СЕБЯ НИКАКИХ ГАРАНТИЙНЫХ\n" "ОБЯЗАТЕЛЬСТВ, КАК ЯВНО ВЫРАЖЕННЫХ, ТАК И ПОДРАЗУМЕВАЕМЫХ, В ОТНОШЕНИИ\n" "ПРОГРАММЫ, В ТОМ ЧИСЛЕ ПОДРАЗУМЕВАЕМУЮ ГАРАНТИЮ ТОВАРНОГО СОСТОЯНИЯ\n" "ПРИ ПРОДАЖЕ И ПРИГОДНОСТИ ДЛЯ ИСПОЛЬЗОВАНИЯ В КОНКРЕТНЫХ ЦЕЛЯХ, А\n" "ТАКЖЕ ЛЮБЫЕ ИНЫЕ ГАРАНТИИ. ВСЕ РИСКИ, СВЯЗАННЫЕ С КАЧЕСТВОМ И\n" "ПРОИЗВОДИТЕЛЬНОСТЬЮ ПРОГРАММЫ, НЕСЕТ ЛИЦЕНЗИАТ. В СЛУЧАЕ ЕСЛИ В\n" "ПРОГРАММЕ БУДУТ ОБНАРУЖЕНЫ НЕДОСТАТКИ, ВСЕ РАСХОДЫ, СВЯЗАННЫЕ С\n" "ТЕХНИЧЕСКИМ ОБСЛУЖИВАНИЕМ, РЕМОНТОМ ИЛИ ИСПРАВЛЕНИЕМ ПРОГРАММЫ,\n" "НЕСЕТ ЛИЦЕНЗИАТ.\n" "\n" "Для подробной информации о гарантии смотрите секцию 15 Стандартной\n" "Общественной Лицензией GNU. Вы должны были получить копию Стандартной\n" "Общественной Лицензией GNU с этой программой. Если нет, смотрите\n" ".\n" "\n" #: ../src/ca-cli-callbacks.c:1450 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" "Данная программа является свободным программным обеспечением.\n" "Вы вправе распространять ее и/или модифицировать в соответствии с\n" "условиями версии 3 либо по вашему выбору с условиями более поздней\n" "версии Стандартной Общественной Лицензии GNU, опубликованной Free\n" "Software Foundation.\n" "\n" "Мы распространяем данную программу в надежде на то, что она будет вам\n" "полезной, однако НЕ ПРЕДОСТАВЛЯЕМ НА НЕЕ НИКАКИХ ГАРАНТИЙ, в том числе\n" "ГАРАНТИИ ТОВАРНОГО СОСТОЯНИЯ ПРИ ПРОДАЖЕ и ПРИГОДНОСТИ ДЛЯ\n" "ИСПОЛЬЗОВАНИЯ В КОНКРЕТНЫХ ЦЕЛЯХ. Для получения более подробной\n" "информации ознакомьтесь со Стандартной Общественной Лицензией GNU.\n" "\n" "Вместе с данной программой вы должны были получить экземпляр Стандартной\n" "Общественной Лицензии GNU. Если вы его не получили, смотрите\n" ".\n" "\n" #: ../src/ca-cli-callbacks.c:1465 #, c-format msgid "%s version %s\n" msgstr "%s версия %s\n" #: ../src/ca-cli-callbacks.c:1474 #, c-format msgid "Available commands:\n" msgstr "Доступные команды:\n" #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "===================\n" msgstr "===================\n" #: ../src/ca-cli-callbacks.c:1485 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "Выход из gnomint-cli...\n" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "Создание новой пары ключей RSA" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "Создание ключей не удалось" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "Создание новой пары ключей DSA" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "Создание самоподписанного корневого сертификата CA" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "Создание сертификата не удалось" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "Создание базы CA" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "Создание базы CA не удалось" #: ../src/ca_creation.c:144 msgid "CA generated successfully" msgstr "CA успешно создан" #: ../src/ca_file.c:196 #, c-format msgid "Error opening filename '%s'" msgstr "Ошибка при открытии файла '%s'" #: ../src/ca_file.c:299 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" "Выбранная база была создана в более новой версии gnoMint, чем установленная." #: ../src/ca_file.c:1311 msgid "Cannot find parent CA in database" msgstr "Не могу найти родительский CA в базе" #: ../src/ca_file.c:1499 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "Сертификат уже существует в базе: не могу вставить его повторно." #: ../src/ca_file.c:1930 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" "Данный файл содержит действительный закрытый ключ. Однако, он не был " "импортирован в базу, поскольку он не соответствует какому-либо сертификату " "или запросу на подпись сертификата без ключа в базе." #: ../src/ca_file.c:1933 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" "Данный файл содержит действительный закрытый ключ. Однако, он не был " "импортирован в базу, поскольку он не соответствует какому-либо сертификату " "без ключа в базе." #: ../src/certificate_properties.c:356 ../src/tls.c:1054 msgid "Certificate signing" msgstr "Подпись сертификата" #: ../src/certificate_properties.c:360 msgid "Key encipherment only" msgstr "Только шифрование ключа" #: ../src/certificate_properties.c:362 msgid "Key decipherment only" msgstr "Только дешифрование ключа" #: ../src/certificate_properties.c:376 msgid "Version" msgstr "Версия" #: ../src/certificate_properties.c:411 msgid "Serial Number" msgstr "Серийный номер" #: ../src/certificate_properties.c:427 ../src/certificate_properties.c:1060 msgid "Signature" msgstr "Подпись" #: ../src/certificate_properties.c:430 ../src/certificate_properties.c:558 #: ../src/certificate_properties.c:561 ../src/certificate_properties.c:1027 msgid "Algorithm" msgstr "Алгоритм" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:594 ../src/certificate_properties.c:622 #: ../src/certificate_properties.c:1030 msgid "Parameters" msgstr "Параметры" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:622 ../src/certificate_properties.c:624 #: ../src/certificate_properties.c:635 ../src/certificate_properties.c:644 #: ../src/certificate_properties.c:1031 msgid "(unknown)" msgstr "(неизвестно)" #: ../src/certificate_properties.c:465 msgid "Issuer" msgstr "Издатель" #: ../src/certificate_properties.c:493 msgid "Validity" msgstr "Действительность" #: ../src/certificate_properties.c:496 msgid "Not Before" msgstr "Не ранее" #: ../src/certificate_properties.c:499 msgid "Not After" msgstr "Не позднее" #: ../src/certificate_properties.c:555 msgid "Subject Public Key Info" msgstr "Информация заголовока публичного ключа" #: ../src/certificate_properties.c:568 msgid "RSA PublicKey" msgstr "Публичный ключ RSA" #: ../src/certificate_properties.c:578 msgid "Modulus" msgstr "Модуль" #: ../src/certificate_properties.c:584 msgid "Public Exponent" msgstr "Открытый показатель степени" #: ../src/certificate_properties.c:617 msgid "DSA PublicKey" msgstr "Публичный ключ DSA" #: ../src/certificate_properties.c:624 msgid "Subject Public Key" msgstr "Заголовок Публичного Ключа" #: ../src/certificate_properties.c:635 msgid "Issuer Unique ID" msgstr "Уникальный идентификатор издателя" #: ../src/certificate_properties.c:644 msgid "Subject Unique ID" msgstr "Уникальный идентификатор заголовка" #: ../src/certificate_properties.c:666 ../src/certificate_properties.c:689 #: ../src/certificate_properties.c:758 ../src/certificate_properties.c:862 #: ../src/certificate_properties.c:890 ../src/certificate_properties.c:930 #: ../src/certificate_properties.c:987 ../src/certificate_properties.c:1112 msgid "Value" msgstr "Значение" #: ../src/certificate_properties.c:728 ../src/certificate_properties.c:832 msgid "DNS Name" msgstr "Имя DNS" #: ../src/certificate_properties.c:733 ../src/certificate_properties.c:837 msgid "RFC822 Name" msgstr "Имя RFC822" #: ../src/certificate_properties.c:738 ../src/certificate_properties.c:842 msgid "URI" msgstr "URI" #: ../src/certificate_properties.c:744 msgid "IP" msgstr "IP" #: ../src/certificate_properties.c:751 ../src/certificate_properties.c:855 msgid "Directory Name" msgstr "Название каталога" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "TRUE" msgstr "ИСТИННО" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "FALSE" msgstr "ЛОЖНО" #: ../src/certificate_properties.c:790 msgid "CA" msgstr "CA" #: ../src/certificate_properties.c:794 msgid "Path Length Constraint" msgstr "Ограничение длины пути" #: ../src/certificate_properties.c:848 msgid "IP Address" msgstr "IP адрес" #: ../src/certificate_properties.c:963 msgid "Extensions" msgstr "Расширения" #: ../src/certificate_properties.c:972 msgid "Critical" msgstr "Критический" #: ../src/certificate_properties.c:1000 msgid "Certificate" msgstr "Сертификат" #: ../src/certificate_properties.c:1025 msgid "Signature Algorithm" msgstr "Алгоритм подписи" #: ../src/certificate_properties.c:1108 msgid "Name" msgstr "Имя" #: ../src/certificate_properties.c:1124 ../src/tls.c:1070 msgid "TLS WWW Server" msgstr "TLS WWW Сервер" #: ../src/certificate_properties.c:1125 msgid "TLS WWW Client" msgstr "TLS WWW Клиент" #: ../src/certificate_properties.c:1131 msgid "Subject Directory Attributes" msgstr "Заголовок Атрибуты Каталога" #: ../src/certificate_properties.c:1132 msgid "Subject Key Identifier" msgstr "Заголовок Идентификатор Ключа" #: ../src/certificate_properties.c:1133 msgid "Key Usage" msgstr "Использование ключа" #: ../src/certificate_properties.c:1134 msgid "Private Key Usage Period" msgstr "Период использования Закрытого Ключа" #: ../src/certificate_properties.c:1135 msgid "Subject Alternative Name" msgstr "Заголовок Альтернативное Имя" #: ../src/certificate_properties.c:1136 msgid "Basic Constraints" msgstr "Основные ограничения" #: ../src/certificate_properties.c:1137 msgid "Name Constraints" msgstr "Название ограничений" #: ../src/certificate_properties.c:1138 msgid "CRL Distribution Points" msgstr "Точки распространения CRL" #: ../src/certificate_properties.c:1139 msgid "Certificate Policies" msgstr "Политики Сертификата" #: ../src/certificate_properties.c:1140 msgid "Policy Mappings" msgstr "Соответствия политики" #: ../src/certificate_properties.c:1141 msgid "Authority Key Identifier" msgstr "Идентификатор Ключа Авторизации" #: ../src/certificate_properties.c:1142 msgid "Policy Constraints" msgstr "Ограничения Политики" #: ../src/certificate_properties.c:1143 msgid "Extended Key Usage" msgstr "Расширенное использование ключа" #: ../src/certificate_properties.c:1144 msgid "Delta CRL Distribution Point" msgstr "Точка распространения дополнительного CRL" #: ../src/certificate_properties.c:1145 msgid "Inhibit Any-Policy" msgstr "Запрет любой политики" #: ../src/creation_process_window.c:79 msgid "CA creation process finished" msgstr "Процесс создания CA завершён" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "Процесс создания отменён" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "Процесс создания CSR завершён" #: ../src/creation_process_window.c:274 msgid "Creating Certificate Signing Request" msgstr "Содание Запроса на Подпись Сертификата" #: ../src/crl.c:250 msgid "Export Certificate Revocation List" msgstr "Экспорт списка отозванных сертификатов" #: ../src/crl.c:280 msgid "CRL generated successfully" msgstr "CRL создан успешно" #: ../src/crl.c:309 ../src/crl.c:371 ../src/crl.c:382 msgid "There was an error while exporting CRL." msgstr "Произошла ошибка при экспорте CRL." #: ../src/crl.c:320 msgid "There was an error while getting revoked certificates." msgstr "Произошла ошибка при получении отозванных сертификатов." #: ../src/crl.c:336 ../src/crl.c:355 msgid "There was an error while generating CRL." msgstr "Произошла ошибка при создании CRL." #: ../src/crl.c:363 msgid "There was an error while writing CRL." msgstr "Произошла ошибка при записи CRL." #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "Создание CSR" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "Оздание CSR не удалось" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "Запись CSR в базу" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "CSR не может быть сохранено" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "CSR успешно создан" #: ../src/csr_properties.c:78 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" "Этот Запрос на Подпись Сертификата имеет соответствующий закрытый ключ, " "сохранённый во внешнем файле." #: ../src/dialog.c:79 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" "\n" "Пароль должен содержать по крайне мере %d символов\n" #: ../src/dialog.c:103 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "Список утвердительных ответов, разделённых #|Yes#yes#Y#y" #: ../src/dialog.c:104 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "Список отрицательных ответов, разделённых #|No#no#N#n" #: ../src/dialog.c:372 msgid "To do. Feature not implemented yet." msgstr "Предстоит сделать. Возможность пока не реализована." #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "Произошла ошибка при сохранении параметров Diffie-Hellman." #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "Произошла ошибка во время экспорта закрытого ключа" #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "Произошла ошибка во время получения закрытого ключа." #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "Произошла ошибка при расшифровке закрытого ключа." #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" "Вы должны указать парольную фразу для защиты экспортируемого закрытого " "ключа, чтобы никто, кроме авторизованных лиц, не мог использовать его. Эта " "парольная фраза будет запрашиваться любым приложением, которое будет " "использовать закрытый ключ." #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "Введите парольную фразу (8 символов или больше)" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "Введите парольную фразу (подтвердение):" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "Введённые парольные фразы отличаются." #: ../src/export.c:110 msgid "Operation cancelled." msgstr "Операция отменена." #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "Произошла ошибка при защите паролем закрытого ключа." #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "Произошла ошибка во время расшифровки закрытого ключа." #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "Неподдерживаемая операция: вы не можете создать PKCS#12 для CSR." #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" "Произошла ошибка во время получения сертификата и закрытого ключа из " "внутренней базы." #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" "Вы должны задать парольную фразу для защиты экспортированного сертификата, " "чтобы никто другой, а только авторизованные люди могли использовать его. Эта " "парольный фраза будет запрошены любым приложением, которое будет " "импортировать сертификат." #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "Произошла ошибка во время генерации PKCS#12 пакета." #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "Произошла ошибка во время экспорта сертификата." #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "- управление Центром Авторизации" #: ../src/gnomint-cli.c:59 ../src/main.c:129 #, c-format msgid "Failed to initialize: %s\n" msgstr "Не удалось инициализировать: %s\n" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" "Весь выбранный файл или часть его элементов, похоже\n" "зашифровано с использованием пароля или парольной фразы.\n" "Для импорта файла в базу gnoMint, вы должны ввести \n" "соответствующий пароль.\n" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "Пожалуйста, введите пароль для `%s'" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" "Не могу импортировать запрос сертификата. \n" "База вернула такую ошибку: \n" "\n" "'%s'" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" "Не могу импортировать сертификат. \n" "База вернула такую ошибку: \n" "\n" "'%s'" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "Зашифрованный закрытый ключ PKCS#8" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" "Данный пароль не соответствует тому, который был использован для шифрования " "этой части" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "Зашифрованный пакет PKCS#12" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" "Данный пароль не соответствует паролю, использованному для шифрования этой " "части." #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "Не могу найти какой-либо поддерживаемый формат в данному файле" #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "Не могу открыть файл %s. Проверьте права." #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "Не могу распознать файл %s как RSA или DSA закрытый ключ." #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "Закрытый ключ для %s" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "Закрытый ключ %s" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "Проблема при вызове openssl для дешифрования закрытого ключа." #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" "OpenSSL вернул следующую ошибку при попытке дешифирования закрытого ключа:\n" "\n" "%s" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "Произошла ошибка при импорте открытого корневого сертификата CA" #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "Корневой сертификат CA" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" "Произошла ошибка при импорте закрытого ключа, соответствующего корневому " "сертификату CA" #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "Произошла ошибка при открытии каталога сертификатов/." #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "Произошла ошибка при открытии каталога newcerts/." #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "Произошла ошибка при открытии каталога req." #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "Произошла ошибка при открытии каталога crl/." #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "Произошла ошибка при открытии каталога keys/." #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" "Файлы в каталоге не принадлежат какому-либо поддерживаемому формату CA." #: ../src/main.c:126 msgid "- A graphical Certification Authority manager" msgstr "- графический менеджер Центра Авторизации" #: ../src/main.c:285 msgid "Create new CA database" msgstr "Создать новую базу CA" #: ../src/main.c:323 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" "Проблема при создании базы CA '%s':\n" "%s" #: ../src/main.c:336 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "Проблема при открытии новой '%s' базы CA" #: ../src/main.c:357 msgid "Open CA database" msgstr "Открыть базу CA" #: ../src/main.c:380 ../src/main.c:420 #, c-format msgid "Problem when opening '%s' CA database" msgstr "Проблема при открытии базы CA '%s'" #: ../src/main.c:445 msgid "Save CA database as..." msgstr "Сохранить базу CA как..." #: ../src/main.c:497 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" "gnoMint это программа для создания и управления Центром Сертификации и его " "сертификатами" #: ../src/main.c:498 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" "Данная программа является свободным программным обеспечением. Вы вправе " "распространять ее и/или модифицировать в соответствии с условиями версии 3 " "либо по вашему выбору с условиями более поздней версии Стандартной " "Общественной Лицензии GNU, опубликованной Free Software Foundation.\n" "\n" "Мы распространяем данную программу в надежде на то, что она будет вам " "полезной, однако НЕ ПРЕДОСТАВЛЯЕМ НА НЕЕ НИКАКИХ ГАРАНТИЙ, в том числе " "ГАРАНТИИ ТОВАРНОГО СОСТОЯНИЯ ПРИ ПРОДАЖЕ и ПРИГОДНОСТИ ДЛЯ ИСПОЛЬЗОВАНИЯ В " "КОНКРЕТНЫХ ЦЕЛЯХ. Для получения более подробной информации ознакомьтесь со " "Стандартной Общественной Лицензией GNU.\n" "\n" "Вместе с данной программой вы должны были получить экземпляр Стандартной " "Общественной Лицензии GNU. Если вы его не получили, сообщите об этом в Free " "Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-" "1307, USA." #: ../src/new_cert.c:329 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" "Политика данного CA требует, чтобы поле страны сертификата было таким же как " "в сертификате CA." #: ../src/new_cert.c:335 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" "Политика данного CA требует, чтобы поле области сертификата было таким же " "как в сертификате CA." #: ../src/new_cert.c:341 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" "Политика данного CA требует, чтобы поле района/города сертификата было таким " "же как в сертификате CA." #: ../src/new_cert.c:347 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" "Политика данного CA требует, чтобы поле организация сертификата было таким " "же как в сертификате CA." #: ../src/new_cert.c:353 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" "Политика данного CA требует, чтобы поле организационная единица сертификата " "было таким же как в сертификате CA." #: ../src/new_cert.c:799 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" "Срок истечения нового сертификата превышает срок истечения CA сертификата.\n" "В соответствии с текущими стандартами, это не допускается. Новый сертификат " "будет создан с тем же сроком истечения, что и CA сертификат." #: ../src/new_cert.c:815 msgid "Error while signing CSR." msgstr "Ошибка при подписи CSR." #: ../src/pkey_manage.c:80 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" "Файл, содержащий закрытый ключ сертификата '%s' защищён паролем.\n" "\n" "Пожалуйста, введите пароль, соответствующий этому файлу." #: ../src/pkey_manage.c:125 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" "Файл, содержащий закрытый ключ для сертификата\n" "'%s' защищён паролем.\n" "\n" #: ../src/pkey_manage.c:171 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" "Данный пароль не совпадает с тем, который был использован при шифровании " "файла." #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:187 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" "Выделенный файл в базе содержит закрытый ключ, но это не закрытый ключ " "соответствующий сертификату." #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:191 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" "Выделенный файл в базе не содержит какой-либо распознанный закрытый ключ." #. The file cannot be opened #: ../src/pkey_manage.c:196 msgid "The file designated in database couldn't be opened." msgstr "Назначенный файл в базе не может быть открыт." #. The file doesn't exist #: ../src/pkey_manage.c:201 msgid "The file designated in database doesn't exist." msgstr "Назначенный файл в базе не существует." #: ../src/pkey_manage.c:760 ../src/pkey_manage.c:811 msgid "The given password doesn't match the one used in the database" msgstr "Данный пароль не совпадает с тем, который был использован в базе." #: ../src/pkey_manage.c:798 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" "Это действие требует использование одного или более закрытых ключей, " "сохранённых в базе.\n" #: ../src/pkey_manage.c:799 msgid "Please insert the database password:" msgstr "Пожалуйста введите пароль базы:" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "Ошибка при инициализации структуры закрытого ключа." #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "Ошибка при создании закрытого ключа: %d" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:553 ../src/tls.c:855 #, c-format msgid "Error exporting private key to PEM structure." msgstr "Ошибка при экспорте закрытого ключа в PEM структуру." #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "Ошибка при инициализации структуры сертификата" #: ../src/tls.c:441 ../src/tls.c:689 #, c-format msgid "Error when setting certificate version" msgstr "Ошибка при установке версии сертификата" #: ../src/tls.c:451 ../src/tls.c:702 #, c-format msgid "Error when setting certificate serial number" msgstr "Ошибка при задании серийного номера сертификата" #: ../src/tls.c:460 ../src/tls.c:711 #, c-format msgid "Error when setting activation time" msgstr "Ошибка при установке времени активации" #: ../src/tls.c:465 ../src/tls.c:719 #, c-format msgid "Error when setting expiration time" msgstr "Ошибка при задании времени истечения срока" #: ../src/tls.c:511 ../src/tls.c:768 #, c-format msgid "Error when setting basicConstraint extension" msgstr "Ошибка при установке расширения основных ограничений" #: ../src/tls.c:516 ../src/tls.c:810 #, c-format msgid "Error when setting keyUsage extension" msgstr "Ошибка при установке расширения использования ключей" #: ../src/tls.c:527 ../src/tls.c:784 #, c-format msgid "Error when setting subject key identifier extension" msgstr "Ошибка при установке расширения заголовка идентификатора ключа" #: ../src/tls.c:531 ../src/tls.c:758 #, c-format msgid "Error when setting authority key identifier extension" msgstr "Ошибка при установке расширения идентификатора центра ключа" #: ../src/tls.c:541 #, c-format msgid "Error when signing self-signed certificate" msgstr "ошибка при подписи самоподписанного сертификата" #: ../src/tls.c:571 #, c-format msgid "Error when initializing csr structure" msgstr "ошибка при инициализации csr структуры" #: ../src/tls.c:575 #, c-format msgid "Error when setting csr version" msgstr "Ошибка при установке версии csr" #: ../src/tls.c:608 #, c-format msgid "Error when signing self-signed csr" msgstr "Ошибка при подписи самоподписанного csr" #: ../src/tls.c:619 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "Ошибка при экспорте CSR в PEM структуру." #: ../src/tls.c:673 #, c-format msgid "Error when initializing crt structure" msgstr "Ошибка при инициализации crt структуры" #: ../src/tls.c:681 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "Ошибка при копировании данных из CSR в структуру сертификата" #: ../src/tls.c:840 #, c-format msgid "Error when signing certificate" msgstr "Ошибка при подписи сертификата" #: ../src/tls.c:1058 msgid "Key encipher only" msgstr "Только для ключа шифрования" #: ../src/tls.c:1060 msgid "Key decipher only" msgstr "Только для ключа дешифрования" #: ../src/tls.c:1072 msgid "TLS WWW Client." msgstr "TLS WWW Клиент." gnomint-1.3.0/po/ChangeLog0000664000175000017500000000406212672052326012310 000000000000002006-09-14 davefx * TODO, gui/gnomint.glade, POTFILES.in, es.po, gnomint.pot, src/ca.c, src/ca.h, src/ca_file.c, src/ca_file.h, src/new_cert_window.c, src/tls.c: Uploading first functional version 0.1-rc1. Now let's fix bugs 2006-09-13 davefx * TODO, es.po, gnomint.pot: Updating translations 2006-09-11 davefx * TODO, configure.in, gui/gnomint.glade, POTFILES.in, es.po, src/Makefile.am, src/ca.c, src/ca_file.c, src/certificate_properties.c, src/certificate_properties.h, src/main.c, src/new_cert_creation_process.c, src/tls.c, src/tls.h: Adding TODO. Completing certificate-properties window 2006-05-30 davefx * configure.in, gui/gnomint.glade, es.po, gnomint.pot, src/Makefile.am, src/main.c: Adding new window for create certificates 2006-05-29 davefx * gui/gnomint.glade, POTFILES.in, es.po, gnomint.pot, src/ca.c: Updating treeview. Now showing correct dates 2006-05-20 davefx * gui/gnomint.glade, POTFILES.in, es.po, src/Makefile.am, src/ca_creation.c, src/ca_creation.h, src/ca_file.c, src/ca_file.h, src/main.c, src/new_ca_creation_process.c, src/new_ca_window.c, src/ssl.c, src/ssl.h: Updating last changes 2006-05-03 davefx * configure.in, es.po, gnomint.pot, src/Makefile.am, src/ca_creation.c, src/new_ca_creation_process.c: Subiendo cambios 2006-05-02 davefx * configure.in, gui/gnomint.glade, POTFILES.in, es.po, gnomint.pot, src/Makefile.am, src/ca_creation.c, src/ca_creation.h, src/main.c, src/new_ca_creation_process.c, src/new_ca_creation_process.h, src/new_ca_window.c, src/new_ca_window.h, src/ssl.c, src/ssl.h: Subiendo cambios 2006-05-01 davefx * es.po: *** empty log message *** * es.po: *** empty log message *** * Makefile.am, configure.in, gui/gnomint.glade, POTFILES.in, src/Makefile.am, src/main.c, src/new_ca_window.c, src/new_ca_window.h: Subiendo avances 2006-04-29 davefx * gui/gnomint.glade, es.po, gnomint.pot: Actualizando * POTFILES.in, gnomint.pot: Añadiendo gnomint.pot * Makefile.am, configure.in, POTFILES.in: Subiendo cambios * gui, ., src/gui: gnomint-1.3.0/po/oc.po0000664000175000017500000022154312672052326011504 00000000000000# Occitan (post 1500) translation for gnomint # Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 # This file is distributed under the same license as the gnomint package. # FIRST AUTHOR , 2010. # msgid "" msgstr "" "Project-Id-Version: gnomint\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2009-06-03 23:09+0200\n" "PO-Revision-Date: 2010-05-16 15:17+0000\n" "Last-Translator: Cédric VALMARY (Tot en òc) \n" "Language-Team: Occitan (post 1500) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-08-11 09:00+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "" #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "" #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "" #: ../gui/gnomint.glade.h:1 msgid " " msgstr " " #: ../gui/gnomint.glade.h:2 msgid "CSR subject" msgstr "" #: ../gui/gnomint.glade.h:3 msgid "Certificate fields" msgstr "" #: ../gui/gnomint.glade.h:4 msgid "Certificate hierarchy" msgstr "" #: ../gui/gnomint.glade.h:5 msgid "Certificate purposes" msgstr "" #: ../gui/gnomint.glade.h:6 msgid "Certificate subject" msgstr "" #: ../gui/gnomint.glade.h:7 msgid "Certificate uses" msgstr "" #: ../gui/gnomint.glade.h:8 msgid "Emmited by" msgstr "" #: ../gui/gnomint.glade.h:9 msgid "Fingerprints" msgstr "Emprenchas digitalas" #: ../gui/gnomint.glade.h:10 msgid "Inherited fields from CA subject" msgstr "" #: ../gui/gnomint.glade.h:11 msgid "Purposes of new generated certificates" msgstr "" #: ../gui/gnomint.glade.h:12 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in the internal database." msgstr "" #: ../gui/gnomint.glade.h:13 msgid "This certificate has been verified for the following uses:" msgstr "" #: ../gui/gnomint.glade.h:14 msgid "Uses of new generated certificates" msgstr "" #: ../gui/gnomint.glade.h:15 msgid "Validity" msgstr "" #: ../gui/gnomint.glade.h:16 msgid "New Certificate Revocation List" msgstr "" #: ../gui/gnomint.glade.h:17 msgid "CA Properties\n" msgstr "" #: ../gui/gnomint.glade.h:19 msgid "CA Root certificate properties\n" msgstr "" #: ../gui/gnomint.glade.h:21 msgid "Certificate Request Properties\n" msgstr "" #: ../gui/gnomint.glade.h:23 msgid "" "Choose private key file\n" "\n" "For doing the selected operation, you must provide the file where resides " "the private key corresponding to the certificate:" msgstr "" #: ../gui/gnomint.glade.h:26 msgid "New Certificate Properties\n" msgstr "" #: ../gui/gnomint.glade.h:28 msgid "Password protection\n" msgstr "" #: ../gui/gnomint.glade.h:30 msgid "" "Export both (private and public) parts to a password-protected PKCS#12 " "file. This kind of file can be imported by other common programs, such as " "web or mail clients." msgstr "" #: ../gui/gnomint.glade.h:31 msgid "Export only the certificate to a public file, in PEM format." msgstr "" #: ../gui/gnomint.glade.h:32 msgid "" "Export the saved private key to a PEM file. This option should only be " "used for exporting certificates that will be used in unattended servers." msgstr "" #: ../gui/gnomint.glade.h:33 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the certificate." msgstr "" #: ../gui/gnomint.glade.h:34 msgid "" "Import a directory containing the structure of\n" "a whole CA made with OpenSSL ." msgstr "" #: ../gui/gnomint.glade.h:36 msgid "" "Import a single file, encoded in DER or PEM format, containing " "certificates, private keys (encrypted or plain), signing requests (CSRs), " "revocation lists (CRLs) or PKCS#12 packages." msgstr "" #: ../gui/gnomint.glade.h:37 msgid "" "\n" "It is recommended that all the certificates generated by a CA share the same " "properties.\n" "If you want to generate certificates with different properties, you should " "create a hierarchy of CAs, each one with its own policy for certificate " "generation.\n" "\n" "Please, define the maximum set of properties for the certificates that this " "CA will be able to generate:\n" msgstr "" #: ../gui/gnomint.glade.h:43 msgid "#Description#" msgstr "" #: ../gui/gnomint.glade.h:44 msgid "" "PKCS#3 files containing Diffie·Hellman parameters are used by " "some cryptographic \n" "applications for a secure interchange of their keys over insecure " "channels." msgstr "" #: ../gui/gnomint.glade.h:46 msgid "" "The part that is being imported has the description:" msgstr "" #: ../gui/gnomint.glade.h:47 msgid "" "The subject of the new certificate request can inherit information " "from one of the existing Certification Authorities. This is a must if the " "policy of the CA you are going to use is defined to force some fields of a " "certificate subject to be the same as the ones in the CA cert " "subject." msgstr "" #: ../gui/gnomint.glade.h:48 msgid "Activated on" msgstr "" #: ../gui/gnomint.glade.h:49 msgid "Add CSR" msgstr "" #: ../gui/gnomint.glade.h:50 msgid "Add _Certificate Request" msgstr "" #: ../gui/gnomint.glade.h:51 msgid "Add a new Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:52 msgid "Add an autosigned CA" msgstr "" #: ../gui/gnomint.glade.h:53 msgid "Add autosigned CA certificate" msgstr "" #: ../gui/gnomint.glade.h:54 ../src/certificate_properties.c:1130 #: ../src/tls.c:1082 msgid "Any purpose" msgstr "" #: ../gui/gnomint.glade.h:55 msgid "" "Automatically export created certificates to \n" "Gnome-keyring certificate store" msgstr "" #: ../gui/gnomint.glade.h:57 msgid "Both parts." msgstr "" #: ../gui/gnomint.glade.h:58 msgid "CA Policy" msgstr "" #: ../gui/gnomint.glade.h:59 msgid "" "CA Root Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:61 msgid "CA properties" msgstr "" #: ../gui/gnomint.glade.h:62 msgid "CACN" msgstr "CACN" #: ../gui/gnomint.glade.h:63 msgid "CAO" msgstr "CAO" #: ../gui/gnomint.glade.h:64 msgid "CAOU" msgstr "CAOU" #: ../gui/gnomint.glade.h:65 ../src/certificate_properties.c:358 #: ../src/tls.c:1056 msgid "CRL signing" msgstr "" #: ../gui/gnomint.glade.h:66 msgid "CSR properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:67 msgid "CertActivationDate" msgstr "" #: ../gui/gnomint.glade.h:68 msgid "CertExpirationDate" msgstr "" #: ../gui/gnomint.glade.h:69 msgid "CertSN" msgstr "" #: ../gui/gnomint.glade.h:70 msgid "" "Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:72 msgid "Certificate DN" msgstr "" #: ../gui/gnomint.glade.h:73 msgid "Certificate _Signing Requests" msgstr "" #: ../gui/gnomint.glade.h:74 msgid "Certificate properties" msgstr "" #: ../gui/gnomint.glade.h:75 msgid "Certificate properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:76 ../src/tls.c:1039 msgid "Certification Authority" msgstr "" #: ../gui/gnomint.glade.h:77 msgid "Change database pass_word" msgstr "" #: ../gui/gnomint.glade.h:78 msgid "Choose CA for signing the CSR" msgstr "" #: ../gui/gnomint.glade.h:79 msgid "Choose private key file. gnoMint" msgstr "" #: ../gui/gnomint.glade.h:80 msgid "City" msgstr "Vila" #: ../gui/gnomint.glade.h:81 msgid "City: " msgstr "Vila : " #: ../gui/gnomint.glade.h:82 ../src/certificate_properties.c:1126 #: ../src/tls.c:1074 msgid "Code signing" msgstr "" #: ../gui/gnomint.glade.h:83 msgid "Common Name (CN)" msgstr "Nom corrent (CN)" #: ../gui/gnomint.glade.h:84 msgid "Country" msgstr "País" #: ../gui/gnomint.glade.h:85 msgid "Country:" msgstr "País :" #: ../gui/gnomint.glade.h:86 msgid "Create a new database" msgstr "" #: ../gui/gnomint.glade.h:87 msgid "Creating CA Root Certificate" msgstr "" #: ../gui/gnomint.glade.h:88 msgid "Creating new CA - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:89 msgid "DSA" msgstr "DSA" #: ../gui/gnomint.glade.h:90 ../src/certificate_properties.c:352 #: ../src/tls.c:1050 msgid "Data encipherment" msgstr "" #: ../gui/gnomint.glade.h:91 msgid "Database password protection - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:92 msgid "Delete the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:93 msgid "Details" msgstr "Detalhs" #: ../gui/gnomint.glade.h:94 ../src/certificate_properties.c:346 #: ../src/tls.c:1044 msgid "Digital signature" msgstr "" #: ../gui/gnomint.glade.h:95 msgid "Don't inherit any fields from existing Certification Authorities" msgstr "" #: ../gui/gnomint.glade.h:96 msgid "E_xport" msgstr "E_xportar" #: ../gui/gnomint.glade.h:97 ../src/certificate_properties.c:1127 #: ../src/tls.c:1076 msgid "Email protection" msgstr "" #: ../gui/gnomint.glade.h:98 msgid "" "Enter new password again \n" "for confirmation:" msgstr "" #: ../gui/gnomint.glade.h:100 msgid "Enter password - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:101 msgid "Enter password again for confirmation:" msgstr "" #: ../gui/gnomint.glade.h:102 msgid "Expires on" msgstr "Expira lo" #: ../gui/gnomint.glade.h:103 msgid "Export certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:104 msgid "Export options" msgstr "" #: ../gui/gnomint.glade.h:105 msgid "Exports the CSR so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:106 msgid "" "Exports the certificate so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:107 msgid "Extrac_t private key" msgstr "" #: ../gui/gnomint.glade.h:108 msgid "Extract Private Key" msgstr "" #: ../gui/gnomint.glade.h:109 msgid "Extract the private key of the selected item into a external file" msgstr "" #: ../gui/gnomint.glade.h:110 msgid "Extract the saved private key to an external file or device" msgstr "" #: ../gui/gnomint.glade.h:111 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the CSR will be used" msgstr "" #: ../gui/gnomint.glade.h:115 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the certificate will be used" msgstr "" #: ../gui/gnomint.glade.h:119 msgid "General" msgstr "General" #: ../gui/gnomint.glade.h:120 msgid "General Preferences - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:121 msgid "Generate D_H parameters..." msgstr "" #: ../gui/gnomint.glade.h:122 msgid "Generate _CRL" msgstr "" #: ../gui/gnomint.glade.h:123 msgid "Generate the current Certificate Revocation List" msgstr "" #: ../gui/gnomint.glade.h:124 msgid "Hours between CRL updates:" msgstr "" #: ../gui/gnomint.glade.h:125 msgid "Import a single file." msgstr "" #: ../gui/gnomint.glade.h:126 msgid "Import a whole directory." msgstr "" #: ../gui/gnomint.glade.h:127 msgid "Import selection - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:128 msgid "" "Inherit fields according to selected Certification Authority and its policy." msgstr "" #: ../gui/gnomint.glade.h:129 ../src/certificate_properties.c:354 #: ../src/tls.c:1052 msgid "Key agreement" msgstr "" #: ../gui/gnomint.glade.h:130 ../src/certificate_properties.c:350 #: ../src/tls.c:1048 msgid "Key encipherment" msgstr "" #: ../gui/gnomint.glade.h:131 msgid "MD5 fingerprint" msgstr "" #: ../gui/gnomint.glade.h:132 msgid "MD5FINGERPRINT" msgstr "" #: ../gui/gnomint.glade.h:133 msgid "" "Maximum number of months before expiration of the new generated certificates:" msgstr "" #: ../gui/gnomint.glade.h:134 msgid "Months before certificate expiration:" msgstr "" #: ../gui/gnomint.glade.h:135 msgid "Months before root certificate expiration:" msgstr "" #: ../gui/gnomint.glade.h:136 msgid "New CA - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:137 msgid "New CRL - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:138 msgid "New Certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:139 msgid "New Diffie-Hellman parameters - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:140 msgid "" "New certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:142 msgid "New certificate request - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:143 ../src/certificate_properties.c:348 #: ../src/tls.c:1046 msgid "Non repudiation" msgstr "" #: ../gui/gnomint.glade.h:144 ../src/certificate_properties.c:1129 #: ../src/tls.c:1080 msgid "OCSP signing" msgstr "" #: ../gui/gnomint.glade.h:145 msgid "Only the private key (crypted)." msgstr "" #: ../gui/gnomint.glade.h:146 msgid "Only the private key (uncrypted)." msgstr "" #: ../gui/gnomint.glade.h:147 msgid "Only the pu_blic part." msgstr "" #: ../gui/gnomint.glade.h:148 msgid "Open _recents" msgstr "" #: ../gui/gnomint.glade.h:149 msgid "Open an existing database" msgstr "" #: ../gui/gnomint.glade.h:150 msgid "Organization" msgstr "Organizacion" #: ../gui/gnomint.glade.h:151 msgid "Organization (O)" msgstr "Organizacion (O)" #: ../gui/gnomint.glade.h:152 msgid "Organization Unit:" msgstr "" #: ../gui/gnomint.glade.h:153 msgid "Organization:" msgstr "Organizacion :" #: ../gui/gnomint.glade.h:154 msgid "Organizational Unit (OU)" msgstr "Unitat d'organizacion (OU)" #: ../gui/gnomint.glade.h:155 msgid "Organizational unit" msgstr "" #: ../gui/gnomint.glade.h:156 msgid "Password (confirm):" msgstr "" #: ../gui/gnomint.glade.h:157 msgid "Password protect" msgstr "" #: ../gui/gnomint.glade.h:158 msgid "Password:" msgstr "Senhal :" #: ../gui/gnomint.glade.h:159 msgid "Please, choose the file:" msgstr "" #: ../gui/gnomint.glade.h:160 msgid "Please, choose the more suitable option for what you want to import:" msgstr "" #: ../gui/gnomint.glade.h:161 msgid "" "Please, choose which part of the saved certificate you want to export:" msgstr "" #: ../gui/gnomint.glade.h:162 msgid "" "Please, enter current\n" "password:" msgstr "" #: ../gui/gnomint.glade.h:164 msgid "" "Please, enter new \n" "password:" msgstr "" #: ../gui/gnomint.glade.h:166 msgid "Please, enter password" msgstr "" #: ../gui/gnomint.glade.h:167 msgid "Please, enter password:" msgstr "" #: ../gui/gnomint.glade.h:168 msgid "Please, enter the prime size, in bits:" msgstr "" #: ../gui/gnomint.glade.h:169 msgid "" "Please, select the CA for which a Certificate \n" "Revocation List is going to be created:" msgstr "" #: ../gui/gnomint.glade.h:171 msgid "Private key bit length:" msgstr "" #: ../gui/gnomint.glade.h:172 msgid "Private key type:" msgstr "" #: ../gui/gnomint.glade.h:173 msgid "" "Protect CA database private \n" "keys with password:" msgstr "" #: ../gui/gnomint.glade.h:175 msgid "" "Protect CA database private keys\n" "with password:" msgstr "" #: ../gui/gnomint.glade.h:177 msgid "RSA" msgstr "RSA" #: ../gui/gnomint.glade.h:178 msgid "Remember this password during this gnoMint session" msgstr "" #: ../gui/gnomint.glade.h:179 msgid "Revo_ke" msgstr "" #: ../gui/gnomint.glade.h:180 msgid "Revoke" msgstr "Revocar" #: ../gui/gnomint.glade.h:181 msgid "Revoke the selected certificate" msgstr "" #: ../gui/gnomint.glade.h:182 msgid "Revokes the selected certificate" msgstr "" #: ../gui/gnomint.glade.h:183 msgid "Root certificate prop" msgstr "" #: ../gui/gnomint.glade.h:184 msgid "SHA1 fingerprint" msgstr "" #: ../gui/gnomint.glade.h:185 msgid "SHA1FINGERPRINT" msgstr "" #: ../gui/gnomint.glade.h:186 msgid "Serial number" msgstr "Numèro de seria" #: ../gui/gnomint.glade.h:187 msgid "Shows the CSR properties window" msgstr "" #: ../gui/gnomint.glade.h:188 msgid "Shows the certificate properties window" msgstr "" #: ../gui/gnomint.glade.h:189 msgid "Sign" msgstr "Signar" #: ../gui/gnomint.glade.h:190 msgid "Sign the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:191 msgid "State or Province name" msgstr "" #: ../gui/gnomint.glade.h:192 msgid "State or Province name: " msgstr "" #: ../gui/gnomint.glade.h:193 msgid "SubjectCN" msgstr "" #: ../gui/gnomint.glade.h:194 msgid "SubjectO" msgstr "" #: ../gui/gnomint.glade.h:195 msgid "SubjectOU" msgstr "" #: ../gui/gnomint.glade.h:196 msgid "TLS Web client" msgstr "" #: ../gui/gnomint.glade.h:197 msgid "TLS Web server" msgstr "" #: ../gui/gnomint.glade.h:198 msgid "" "The whole selected file, or some of its elements, seems to be cyphered using " "a password or passphrase.\n" "\n" "For importing the file into gnoMint database, you must provide an appropiate " "password." msgstr "" #: ../gui/gnomint.glade.h:201 msgid "" "This action requires using one or more private keys saved in the CA " "database.\n" "\n" "Please insert the database password." msgstr "" #: ../gui/gnomint.glade.h:204 ../src/certificate_properties.c:1128 #: ../src/tls.c:1078 msgid "Time stamping" msgstr "" #: ../gui/gnomint.glade.h:205 msgid "" "You are about to create and export a set of Diffie·Hellman parameters " "into a PKCS#3 structure file." msgstr "" #: ../gui/gnomint.glade.h:206 msgid "" "You are about to sign a Certificate Signing Request, and this way, creating " "a new certificate. Please check the certificate properties." msgstr "" #: ../gui/gnomint.glade.h:207 msgid "" "You are about to sign a Certificate Signing Request. Please, choose the " "Certification Authority you are going to use for signing it." msgstr "" #: ../gui/gnomint.glade.h:208 msgid "_Add self-signed CA" msgstr "" #: ../gui/gnomint.glade.h:209 msgid "_Certificates" msgstr "" #: ../gui/gnomint.glade.h:210 msgid "_Edit" msgstr "_Edicion" #: ../gui/gnomint.glade.h:211 msgid "_Help" msgstr "_Ajuda" #: ../gui/gnomint.glade.h:212 msgid "_Import" msgstr "_Importar" #: ../gui/gnomint.glade.h:213 msgid "_New certificate database" msgstr "" #: ../gui/gnomint.glade.h:214 msgid "_No" msgstr "_Non" #: ../gui/gnomint.glade.h:215 msgid "_Open certificate database" msgstr "" #: ../gui/gnomint.glade.h:216 msgid "_Revoked Certificates" msgstr "" #: ../gui/gnomint.glade.h:217 msgid "_Save certificate database as..." msgstr "" #: ../gui/gnomint.glade.h:218 msgid "_Save filename in the database for automatic loading" msgstr "" #: ../gui/gnomint.glade.h:219 msgid "_Sign" msgstr "_Signar" #: ../gui/gnomint.glade.h:220 msgid "_View" msgstr "_Afichatge" #: ../gui/gnomint.glade.h:221 msgid "_Yes" msgstr "_Òc" #: ../gui/gnomint.glade.h:222 msgid "gnoMint" msgstr "gnoMint" #: ../gui/gnomint.glade.h:223 msgid "gtk-cancel" msgstr "gtk-cancel" #: ../gui/gnomint.glade.h:224 msgid "gtk-ok" msgstr "gtk-ok" #: ../gui/gnomint.glade.h:225 msgid "label" msgstr "etiqueta" #: ../gui/gnomint.glade.h:226 msgid "may differ" msgstr "" #: ../gui/gnomint.glade.h:227 msgid "must be the same" msgstr "" #: ../gui/gnomint.glade.h:228 msgid "page 3" msgstr "pagina 3" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "Gerir aisidament e graficament de certificats X.509 e d'AC" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "Gestionari d'Autoritat de Certificacion X.509 gnoMint" #: ../src/ca.c:147 msgid "Certificates" msgstr "Certificats" #: ../src/ca.c:263 msgid "Certificate Signing Requests" msgstr "" #: ../src/ca.c:304 ../src/ca-cli-callbacks.c:168 ../src/ca-cli-callbacks.c:178 #: ../src/ca-cli-callbacks.c:189 ../src/ca-cli-callbacks.c:547 #: ../src/ca-cli-callbacks.c:551 ../src/ca-cli-callbacks.c:1162 #: ../src/ca-cli-callbacks.c:1166 ../src/certificate_properties.c:178 #: ../src/certificate_properties.c:183 msgid "%m/%d/%Y %R GMT" msgstr "" #: ../src/ca.c:448 ../src/certificate_properties.c:531 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "Subjècte" #: ../src/ca.c:483 msgid "Serial" msgstr "Periodic" #: ../src/ca.c:490 msgid "Activation" msgstr "Activacion" #: ../src/ca.c:497 msgid "Expiration" msgstr "Expiracion" #: ../src/ca.c:504 msgid "Revocation" msgstr "Revocacion" #: ../src/ca.c:791 msgid "Export certificate" msgstr "" #: ../src/ca.c:798 msgid "Export certificate signing request" msgstr "" #: ../src/ca.c:813 ../src/ca.c:849 ../src/ca.c:859 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "" #: ../src/ca.c:815 ../src/ca.c:851 ../src/ca.c:861 msgid "There was an error while exporting CSR." msgstr "" #: ../src/ca.c:874 ../src/ca.c:1040 msgid "Certificate exported successfully" msgstr "" #: ../src/ca.c:881 msgid "Certificate signing request exported successfully" msgstr "" #: ../src/ca.c:900 msgid "Export crypted private key" msgstr "" #: ../src/ca.c:929 ../src/ca.c:981 msgid "Private key exported successfully" msgstr "" #: ../src/ca.c:951 msgid "Export uncrypted private key" msgstr "" #: ../src/ca.c:1002 msgid "Export whole certificate in PKCS#12 package" msgstr "" #: ../src/ca.c:1073 msgid "Export CSR - gnoMint" msgstr "" #: ../src/ca.c:1078 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" #: ../src/ca.c:1083 msgid "" "Export the Certificate Signing Request to a public file, in PEM " "format." msgstr "" #: ../src/ca.c:1088 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" #: ../src/ca.c:1146 msgid "Unexpected error" msgstr "Error inesperada" #: ../src/ca.c:1196 msgid "Are you sure you want to revoke this certificate?" msgstr "" #: ../src/ca.c:1235 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "" #: ../src/ca.c:1512 msgid "Change CA password - gnoMint" msgstr "" #: ../src/ca.c:1530 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" #: ../src/ca.c:1545 msgid "Error while changing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1554 msgid "Password changed successfully" msgstr "" #: ../src/ca.c:1564 ../src/ca-cli-callbacks.c:1002 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1574 msgid "Password established successfully" msgstr "" #: ../src/ca.c:1584 msgid "Error while removing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1593 msgid "Password removed successfully" msgstr "" #: ../src/ca.c:1731 msgid "Save Diffie-Hellman parameters" msgstr "" #: ../src/ca.c:1757 msgid "Diffie-Hellman parameters saved successfully" msgstr "" #. Import single file #: ../src/ca.c:1826 msgid "Select PEM file to import" msgstr "" #: ../src/ca.c:1847 #, c-format msgid "Problem when importing '%s' file" msgstr "" #: ../src/ca.c:1860 msgid "Select directory to import" msgstr "" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "" #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "" #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "" #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "" #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "" #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "" #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "" #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "" #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "" #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "" #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "" #: ../src/ca-cli.c:55 msgid "" "Generate a new CRL for the given CA, saving it into the file " msgstr "" #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "" #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "" #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "" #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "" #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "" #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "" #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "" #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "" #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "" #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "Afichar las informacions de version" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "" #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr "" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr " Error.\n" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" "\n" "\n" "%s version %s\n" "%s\n" "\n" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "" #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:638 msgid "Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:140 #, c-format msgid "CertList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:143 msgid "CertList IsCA|Y\t" msgstr "" #: ../src/ca-cli-callbacks.c:145 msgid "CertList IsCA|N\t" msgstr "" #: ../src/ca-cli-callbacks.c:150 #, c-format msgid "CertList Subject|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:153 msgid "CertList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:155 msgid "CertList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:158 msgid "CertList PKeyInDB|Y\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:160 msgid "CertList PKeyInDB|N\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:164 msgid "CertList Activation|\t" msgstr "" #: ../src/ca-cli-callbacks.c:169 #, c-format msgid "CertList Activation|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:174 msgid "CertList Expiration|\t" msgstr "" #: ../src/ca-cli-callbacks.c:179 #, c-format msgid "CertList Expiration|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:185 msgid "CertList Revocation|\n" msgstr "" #: ../src/ca-cli-callbacks.c:190 #, c-format msgid "CertList Revocation|%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:207 #, c-format msgid "Certificates in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:208 #, c-format msgid "" "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "" #: ../src/ca-cli-callbacks.c:211 #, c-format msgid "\t\tRevocation\n" msgstr "" #: ../src/ca-cli-callbacks.c:221 #, c-format msgid "CsrList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "CsrList ParentID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 msgid "CsrList ParentID|\t" msgstr "" #: ../src/ca-cli-callbacks.c:228 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "" #: ../src/ca-cli-callbacks.c:231 msgid "CsrList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:233 msgid "CsrList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:236 msgid "CsrList PKeyInDB|Y\n" msgstr "" #: ../src/ca-cli-callbacks.c:238 msgid "CsrList PKeyInDB|N\n" msgstr "" #: ../src/ca-cli-callbacks.c:246 #, c-format msgid "Certificate Requests in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:247 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "" #: ../src/ca-cli-callbacks.c:275 ../src/ca-cli-callbacks.c:945 #: ../src/ca-cli-callbacks.c:1310 ../src/ca-cli-callbacks.c:1339 msgid "The given CA id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:328 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:330 ../src/ca-cli-callbacks.c:453 msgid "Enter country (C)" msgstr "" #: ../src/ca-cli-callbacks.c:336 ../src/ca-cli-callbacks.c:459 msgid "Enter state or province (ST)" msgstr "" #: ../src/ca-cli-callbacks.c:342 ../src/ca-cli-callbacks.c:465 msgid "Enter locality or city (L)" msgstr "" #: ../src/ca-cli-callbacks.c:348 ../src/ca-cli-callbacks.c:471 msgid "Enter organization (O)" msgstr "" #: ../src/ca-cli-callbacks.c:354 ../src/ca-cli-callbacks.c:477 msgid "Enter organizational unit (OU)" msgstr "" #: ../src/ca-cli-callbacks.c:360 ../src/ca-cli-callbacks.c:483 msgid "Enter common name (CN)" msgstr "" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:493 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "" #: ../src/ca-cli-callbacks.c:382 ../src/ca-cli-callbacks.c:505 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "" #: ../src/ca-cli-callbacks.c:386 #, c-format msgid "These are the provided CSR properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:388 ../src/ca-cli-callbacks.c:526 #: ../src/ca-cli-callbacks.c:1152 ../src/ca-cli-callbacks.c:1204 #, c-format msgid "Subject:\n" msgstr "" #: ../src/ca-cli-callbacks.c:389 ../src/ca-cli-callbacks.c:527 #, c-format msgid "\tDistinguished Name: " msgstr "" #: ../src/ca-cli-callbacks.c:403 ../src/ca-cli-callbacks.c:541 #, c-format msgid "Key pair\n" msgstr "" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:542 #, c-format msgid "\tType: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:543 #, c-format msgid "\tKey bitlength: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:407 ../src/ca-cli-callbacks.c:554 msgid "Do you want to change anything? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:411 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:412 ../src/ca-cli-callbacks.c:559 msgid "Are you sure? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:417 ../src/ca-cli-callbacks.c:564 #: ../src/ca-cli-callbacks.c:648 ../src/ca-cli-callbacks.c:779 #: ../src/ca-cli-callbacks.c:902 ../src/ca-cli-callbacks.c:931 #: ../src/ca-cli-callbacks.c:997 ../src/ca-cli-callbacks.c:1024 #: ../src/ca-cli-callbacks.c:1052 ../src/ca-cli-callbacks.c:1067 #: ../src/ca-cli-callbacks.c:1369 ../src/ca-cli-callbacks.c:1412 #, c-format msgid "Operation cancelled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:451 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "" #: ../src/ca-cli-callbacks.c:510 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" #: ../src/ca-cli-callbacks.c:524 #, c-format msgid "These are the provided new CA properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:544 #, c-format msgid "Validity\n" msgstr "" #: ../src/ca-cli-callbacks.c:545 ../src/ca-cli-callbacks.c:1160 #, c-format msgid "Validity:\n" msgstr "" #: ../src/ca-cli-callbacks.c:548 ../src/ca-cli-callbacks.c:1163 #, c-format msgid "\tActivated on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:552 ../src/ca-cli-callbacks.c:1167 #, c-format msgid "\tExpires on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:558 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:632 #: ../src/ca-cli-callbacks.c:1137 msgid "The given certificate id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:591 ../src/ca-cli-callbacks.c:615 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:608 ../src/ca-cli-callbacks.c:760 #: ../src/ca-cli-callbacks.c:915 ../src/ca-cli-callbacks.c:1193 msgid "The given CSR id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:638 msgid "This certificate will be revoked." msgstr "" #: ../src/ca-cli-callbacks.c:644 #, c-format msgid "Certificate revoked.\n" msgstr "" #: ../src/ca-cli-callbacks.c:658 ../src/ca-cli-callbacks.c:1174 #, c-format msgid "Certificate uses:\n" msgstr "" #: ../src/ca-cli-callbacks.c:661 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:663 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:667 #, c-format msgid "* CRL signing use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:669 #, c-format msgid "* CRL signing use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:673 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:675 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:679 ../src/ca-cli-callbacks.c:681 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:685 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:687 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:691 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:693 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:697 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:699 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:702 #, c-format msgid "Certificate purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:705 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:707 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:711 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:713 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:717 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:719 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:723 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:725 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:729 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:731 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:735 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:737 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:741 #, c-format msgid "* Any purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:743 #, c-format msgid "* Any purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:767 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:769 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "" #: ../src/ca-cli-callbacks.c:772 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" #: ../src/ca-cli-callbacks.c:782 #, c-format msgid "" "The certificate will be generated with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:800 ../src/ca-cli-callbacks.c:888 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:803 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:806 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:808 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:812 msgid "* Enable CRL Signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:814 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:818 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:820 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:824 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:826 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:830 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:832 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:836 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:838 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:842 msgid "Enable Key Agreement use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:844 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:848 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:850 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:854 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:856 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:860 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:862 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:866 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:868 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:872 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:874 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:878 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:883 msgid "Enable any purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:899 #, c-format msgid "Certificate signed.\n" msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This Certificate Signing Request will be deleted." msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:927 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "" #: ../src/ca-cli-callbacks.c:952 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:969 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "" #: ../src/ca-cli-callbacks.c:978 #, c-format msgid "" "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Currently, the database is not password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Do you want to password protect it? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:991 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password:" msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:995 ../src/ca-cli-callbacks.c:1065 msgid "The introduced passwords are distinct." msgstr "" #: ../src/ca-cli-callbacks.c:1006 #, c-format msgid "Password established successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Nothing done.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Currently, the database IS password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:1021 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1022 ../src/ca-cli-callbacks.c:1050 msgid "Please, insert the current database password (Empty to cancel): " msgstr "" #: ../src/ca-cli-callbacks.c:1029 ../src/ca-cli-callbacks.c:1057 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" #: ../src/ca-cli-callbacks.c:1034 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1039 #, c-format msgid "Password removed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1049 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1061 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password:" msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:1073 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1079 #, c-format msgid "Password changed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1097 msgid "Problem when importing the given file." msgstr "" #: ../src/ca-cli-callbacks.c:1100 #, c-format msgid "File imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1116 #, c-format msgid "Directory imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1145 #, c-format msgid "Certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1149 #, c-format msgid "\tSerial number: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1157 #: ../src/ca-cli-callbacks.c:1205 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1154 #: ../src/ca-cli-callbacks.c:1157 ../src/ca-cli-callbacks.c:1158 msgid "None." msgstr "" #: ../src/ca-cli-callbacks.c:1154 ../src/ca-cli-callbacks.c:1158 #: ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tUnique ID: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1156 #, c-format msgid "Issuer:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1169 #, c-format msgid "Fingerprints:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1170 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1171 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1202 #, c-format msgid "Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1275 msgid "Generated certs inherit Country from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1276 msgid "Generated certs inherit State from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1277 msgid "Generated certs inherit Locality from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1278 msgid "Generated certs inherit Organization from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1279 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1280 msgid "Country in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1281 msgid "State in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1282 msgid "Locality in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1283 msgid "Organization in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1284 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "" #: ../src/ca-cli-callbacks.c:1285 msgid "Maximum number of hours between CRL updates " msgstr "" #: ../src/ca-cli-callbacks.c:1286 msgid "Maximum number of months before expiration of new certs " msgstr "" #: ../src/ca-cli-callbacks.c:1287 msgid "CA use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1288 msgid "CRL Sign use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1289 msgid "Non reputation use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1290 msgid "Digital signature use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1291 msgid "Key encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1292 msgid "Key agreement use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1293 msgid "Data encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1294 msgid "TLS web server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1295 msgid "TLS web client purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1296 msgid "Time stamping purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1297 msgid "Code signing server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1298 msgid "Email protection purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1299 msgid "OCSP signing purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1300 msgid "Any purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1314 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1316 #, c-format msgid "" "\n" "Policies:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1318 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1344 msgid "The given policy id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1356 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1360 ../src/ca-cli-callbacks.c:1404 msgid "Are you sure? Yes/[No] : " msgstr "" #: ../src/ca-cli-callbacks.c:1365 #, c-format msgid "Policy set correctly to '%d'.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1379 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1381 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1382 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "" #: ../src/ca-cli-callbacks.c:1394 msgid "The given preference id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1400 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1422 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1423 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1424 ../src/ca-cli-callbacks.c:1425 #: ../src/main.c:502 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " Cédric VALMARY (Tot en òc) https://launchpad.net/~cvalmary" #: ../src/ca-cli-callbacks.c:1425 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1432 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1450 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1465 #, c-format msgid "%s version %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1474 #, c-format msgid "Available commands:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "===================\n" msgstr "" #: ../src/ca-cli-callbacks.c:1485 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "" #: ../src/ca_creation.c:144 msgid "CA generated successfully" msgstr "" #: ../src/ca_file.c:196 #, c-format msgid "Error opening filename '%s'" msgstr "" #: ../src/ca_file.c:299 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" #: ../src/ca_file.c:1311 msgid "Cannot find parent CA in database" msgstr "" #: ../src/ca_file.c:1499 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "" #: ../src/ca_file.c:1930 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" #: ../src/ca_file.c:1933 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" #: ../src/certificate_properties.c:356 ../src/tls.c:1054 msgid "Certificate signing" msgstr "" #: ../src/certificate_properties.c:360 msgid "Key encipherment only" msgstr "" #: ../src/certificate_properties.c:362 msgid "Key decipherment only" msgstr "" #: ../src/certificate_properties.c:376 msgid "Version" msgstr "" #: ../src/certificate_properties.c:411 msgid "Serial Number" msgstr "" #: ../src/certificate_properties.c:427 ../src/certificate_properties.c:1060 msgid "Signature" msgstr "" #: ../src/certificate_properties.c:430 ../src/certificate_properties.c:558 #: ../src/certificate_properties.c:561 ../src/certificate_properties.c:1027 msgid "Algorithm" msgstr "" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:594 ../src/certificate_properties.c:622 #: ../src/certificate_properties.c:1030 msgid "Parameters" msgstr "" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:622 ../src/certificate_properties.c:624 #: ../src/certificate_properties.c:635 ../src/certificate_properties.c:644 #: ../src/certificate_properties.c:1031 msgid "(unknown)" msgstr "" #: ../src/certificate_properties.c:465 msgid "Issuer" msgstr "" #: ../src/certificate_properties.c:493 msgid "Validity" msgstr "" #: ../src/certificate_properties.c:496 msgid "Not Before" msgstr "" #: ../src/certificate_properties.c:499 msgid "Not After" msgstr "" #: ../src/certificate_properties.c:555 msgid "Subject Public Key Info" msgstr "" #: ../src/certificate_properties.c:568 msgid "RSA PublicKey" msgstr "" #: ../src/certificate_properties.c:578 msgid "Modulus" msgstr "" #: ../src/certificate_properties.c:584 msgid "Public Exponent" msgstr "" #: ../src/certificate_properties.c:617 msgid "DSA PublicKey" msgstr "" #: ../src/certificate_properties.c:624 msgid "Subject Public Key" msgstr "" #: ../src/certificate_properties.c:635 msgid "Issuer Unique ID" msgstr "" #: ../src/certificate_properties.c:644 msgid "Subject Unique ID" msgstr "" #: ../src/certificate_properties.c:666 ../src/certificate_properties.c:689 #: ../src/certificate_properties.c:758 ../src/certificate_properties.c:862 #: ../src/certificate_properties.c:890 ../src/certificate_properties.c:930 #: ../src/certificate_properties.c:987 ../src/certificate_properties.c:1112 msgid "Value" msgstr "" #: ../src/certificate_properties.c:728 ../src/certificate_properties.c:832 msgid "DNS Name" msgstr "" #: ../src/certificate_properties.c:733 ../src/certificate_properties.c:837 msgid "RFC822 Name" msgstr "" #: ../src/certificate_properties.c:738 ../src/certificate_properties.c:842 msgid "URI" msgstr "" #: ../src/certificate_properties.c:744 msgid "IP" msgstr "" #: ../src/certificate_properties.c:751 ../src/certificate_properties.c:855 msgid "Directory Name" msgstr "" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "TRUE" msgstr "" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "FALSE" msgstr "" #: ../src/certificate_properties.c:790 msgid "CA" msgstr "" #: ../src/certificate_properties.c:794 msgid "Path Length Constraint" msgstr "" #: ../src/certificate_properties.c:848 msgid "IP Address" msgstr "" #: ../src/certificate_properties.c:963 msgid "Extensions" msgstr "" #: ../src/certificate_properties.c:972 msgid "Critical" msgstr "" #: ../src/certificate_properties.c:1000 msgid "Certificate" msgstr "" #: ../src/certificate_properties.c:1025 msgid "Signature Algorithm" msgstr "" #: ../src/certificate_properties.c:1108 msgid "Name" msgstr "" #: ../src/certificate_properties.c:1124 ../src/tls.c:1070 msgid "TLS WWW Server" msgstr "" #: ../src/certificate_properties.c:1125 msgid "TLS WWW Client" msgstr "" #: ../src/certificate_properties.c:1131 msgid "Subject Directory Attributes" msgstr "" #: ../src/certificate_properties.c:1132 msgid "Subject Key Identifier" msgstr "" #: ../src/certificate_properties.c:1133 msgid "Key Usage" msgstr "" #: ../src/certificate_properties.c:1134 msgid "Private Key Usage Period" msgstr "" #: ../src/certificate_properties.c:1135 msgid "Subject Alternative Name" msgstr "" #: ../src/certificate_properties.c:1136 msgid "Basic Constraints" msgstr "" #: ../src/certificate_properties.c:1137 msgid "Name Constraints" msgstr "" #: ../src/certificate_properties.c:1138 msgid "CRL Distribution Points" msgstr "" #: ../src/certificate_properties.c:1139 msgid "Certificate Policies" msgstr "" #: ../src/certificate_properties.c:1140 msgid "Policy Mappings" msgstr "" #: ../src/certificate_properties.c:1141 msgid "Authority Key Identifier" msgstr "" #: ../src/certificate_properties.c:1142 msgid "Policy Constraints" msgstr "" #: ../src/certificate_properties.c:1143 msgid "Extended Key Usage" msgstr "" #: ../src/certificate_properties.c:1144 msgid "Delta CRL Distribution Point" msgstr "" #: ../src/certificate_properties.c:1145 msgid "Inhibit Any-Policy" msgstr "" #: ../src/creation_process_window.c:79 msgid "CA creation process finished" msgstr "" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "" #: ../src/creation_process_window.c:274 msgid "Creating Certificate Signing Request" msgstr "" #: ../src/crl.c:250 msgid "Export Certificate Revocation List" msgstr "" #: ../src/crl.c:280 msgid "CRL generated successfully" msgstr "" #: ../src/crl.c:309 ../src/crl.c:371 ../src/crl.c:382 msgid "There was an error while exporting CRL." msgstr "" #: ../src/crl.c:320 msgid "There was an error while getting revoked certificates." msgstr "" #: ../src/crl.c:336 ../src/crl.c:355 msgid "There was an error while generating CRL." msgstr "" #: ../src/crl.c:363 msgid "There was an error while writing CRL." msgstr "" #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "" #: ../src/csr_properties.c:78 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" #: ../src/dialog.c:79 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" #: ../src/dialog.c:103 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "" #: ../src/dialog.c:104 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "" #: ../src/dialog.c:372 msgid "To do. Feature not implemented yet." msgstr "" #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "" #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "" #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "" #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "" #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "" #: ../src/export.c:110 msgid "Operation cancelled." msgstr "" #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "" #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "" #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "" #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "" #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "" #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "" #: ../src/gnomint-cli.c:59 ../src/main.c:129 #, c-format msgid "Failed to initialize: %s\n" msgstr "" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "" #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "" #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "" #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "" #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "" #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "" #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "" #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "" #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "" #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "" #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" #: ../src/main.c:126 msgid "- A graphical Certification Authority manager" msgstr "" #: ../src/main.c:285 msgid "Create new CA database" msgstr "" #: ../src/main.c:323 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" #: ../src/main.c:336 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "" #: ../src/main.c:357 msgid "Open CA database" msgstr "" #: ../src/main.c:380 ../src/main.c:420 #, c-format msgid "Problem when opening '%s' CA database" msgstr "" #: ../src/main.c:445 msgid "Save CA database as..." msgstr "" #: ../src/main.c:497 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" #: ../src/main.c:498 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" #: ../src/new_cert.c:329 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:335 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:341 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:347 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:353 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:799 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" #: ../src/new_cert.c:815 msgid "Error while signing CSR." msgstr "" #: ../src/pkey_manage.c:80 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" #: ../src/pkey_manage.c:125 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" #: ../src/pkey_manage.c:171 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:187 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:191 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" #. The file cannot be opened #: ../src/pkey_manage.c:196 msgid "The file designated in database couldn't be opened." msgstr "" #. The file doesn't exist #: ../src/pkey_manage.c:201 msgid "The file designated in database doesn't exist." msgstr "" #: ../src/pkey_manage.c:760 ../src/pkey_manage.c:811 msgid "The given password doesn't match the one used in the database" msgstr "" #: ../src/pkey_manage.c:798 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" #: ../src/pkey_manage.c:799 msgid "Please insert the database password:" msgstr "" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "" #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:553 ../src/tls.c:855 #, c-format msgid "Error exporting private key to PEM structure." msgstr "" #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "" #: ../src/tls.c:441 ../src/tls.c:689 #, c-format msgid "Error when setting certificate version" msgstr "" #: ../src/tls.c:451 ../src/tls.c:702 #, c-format msgid "Error when setting certificate serial number" msgstr "" #: ../src/tls.c:460 ../src/tls.c:711 #, c-format msgid "Error when setting activation time" msgstr "" #: ../src/tls.c:465 ../src/tls.c:719 #, c-format msgid "Error when setting expiration time" msgstr "" #: ../src/tls.c:511 ../src/tls.c:768 #, c-format msgid "Error when setting basicConstraint extension" msgstr "" #: ../src/tls.c:516 ../src/tls.c:810 #, c-format msgid "Error when setting keyUsage extension" msgstr "" #: ../src/tls.c:527 ../src/tls.c:784 #, c-format msgid "Error when setting subject key identifier extension" msgstr "" #: ../src/tls.c:531 ../src/tls.c:758 #, c-format msgid "Error when setting authority key identifier extension" msgstr "" #: ../src/tls.c:541 #, c-format msgid "Error when signing self-signed certificate" msgstr "" #: ../src/tls.c:571 #, c-format msgid "Error when initializing csr structure" msgstr "" #: ../src/tls.c:575 #, c-format msgid "Error when setting csr version" msgstr "" #: ../src/tls.c:608 #, c-format msgid "Error when signing self-signed csr" msgstr "" #: ../src/tls.c:619 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "" #: ../src/tls.c:673 #, c-format msgid "Error when initializing crt structure" msgstr "" #: ../src/tls.c:681 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "" #: ../src/tls.c:840 #, c-format msgid "Error when signing certificate" msgstr "" #: ../src/tls.c:1058 msgid "Key encipher only" msgstr "" #: ../src/tls.c:1060 msgid "Key decipher only" msgstr "" #: ../src/tls.c:1072 msgid "TLS WWW Client." msgstr "" gnomint-1.3.0/po/it.po0000664000175000017500000026222612672052326011522 00000000000000# Italian translation for gnomint # Copyright (c) 2008 Rosetta Contributors and Canonical Ltd 2008 # This file is distributed under the same license as the gnomint package. # FIRST AUTHOR , 2008. # msgid "" msgstr "" "Project-Id-Version: gnomint\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-06-03 23:09+0200\n" "PO-Revision-Date: 2010-07-09 11:50+0000\n" "Last-Translator: David Marín \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-08-11 09:00+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "Esportazione automatica di certificati per gnome-keyring" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "Visibilità de le richieste dei certificati" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "Visibilità de i certificati revocati" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" "La dimensione (width,length) che gnoMint dovrebbe avere all'avvio. Non può " "essere minore di (320,200)." #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "Se le richieste dei certificati devono essere visibili." #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" "Se i certificati creati o importati sono automaticamente esportate a gnome-" "keyring certificate-store." #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "Se i certificati revocati dovrebbero essere visibili." #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "Dimensione della finestra" #: ../gui/gnomint.glade.h:1 msgid " " msgstr " " #: ../gui/gnomint.glade.h:2 msgid "CSR subject" msgstr "Soggetto CSR" #: ../gui/gnomint.glade.h:3 msgid "Certificate fields" msgstr "Campi dei certificati" #: ../gui/gnomint.glade.h:4 msgid "Certificate hierarchy" msgstr "Gerarchia dei certificati" #: ../gui/gnomint.glade.h:5 msgid "Certificate purposes" msgstr "Proposito dei certificati" #: ../gui/gnomint.glade.h:6 msgid "Certificate subject" msgstr "Soggetto del certificato" #: ../gui/gnomint.glade.h:7 msgid "Certificate uses" msgstr "Utilizzi del certificato" #: ../gui/gnomint.glade.h:8 msgid "Emmited by" msgstr "Emesso da" #: ../gui/gnomint.glade.h:9 msgid "Fingerprints" msgstr "Impronte digitali" #: ../gui/gnomint.glade.h:10 msgid "Inherited fields from CA subject" msgstr "Campi ereditati dal soggetto CA" #: ../gui/gnomint.glade.h:11 msgid "Purposes of new generated certificates" msgstr "Scopi dei nuovi certificati generati" #: ../gui/gnomint.glade.h:12 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in the internal database." msgstr "" "Questa richiesta di firma di certificato (CSR) ha la corrispondente " "chiave privata salvata nel database interno." #: ../gui/gnomint.glade.h:13 msgid "This certificate has been verified for the following uses:" msgstr "Questo certificato è stato verificato per gli usi seguenti:" #: ../gui/gnomint.glade.h:14 msgid "Uses of new generated certificates" msgstr "Uso di nuovi certificati generati" #: ../gui/gnomint.glade.h:15 msgid "Validity" msgstr "Validità" #: ../gui/gnomint.glade.h:16 msgid "New Certificate Revocation List" msgstr "Nuova Lista di Revoca Certificati" #: ../gui/gnomint.glade.h:17 msgid "CA Properties\n" msgstr "Proprietà CA\n" #: ../gui/gnomint.glade.h:19 msgid "CA Root certificate properties\n" msgstr "Proprietà del certificato CA Root\n" #: ../gui/gnomint.glade.h:21 msgid "Certificate Request Properties\n" msgstr "Richiedi proprietà Certificato\n" #: ../gui/gnomint.glade.h:23 msgid "" "Choose private key file\n" "\n" "For doing the selected operation, you must provide the file where resides " "the private key corresponding to the certificate:" msgstr "" "Scegli il file della chiave privata\n" "\n" "Per eseguire l'operazione, devi fornire il file dove risiede la chiave " "privata corrispondente al certificato:" #: ../gui/gnomint.glade.h:26 msgid "New Certificate Properties\n" msgstr "Proprietà Nuovo Certificato\n" #: ../gui/gnomint.glade.h:28 msgid "Password protection\n" msgstr "Protezione Password\n" #: ../gui/gnomint.glade.h:30 msgid "" "Export both (private and public) parts to a password-protected PKCS#12 " "file. This kind of file can be imported by other common programs, such as " "web or mail clients." msgstr "" "Esporta entrambe le parti (privata e pubblica) in un file PKCS#12 " "protetto da password. Questo tipo di file può essere importato da altri " "programmi comuni, come client web o mail." #: ../gui/gnomint.glade.h:31 msgid "Export only the certificate to a public file, in PEM format." msgstr "" "Esporta solo il certificato in un file pubblico, in formato PEM." #: ../gui/gnomint.glade.h:32 msgid "" "Export the saved private key to a PEM file. This option should only be " "used for exporting certificates that will be used in unattended servers." msgstr "" "Esporta la chiave privata salvata in un file PEM. Quest'opzione dovrebbe " "essere utilizzata solo per esportare certificati che saranno utilizzati in " "server inutilizzati." #: ../gui/gnomint.glade.h:33 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the certificate." msgstr "" "Esporta la chiave privata salvata in un file PKCS#8 protetto da password. " "Questo file può essere aperto solo dal soggetto del certificato." #: ../gui/gnomint.glade.h:34 msgid "" "Import a directory containing the structure of\n" "a whole CA made with OpenSSL ." msgstr "" "Importa una cartella contenete la struttura di\n" "un CA intatto fatto con OpenSSL." #: ../gui/gnomint.glade.h:36 msgid "" "Import a single file, encoded in DER or PEM format, containing " "certificates, private keys (encrypted or plain), signing requests (CSRs), " "revocation lists (CRLs) or PKCS#12 packages." msgstr "" "importa un singolo file, codificato in formato DER o PEM, contenente " "certificati, chiavi private (crittografate o libere), richieste di firma " "(CSRs), liste di revoca (CRLs) o pacchetti PKCS#12." #: ../gui/gnomint.glade.h:37 msgid "" "\n" "It is recommended that all the certificates generated by a CA share the same " "properties.\n" "If you want to generate certificates with different properties, you should " "create a hierarchy of CAs, each one with its own policy for certificate " "generation.\n" "\n" "Please, define the maximum set of properties for the certificates that this " "CA will be able to generate:\n" msgstr "" "\n" "Si raccomanda che tutti i certificati generati da CA condividano le medesime " "proprietà.\n" "Se si desidera generare certificati con proprietà diverse, si dovrebbe " "creare una gerarchia di CA differenti tra loro, ognuno con la propria " "politica per la generazione del certificato.\n" "\n" "Si prega di definire il massimo insieme di proprietà per i certificati che " "questo CA sarà in grado di generare:\n" #: ../gui/gnomint.glade.h:43 msgid "#Description#" msgstr "#Descrizione#" #: ../gui/gnomint.glade.h:44 msgid "" "PKCS#3 files containing Diffie·Hellman parameters are used by " "some cryptographic \n" "applications for a secure interchange of their keys over insecure " "channels." msgstr "" "I file PKCS#3 contenenti parametri Diffie·Hellman vengono " "utilizzati da alcune applicazioni \n" "crittografiche per uno scambio sicuro delle chiavi su canali insicuri." #: ../gui/gnomint.glade.h:46 msgid "" "The part that is being imported has the description:" msgstr "La parte che viene importata ha descrizione:" #: ../gui/gnomint.glade.h:47 msgid "" "The subject of the new certificate request can inherit information " "from one of the existing Certification Authorities. This is a must if the " "policy of the CA you are going to use is defined to force some fields of a " "certificate subject to be the same as the ones in the CA cert " "subject." msgstr "" "L'oggetto della nuova richiesta di certificato può ereditare le " "informazioni da una delle autorità di certificazione esistenti. Questo è " "obbligatorio se la politica del CA, che si intende utilizzare, è definita " "per forzare alcuni campi di un soggetto certificato in modo da essere gli " "stessi di quelli del soggetto certificato CA." #: ../gui/gnomint.glade.h:48 msgid "Activated on" msgstr "Attivato il" #: ../gui/gnomint.glade.h:49 msgid "Add CSR" msgstr "Aggiungi CSR" #: ../gui/gnomint.glade.h:50 msgid "Add _Certificate Request" msgstr "Agiunggere Richiesta di _Certificato" #: ../gui/gnomint.glade.h:51 msgid "Add a new Certificate Signing Request" msgstr "Aggiungi una nuova richiesta di firma certificato (CSR)" #: ../gui/gnomint.glade.h:52 msgid "Add an autosigned CA" msgstr "Aggiungi un CA autofirmato" #: ../gui/gnomint.glade.h:53 msgid "Add autosigned CA certificate" msgstr "Aggiungi un certificato CA autofirmato" #: ../gui/gnomint.glade.h:54 ../src/certificate_properties.c:1130 #: ../src/tls.c:1082 msgid "Any purpose" msgstr "Qualunque proposito" #: ../gui/gnomint.glade.h:55 msgid "" "Automatically export created certificates to \n" "Gnome-keyring certificate store" msgstr "" "Esporta automaticamente i certificati creati nello \n" "Gnome-keyring certificate store" #: ../gui/gnomint.glade.h:57 msgid "Both parts." msgstr "Entrambe le parti." #: ../gui/gnomint.glade.h:58 msgid "CA Policy" msgstr "Politica CA" #: ../gui/gnomint.glade.h:59 msgid "" "CA Root Certificate \n" "Common Name (CN):" msgstr "" "Certificato radice CA \n" "Common Name (CN):" #: ../gui/gnomint.glade.h:61 msgid "CA properties" msgstr "Proprietà CA" #: ../gui/gnomint.glade.h:62 msgid "CACN" msgstr "CACN" #: ../gui/gnomint.glade.h:63 msgid "CAO" msgstr "CAO" #: ../gui/gnomint.glade.h:64 msgid "CAOU" msgstr "CAOU" #: ../gui/gnomint.glade.h:65 ../src/certificate_properties.c:358 #: ../src/tls.c:1056 msgid "CRL signing" msgstr "Firma CRL" #: ../gui/gnomint.glade.h:66 msgid "CSR properties - gnoMint" msgstr "Proprietà CSR - gnoMint" #: ../gui/gnomint.glade.h:67 msgid "CertActivationDate" msgstr "CertActivationDate" #: ../gui/gnomint.glade.h:68 msgid "CertExpirationDate" msgstr "CertExpirationDate" #: ../gui/gnomint.glade.h:69 msgid "CertSN" msgstr "CertSN" #: ../gui/gnomint.glade.h:70 msgid "" "Certificate \n" "Common Name (CN):" msgstr "" "Certificato \n" "Nome Comune (CN):" #: ../gui/gnomint.glade.h:72 msgid "Certificate DN" msgstr "Certificato DN" #: ../gui/gnomint.glade.h:73 msgid "Certificate _Signing Requests" msgstr "Richiesta di _firma di certificato (CSR)" #: ../gui/gnomint.glade.h:74 msgid "Certificate properties" msgstr "Propietà dei Certificati" #: ../gui/gnomint.glade.h:75 msgid "Certificate properties - gnoMint" msgstr "Proprietà di certificato - gnoMint" #: ../gui/gnomint.glade.h:76 ../src/tls.c:1039 msgid "Certification Authority" msgstr "Autorità di Certificazione" #: ../gui/gnomint.glade.h:77 msgid "Change database pass_word" msgstr "Cambiare la pass_word del database" #: ../gui/gnomint.glade.h:78 msgid "Choose CA for signing the CSR" msgstr "Scegliere CA per firmare il CSR" #: ../gui/gnomint.glade.h:79 msgid "Choose private key file. gnoMint" msgstr "Scegliere un file con chiave privata. gnoMint" #: ../gui/gnomint.glade.h:80 msgid "City" msgstr "Località" #: ../gui/gnomint.glade.h:81 msgid "City: " msgstr "Città: " #: ../gui/gnomint.glade.h:82 ../src/certificate_properties.c:1126 #: ../src/tls.c:1074 msgid "Code signing" msgstr "Firmando Codice" #: ../gui/gnomint.glade.h:83 msgid "Common Name (CN)" msgstr "Nome comune (CN)" #: ../gui/gnomint.glade.h:84 msgid "Country" msgstr "Stato" #: ../gui/gnomint.glade.h:85 msgid "Country:" msgstr "Stato:" #: ../gui/gnomint.glade.h:86 msgid "Create a new database" msgstr "" #: ../gui/gnomint.glade.h:87 msgid "Creating CA Root Certificate" msgstr "Creando Certificato CA di Root" #: ../gui/gnomint.glade.h:88 msgid "Creating new CA - gnoMint" msgstr "Creazione di un nuovo CA - gnoMint" #: ../gui/gnomint.glade.h:89 msgid "DSA" msgstr "DSA" #: ../gui/gnomint.glade.h:90 ../src/certificate_properties.c:352 #: ../src/tls.c:1050 msgid "Data encipherment" msgstr "Cifratura dei dati" #: ../gui/gnomint.glade.h:91 msgid "Database password protection - gnoMint" msgstr "Protezione password del database - gnoMint" #: ../gui/gnomint.glade.h:92 msgid "Delete the selected Certificate Signing Request" msgstr "Cancellazione della richiesta di firma certificato (CSR) selezionata" #: ../gui/gnomint.glade.h:93 msgid "Details" msgstr "Dettagli" #: ../gui/gnomint.glade.h:94 ../src/certificate_properties.c:346 #: ../src/tls.c:1044 msgid "Digital signature" msgstr "Signatura digitale" #: ../gui/gnomint.glade.h:95 msgid "Don't inherit any fields from existing Certification Authorities" msgstr "Non ereditare nessun campo dalle esistenti autorità certificative" #: ../gui/gnomint.glade.h:96 msgid "E_xport" msgstr "" #: ../gui/gnomint.glade.h:97 ../src/certificate_properties.c:1127 #: ../src/tls.c:1076 msgid "Email protection" msgstr "Protezione email" #: ../gui/gnomint.glade.h:98 msgid "" "Enter new password again \n" "for confirmation:" msgstr "" "Inserire nuovamente la password \n" "per conferma:" #: ../gui/gnomint.glade.h:100 msgid "Enter password - gnoMint" msgstr "Inserire la password - gnoMint" #: ../gui/gnomint.glade.h:101 msgid "Enter password again for confirmation:" msgstr "Inserire nuovamente la password per conferma:" #: ../gui/gnomint.glade.h:102 msgid "Expires on" msgstr "Scade il" #: ../gui/gnomint.glade.h:103 msgid "Export certificate - gnoMint" msgstr "Esporta certificato - gnoMint" #: ../gui/gnomint.glade.h:104 msgid "Export options" msgstr "Esporta le opzioni" #: ../gui/gnomint.glade.h:105 msgid "Exports the CSR so it can be imported by any other application" msgstr "" "Esporta il CSR per poterlo importare con qualsiasi altra applicazione" #: ../gui/gnomint.glade.h:106 msgid "" "Exports the certificate so it can be imported by any other application" msgstr "" "Esporta il certificato per poterlo importare con qualsiasi altra applicazione" #: ../gui/gnomint.glade.h:107 msgid "Extrac_t private key" msgstr "Es_trarre chiave privata" #: ../gui/gnomint.glade.h:108 msgid "Extract Private Key" msgstr "Estrai la chiave privata" #: ../gui/gnomint.glade.h:109 msgid "Extract the private key of the selected item into a external file" msgstr "Estrai la chiave privata dell'oggetto selezionato in un file esterno" #: ../gui/gnomint.glade.h:110 msgid "Extract the saved private key to an external file or device" msgstr "Estrarre la chiave privata salvata ad un file esterno o periferico" #: ../gui/gnomint.glade.h:111 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the CSR will be used" msgstr "" "Estrae la chiave privata del certificato\n" "selezionato dal database ad un\n" "file esterno. Questo file deve essere fornito\n" "ogni volta che il CSR verrà utilizzato" #: ../gui/gnomint.glade.h:115 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the certificate will be used" msgstr "" "Estrae la chiave privata del certificato\n" "selezionato dal database ad un\n" "file esterno. Questo file deve essere fornito\n" "ogni volta che il certificato verrà utilizzato" #: ../gui/gnomint.glade.h:119 msgid "General" msgstr "Generale" #: ../gui/gnomint.glade.h:120 msgid "General Preferences - gnoMint" msgstr "Preferenze Generali - gnoMint" #: ../gui/gnomint.glade.h:121 msgid "Generate D_H parameters..." msgstr "Generare parametri D_H ..." #: ../gui/gnomint.glade.h:122 msgid "Generate _CRL" msgstr "Generare _CRL" #: ../gui/gnomint.glade.h:123 msgid "Generate the current Certificate Revocation List" msgstr "Genera l'attuale lista di revoca certificati" #: ../gui/gnomint.glade.h:124 msgid "Hours between CRL updates:" msgstr "Ore tra gli aggiornamenti CRL:" #: ../gui/gnomint.glade.h:125 msgid "Import a single file." msgstr "Importa un singolo file." #: ../gui/gnomint.glade.h:126 msgid "Import a whole directory." msgstr "Importa una cartella completa." #: ../gui/gnomint.glade.h:127 msgid "Import selection - gnoMint" msgstr "Importa la selezione - gnoMint" #: ../gui/gnomint.glade.h:128 msgid "" "Inherit fields according to selected Certification Authority and its policy." msgstr "" "Eredita i campi in accordo con l'autorità certificativa selezionata e la sua " "politica." #: ../gui/gnomint.glade.h:129 ../src/certificate_properties.c:354 #: ../src/tls.c:1052 msgid "Key agreement" msgstr "Accordo di chiavi" #: ../gui/gnomint.glade.h:130 ../src/certificate_properties.c:350 #: ../src/tls.c:1048 msgid "Key encipherment" msgstr "Cifratura chiave" #: ../gui/gnomint.glade.h:131 msgid "MD5 fingerprint" msgstr "Impronta digitale MD5" #: ../gui/gnomint.glade.h:132 msgid "MD5FINGERPRINT" msgstr "MD5FINGERPRINT" #: ../gui/gnomint.glade.h:133 msgid "" "Maximum number of months before expiration of the new generated certificates:" msgstr "" "Massimo numero di mesi prima della scadenzza dei nuovi certificati generati:" #: ../gui/gnomint.glade.h:134 msgid "Months before certificate expiration:" msgstr "Mesi prima della scadenza del certificato:" #: ../gui/gnomint.glade.h:135 msgid "Months before root certificate expiration:" msgstr "Mesi prima della scadenzza dei certificati di root:" #: ../gui/gnomint.glade.h:136 msgid "New CA - gnoMint" msgstr "Nuovo CA - gnoMint" #: ../gui/gnomint.glade.h:137 msgid "New CRL - gnoMint" msgstr "Nuovo CRL - gnoMint" #: ../gui/gnomint.glade.h:138 msgid "New Certificate - gnoMint" msgstr "Nuovo Certificato - gnoMint" #: ../gui/gnomint.glade.h:139 msgid "New Diffie-Hellman parameters - gnoMint" msgstr "Nuovo parametro Diffie-Hellman - gnoMint" #: ../gui/gnomint.glade.h:140 msgid "" "New certificate \n" "Common Name (CN):" msgstr "" "Nuovo certificato \n" "Nome Comune (CN):" #: ../gui/gnomint.glade.h:142 msgid "New certificate request - gnoMint" msgstr "Nuova richiesta di certificato - gnoMint" #: ../gui/gnomint.glade.h:143 ../src/certificate_properties.c:348 #: ../src/tls.c:1046 msgid "Non repudiation" msgstr "Non rifiutato" #: ../gui/gnomint.glade.h:144 ../src/certificate_properties.c:1129 #: ../src/tls.c:1080 msgid "OCSP signing" msgstr "Firma OCSP" #: ../gui/gnomint.glade.h:145 msgid "Only the private key (crypted)." msgstr "Solo la chiave privata (criptata)." #: ../gui/gnomint.glade.h:146 msgid "Only the private key (uncrypted)." msgstr "Solo la chiave privata (non criptata)." #: ../gui/gnomint.glade.h:147 msgid "Only the pu_blic part." msgstr "Solo la parte pu_bblica." #: ../gui/gnomint.glade.h:148 msgid "Open _recents" msgstr "Apri _recenti" #: ../gui/gnomint.glade.h:149 msgid "Open an existing database" msgstr "Apri un database esistente" #: ../gui/gnomint.glade.h:150 msgid "Organization" msgstr "Organizzazione" #: ../gui/gnomint.glade.h:151 msgid "Organization (O)" msgstr "Organizzazione (O)" #: ../gui/gnomint.glade.h:152 msgid "Organization Unit:" msgstr "Unità organizzativa" #: ../gui/gnomint.glade.h:153 msgid "Organization:" msgstr "Organizzazione:" #: ../gui/gnomint.glade.h:154 msgid "Organizational Unit (OU)" msgstr "Unità organizzativa (OU)" #: ../gui/gnomint.glade.h:155 msgid "Organizational unit" msgstr "Unità organizzativa" #: ../gui/gnomint.glade.h:156 msgid "Password (confirm):" msgstr "Confermare la password" #: ../gui/gnomint.glade.h:157 msgid "Password protect" msgstr "Password protetta" #: ../gui/gnomint.glade.h:158 msgid "Password:" msgstr "Password:" #: ../gui/gnomint.glade.h:159 msgid "Please, choose the file:" msgstr "Si prega di scegliere il file:" #: ../gui/gnomint.glade.h:160 msgid "Please, choose the more suitable option for what you want to import:" msgstr "" "Si prega di scegliere l'opzione più adatta per ciò che si vuole importare:" #: ../gui/gnomint.glade.h:161 msgid "" "Please, choose which part of the saved certificate you want to export:" msgstr "" "Si prega di scegliere la parte del certificato salvato che si vuole " "esportare:" #: ../gui/gnomint.glade.h:162 msgid "" "Please, enter current\n" "password:" msgstr "" "Si prega di inserire\n" "la password corrente:" #: ../gui/gnomint.glade.h:164 msgid "" "Please, enter new \n" "password:" msgstr "" "Si prega di inserire una nuova \n" "password:" #: ../gui/gnomint.glade.h:166 msgid "Please, enter password" msgstr "Si prega di inserire la password" #: ../gui/gnomint.glade.h:167 msgid "Please, enter password:" msgstr "Si prega di inserire la password:" #: ../gui/gnomint.glade.h:168 msgid "Please, enter the prime size, in bits:" msgstr "Si prega di inserire la dimensione primaria, in bit:" #: ../gui/gnomint.glade.h:169 msgid "" "Please, select the CA for which a Certificate \n" "Revocation List is going to be created:" msgstr "" #: ../gui/gnomint.glade.h:171 msgid "Private key bit length:" msgstr "Lunghezza in bit della chiave privata:" #: ../gui/gnomint.glade.h:172 msgid "Private key type:" msgstr "Tipologia di chiave privata:" #: ../gui/gnomint.glade.h:173 msgid "" "Protect CA database private \n" "keys with password:" msgstr "" #: ../gui/gnomint.glade.h:175 msgid "" "Protect CA database private keys\n" "with password:" msgstr "" #: ../gui/gnomint.glade.h:177 msgid "RSA" msgstr "RSA" #: ../gui/gnomint.glade.h:178 msgid "Remember this password during this gnoMint session" msgstr "Ricorda questa password durante la sessione gnoMint" #: ../gui/gnomint.glade.h:179 msgid "Revo_ke" msgstr "" #: ../gui/gnomint.glade.h:180 msgid "Revoke" msgstr "Revoca" #: ../gui/gnomint.glade.h:181 msgid "Revoke the selected certificate" msgstr "Revoca il certificato selezionato" #: ../gui/gnomint.glade.h:182 msgid "Revokes the selected certificate" msgstr "Revoca il certificato selezionato" #: ../gui/gnomint.glade.h:183 msgid "Root certificate prop" msgstr "Supporto di certificato root" #: ../gui/gnomint.glade.h:184 msgid "SHA1 fingerprint" msgstr "" #: ../gui/gnomint.glade.h:185 msgid "SHA1FINGERPRINT" msgstr "SHA1FINGERPRINT" #: ../gui/gnomint.glade.h:186 msgid "Serial number" msgstr "Numero di serie" #: ../gui/gnomint.glade.h:187 msgid "Shows the CSR properties window" msgstr "Visualizza la finestra delle proprietà del CSR" #: ../gui/gnomint.glade.h:188 msgid "Shows the certificate properties window" msgstr "Visualizza la finestra delle proprietà del certificato" #: ../gui/gnomint.glade.h:189 msgid "Sign" msgstr "" #: ../gui/gnomint.glade.h:190 msgid "Sign the selected Certificate Signing Request" msgstr "Firma la richiesta di firma del certificato selezionato" #: ../gui/gnomint.glade.h:191 msgid "State or Province name" msgstr "Stato o Provincia" #: ../gui/gnomint.glade.h:192 msgid "State or Province name: " msgstr "Stato o Provincia: " #: ../gui/gnomint.glade.h:193 msgid "SubjectCN" msgstr "" #: ../gui/gnomint.glade.h:194 msgid "SubjectO" msgstr "" #: ../gui/gnomint.glade.h:195 msgid "SubjectOU" msgstr "" #: ../gui/gnomint.glade.h:196 msgid "TLS Web client" msgstr "Client web TLS" #: ../gui/gnomint.glade.h:197 msgid "TLS Web server" msgstr "Server web TLS" #: ../gui/gnomint.glade.h:198 msgid "" "The whole selected file, or some of its elements, seems to be cyphered using " "a password or passphrase.\n" "\n" "For importing the file into gnoMint database, you must provide an appropiate " "password." msgstr "" "L'intero file selezionato, o alcuni dei suoi elementi, sembra essere cifrato " "utilizzando una password o una passphrase.\n" "\n" "Per importare il file in database gnoMint, è necessario fornire una password " "appropriata." #: ../gui/gnomint.glade.h:201 msgid "" "This action requires using one or more private keys saved in the CA " "database.\n" "\n" "Please insert the database password." msgstr "" "Questa azione richiede l'utilizzo di una o più chiavi private salvate nel " "database di CA.\n" "\n" "Si prega di inserire la password del database." #: ../gui/gnomint.glade.h:204 ../src/certificate_properties.c:1128 #: ../src/tls.c:1078 msgid "Time stamping" msgstr "Time stamping" #: ../gui/gnomint.glade.h:205 msgid "" "You are about to create and export a set of Diffie·Hellman parameters " "into a PKCS#3 structure file." msgstr "" "Si è in procinto di creare ed esportare un insieme di parametri " "Diffie·Hellman in un file di struttura PKCS#3." #: ../gui/gnomint.glade.h:206 msgid "" "You are about to sign a Certificate Signing Request, and this way, creating " "a new certificate. Please check the certificate properties." msgstr "" "Si è in procinto di firmare una richiesta di firma di certificato (CSR) e, " "in questo modo, la creazione di un nuovo certificato. Si prega di verificare " "le proprietà del certificato." #: ../gui/gnomint.glade.h:207 msgid "" "You are about to sign a Certificate Signing Request. Please, choose the " "Certification Authority you are going to use for signing it." msgstr "" "Si è in procinto di firmare una richiesta di firma di certificato (CSR). Si " "prega di scegliere l'autorità certificativa che si intende utilizzare per la " "firma dello stesso." #: ../gui/gnomint.glade.h:208 msgid "_Add self-signed CA" msgstr "" #: ../gui/gnomint.glade.h:209 msgid "_Certificates" msgstr "_Certificati" #: ../gui/gnomint.glade.h:210 msgid "_Edit" msgstr "" #: ../gui/gnomint.glade.h:211 msgid "_Help" msgstr "" #: ../gui/gnomint.glade.h:212 msgid "_Import" msgstr "" #: ../gui/gnomint.glade.h:213 msgid "_New certificate database" msgstr "_Nuovo database di certificato" #: ../gui/gnomint.glade.h:214 msgid "_No" msgstr "" #: ../gui/gnomint.glade.h:215 msgid "_Open certificate database" msgstr "_Apri il database di certificato" #: ../gui/gnomint.glade.h:216 msgid "_Revoked Certificates" msgstr "_Certificati revocati" #: ../gui/gnomint.glade.h:217 msgid "_Save certificate database as..." msgstr "_Salva il database di certificato come..." #: ../gui/gnomint.glade.h:218 msgid "_Save filename in the database for automatic loading" msgstr "_Salva il nome del file nel database per il caricamento automatico" #: ../gui/gnomint.glade.h:219 msgid "_Sign" msgstr "" #: ../gui/gnomint.glade.h:220 msgid "_View" msgstr "" #: ../gui/gnomint.glade.h:221 msgid "_Yes" msgstr "" #: ../gui/gnomint.glade.h:222 msgid "gnoMint" msgstr "gnoMint" #: ../gui/gnomint.glade.h:223 msgid "gtk-cancel" msgstr "" #: ../gui/gnomint.glade.h:224 msgid "gtk-ok" msgstr "" #: ../gui/gnomint.glade.h:225 msgid "label" msgstr "" #: ../gui/gnomint.glade.h:226 msgid "may differ" msgstr "" #: ../gui/gnomint.glade.h:227 msgid "must be the same" msgstr "" #: ../gui/gnomint.glade.h:228 msgid "page 3" msgstr "" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "" #: ../src/ca.c:147 msgid "Certificates" msgstr "Certificati" #: ../src/ca.c:263 msgid "Certificate Signing Requests" msgstr "Richieste di firma di certificato (CSR)" #: ../src/ca.c:304 ../src/ca-cli-callbacks.c:168 ../src/ca-cli-callbacks.c:178 #: ../src/ca-cli-callbacks.c:189 ../src/ca-cli-callbacks.c:547 #: ../src/ca-cli-callbacks.c:551 ../src/ca-cli-callbacks.c:1162 #: ../src/ca-cli-callbacks.c:1166 ../src/certificate_properties.c:178 #: ../src/certificate_properties.c:183 msgid "%m/%d/%Y %R GMT" msgstr "" #: ../src/ca.c:448 ../src/certificate_properties.c:531 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "" #: ../src/ca.c:483 msgid "Serial" msgstr "" #: ../src/ca.c:490 msgid "Activation" msgstr "" #: ../src/ca.c:497 msgid "Expiration" msgstr "" #: ../src/ca.c:504 msgid "Revocation" msgstr "Revoca" #: ../src/ca.c:791 msgid "Export certificate" msgstr "Esporta certificato" #: ../src/ca.c:798 msgid "Export certificate signing request" msgstr "Esporta la richiesta di firma di certificato (CSR)" #: ../src/ca.c:813 ../src/ca.c:849 ../src/ca.c:859 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "Errore durante l'esportazione del certificato." #: ../src/ca.c:815 ../src/ca.c:851 ../src/ca.c:861 msgid "There was an error while exporting CSR." msgstr "Errore durante l'esportazione del CSR." #: ../src/ca.c:874 ../src/ca.c:1040 msgid "Certificate exported successfully" msgstr "Certificato esportato correttamente" #: ../src/ca.c:881 msgid "Certificate signing request exported successfully" msgstr "Richiesta di firma di certificato (CSR) esportata correttamente" #: ../src/ca.c:900 msgid "Export crypted private key" msgstr "Esporta la chiave privata criptata" #: ../src/ca.c:929 ../src/ca.c:981 msgid "Private key exported successfully" msgstr "Chiave privata esportata correttamente" #: ../src/ca.c:951 msgid "Export uncrypted private key" msgstr "Esporta chiave privata non criptata" #: ../src/ca.c:1002 msgid "Export whole certificate in PKCS#12 package" msgstr "Esporta l'intero certificato nel pacchetto PKCS#12" #: ../src/ca.c:1073 msgid "Export CSR - gnoMint" msgstr "Esporta CSR - gnoMint" #: ../src/ca.c:1078 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" "Si prega di scegliere quale parte della richiesta di firma di certificato " "(CSR) salvata si vuole esportare:" #: ../src/ca.c:1083 msgid "" "Export the Certificate Signing Request to a public file, in PEM " "format." msgstr "" "Esporta la richiesta di firma di certificato (CSR) in un file pubblico, " "in formato PEM." #: ../src/ca.c:1088 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" "Esporta la chiave privata salvata in un file PKCS#8 protetto da password. " "Questo file deve essere accessibile solamente da parte del soggetto della " "richiesta di firma di certificato (CSR)." #: ../src/ca.c:1146 msgid "Unexpected error" msgstr "" #: ../src/ca.c:1196 msgid "Are you sure you want to revoke this certificate?" msgstr "Confermare la revoca di questo certificato?" #: ../src/ca.c:1235 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "" "Confermare la cancellazione di questa richiesta di firma di certificato " "(CSR)?" #: ../src/ca.c:1512 msgid "Change CA password - gnoMint" msgstr "" #: ../src/ca.c:1530 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" "La password attualmente inserita non corrisponde con la reale e corrente " "password del database." #: ../src/ca.c:1545 msgid "Error while changing database password. The operation was cancelled." msgstr "" "Errore durante la modifica della password del database. L'operazione è stata " "annullata." #: ../src/ca.c:1554 msgid "Password changed successfully" msgstr "" #: ../src/ca.c:1564 ../src/ca-cli-callbacks.c:1002 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "" "Errore nello stabilire la password del database. L'operazione è stata " "annullata." #: ../src/ca.c:1574 msgid "Password established successfully" msgstr "Password stabilita correttamente" #: ../src/ca.c:1584 msgid "Error while removing database password. The operation was cancelled." msgstr "" "Errore durante la rimozione della password del database. L'operazione è " "stata annullata." #: ../src/ca.c:1593 msgid "Password removed successfully" msgstr "Password rimossa correttamente" #: ../src/ca.c:1731 msgid "Save Diffie-Hellman parameters" msgstr "Salva i parametri Diffie-Hellman" #: ../src/ca.c:1757 msgid "Diffie-Hellman parameters saved successfully" msgstr "Parametri Diffie-Hellman salvati correttamente" #. Import single file #: ../src/ca.c:1826 msgid "Select PEM file to import" msgstr "Selezionare il file PEM da importare" #: ../src/ca.c:1847 #, c-format msgid "Problem when importing '%s' file" msgstr "" #: ../src/ca.c:1860 msgid "Select directory to import" msgstr "" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "" #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "" "Chiudere il file corrente e creare un nuovo database con il nome dato" #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "" #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "Chiudere il file corrente ed aprire il file con il nome dato" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "" #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "Salvare il file corrente con un nome differente" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "" #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "Iniziare un nuovo processo di creazione CSR" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "" #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "" #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" "Estrarre la chiave privata del CSR con l'id interno dato e salvarlo nel file " "stabilito" #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "" #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "Revocare il certificato con l'ID interno dato" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "" #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "" #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "Eliminare il CSR dato dal database" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "" #: ../src/ca-cli.c:55 msgid "" "Generate a new CRL for the given CA, saving it into the file " msgstr "Generare un nuovo CRL per il dato CA, salvandolo nel file " #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "" #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" "Generare un nuovo insieme di parametri DH, salvandolo nel file " #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "Cambiare la password per il database corrente" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "" #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "Importare il file con il nome stabilito " #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "" #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "Importare la cartella stabilita, come una cartella OpenSSL-CA" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "" #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "Visualizza le proprietà del certificato stabilito" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "" #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "Visualizza le proprietà del CSR stabilito" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "" #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "" #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "Visualizza le preferenze di programma" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "setpreference " #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "Visualizza il messaggio di About" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "Visualizza le informazioni di garanzia" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "Visualizza le informazioni di distribuzione" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "Visualizza (questo) messaggio di aiuto" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "Chiudi il database ed esci dal programma" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "Database %s in apertura..." #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr " OK.\n" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr " Errore.\n" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" "\n" "\n" "%s versione %s\n" "%s\n" "\n" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" "Questo programma viene fornito SENZA ALCUNA GARANZIA;\n" "per informazioni digitare 'warranty'.\n" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" "Questo è software libero e siete invitati a ridistribuirlo\n" "rispettando determinate condizioni; digitare 'distribution' per i dettagli.\n" "\n" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" "Comando non valido. Digitare 'help' per ottenere una lista dei comandi " "riconosciuti.\n" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "Numero di parametri non corretto.\n" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "Sintassi: %s\n" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "File già esistente, verrà quindi sovrascritto." #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:638 msgid "Are you sure? Yes/[No] " msgstr "Confermare? Si/[No] " #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "" "Si è verificato un problema nell'apertura del nuovo database CA '%s'\n" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "Il file '%s' è stato aperto\n" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "Si è verificato un problema nell'apertura del database CA '%s'\n" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "File aperto corrente: %s\n" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "Numero di certificati nel file: %d\n" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "Numero di CSR nel file: %d\n" #: ../src/ca-cli-callbacks.c:140 #, c-format msgid "CertList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:143 msgid "CertList IsCA|Y\t" msgstr "" #: ../src/ca-cli-callbacks.c:145 msgid "CertList IsCA|N\t" msgstr "" #: ../src/ca-cli-callbacks.c:150 #, c-format msgid "CertList Subject|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:153 msgid "CertList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:155 msgid "CertList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:158 msgid "CertList PKeyInDB|Y\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:160 msgid "CertList PKeyInDB|N\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:164 msgid "CertList Activation|\t" msgstr "" #: ../src/ca-cli-callbacks.c:169 #, c-format msgid "CertList Activation|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:174 msgid "CertList Expiration|\t" msgstr "" #: ../src/ca-cli-callbacks.c:179 #, c-format msgid "CertList Expiration|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:185 msgid "CertList Revocation|\n" msgstr "" #: ../src/ca-cli-callbacks.c:190 #, c-format msgid "CertList Revocation|%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:207 #, c-format msgid "Certificates in Database:\n" msgstr "Certificati nel Database:\n" #: ../src/ca-cli-callbacks.c:208 #, c-format msgid "" "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "" #: ../src/ca-cli-callbacks.c:211 #, c-format msgid "\t\tRevocation\n" msgstr "" #: ../src/ca-cli-callbacks.c:221 #, c-format msgid "CsrList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "CsrList ParentID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 msgid "CsrList ParentID|\t" msgstr "" #: ../src/ca-cli-callbacks.c:228 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "" #: ../src/ca-cli-callbacks.c:231 msgid "CsrList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:233 msgid "CsrList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:236 msgid "CsrList PKeyInDB|Y\n" msgstr "" #: ../src/ca-cli-callbacks.c:238 msgid "CsrList PKeyInDB|N\n" msgstr "" #: ../src/ca-cli-callbacks.c:246 #, c-format msgid "Certificate Requests in Database:\n" msgstr "Richieste di certificato nel database:\n" #: ../src/ca-cli-callbacks.c:247 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "" #: ../src/ca-cli-callbacks.c:275 ../src/ca-cli-callbacks.c:945 #: ../src/ca-cli-callbacks.c:1310 ../src/ca-cli-callbacks.c:1339 msgid "The given CA id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:328 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:330 ../src/ca-cli-callbacks.c:453 msgid "Enter country (C)" msgstr "" #: ../src/ca-cli-callbacks.c:336 ../src/ca-cli-callbacks.c:459 msgid "Enter state or province (ST)" msgstr "" #: ../src/ca-cli-callbacks.c:342 ../src/ca-cli-callbacks.c:465 msgid "Enter locality or city (L)" msgstr "" #: ../src/ca-cli-callbacks.c:348 ../src/ca-cli-callbacks.c:471 msgid "Enter organization (O)" msgstr "" #: ../src/ca-cli-callbacks.c:354 ../src/ca-cli-callbacks.c:477 msgid "Enter organizational unit (OU)" msgstr "" #: ../src/ca-cli-callbacks.c:360 ../src/ca-cli-callbacks.c:483 msgid "Enter common name (CN)" msgstr "" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:493 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "" #: ../src/ca-cli-callbacks.c:382 ../src/ca-cli-callbacks.c:505 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "" #: ../src/ca-cli-callbacks.c:386 #, c-format msgid "These are the provided CSR properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:388 ../src/ca-cli-callbacks.c:526 #: ../src/ca-cli-callbacks.c:1152 ../src/ca-cli-callbacks.c:1204 #, c-format msgid "Subject:\n" msgstr "" #: ../src/ca-cli-callbacks.c:389 ../src/ca-cli-callbacks.c:527 #, c-format msgid "\tDistinguished Name: " msgstr "" #: ../src/ca-cli-callbacks.c:403 ../src/ca-cli-callbacks.c:541 #, c-format msgid "Key pair\n" msgstr "" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:542 #, c-format msgid "\tType: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:543 #, c-format msgid "\tKey bitlength: %d\n" msgstr "\tLungezza in bit della chiave: %d\n" #: ../src/ca-cli-callbacks.c:407 ../src/ca-cli-callbacks.c:554 msgid "Do you want to change anything? Yes/[No] " msgstr "Apportare modifiche? Si/[No] " #: ../src/ca-cli-callbacks.c:411 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "" "Si è in procinto di creare una richiesta di firma di certificato (CSR) con " "queste proprietà." #: ../src/ca-cli-callbacks.c:412 ../src/ca-cli-callbacks.c:559 msgid "Are you sure? [Yes]/No " msgstr "Confermare? [Si]/No " #: ../src/ca-cli-callbacks.c:417 ../src/ca-cli-callbacks.c:564 #: ../src/ca-cli-callbacks.c:648 ../src/ca-cli-callbacks.c:779 #: ../src/ca-cli-callbacks.c:902 ../src/ca-cli-callbacks.c:931 #: ../src/ca-cli-callbacks.c:997 ../src/ca-cli-callbacks.c:1024 #: ../src/ca-cli-callbacks.c:1052 ../src/ca-cli-callbacks.c:1067 #: ../src/ca-cli-callbacks.c:1369 ../src/ca-cli-callbacks.c:1412 #, c-format msgid "Operation cancelled.\n" msgstr "Operazione cancellata.\n" #: ../src/ca-cli-callbacks.c:451 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "" "Si prega di inserire i dati corrispondenti al soggetto della nuova autorità " "certificativa:\n" #: ../src/ca-cli-callbacks.c:510 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" "Introdurre il numero di mesi mancanti alla scadenza della nuova autorità " "certificativa" #: ../src/ca-cli-callbacks.c:524 #, c-format msgid "These are the provided new CA properties:\n" msgstr "Queste sono le proprietà fornite dal nuovo CA:\n" #: ../src/ca-cli-callbacks.c:544 #, c-format msgid "Validity\n" msgstr "Validità\n" #: ../src/ca-cli-callbacks.c:545 ../src/ca-cli-callbacks.c:1160 #, c-format msgid "Validity:\n" msgstr "Validità:\n" #: ../src/ca-cli-callbacks.c:548 ../src/ca-cli-callbacks.c:1163 #, c-format msgid "\tActivated on: %s\n" msgstr "\tAttivazione: %s\n" #: ../src/ca-cli-callbacks.c:552 ../src/ca-cli-callbacks.c:1167 #, c-format msgid "\tExpires on: %s\n" msgstr "\tScadenza: %s\n" #: ../src/ca-cli-callbacks.c:558 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "" "Si è in procinto di creare una nuova autorità certificativa con queste " "proprietà." #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:632 #: ../src/ca-cli-callbacks.c:1137 msgid "The given certificate id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:591 ../src/ca-cli-callbacks.c:615 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "Chiave privata estratta correttamente nel file '%s'\n" #: ../src/ca-cli-callbacks.c:608 ../src/ca-cli-callbacks.c:760 #: ../src/ca-cli-callbacks.c:915 ../src/ca-cli-callbacks.c:1193 msgid "The given CSR id. is not valid" msgstr "L'id. del CSR fornito non è valido" #: ../src/ca-cli-callbacks.c:638 msgid "This certificate will be revoked." msgstr "Il certificato sarà revocato." #: ../src/ca-cli-callbacks.c:644 #, c-format msgid "Certificate revoked.\n" msgstr "Certificato revocato.\n" #: ../src/ca-cli-callbacks.c:658 ../src/ca-cli-callbacks.c:1174 #, c-format msgid "Certificate uses:\n" msgstr "Il certificato usa:\n" #: ../src/ca-cli-callbacks.c:661 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:663 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "* Utilizzo dell'autorità certificativa disabilitato.\n" #: ../src/ca-cli-callbacks.c:667 #, c-format msgid "* CRL signing use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:669 #, c-format msgid "* CRL signing use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:673 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "* Utilizzo della firma digitale abilitato.\n" #: ../src/ca-cli-callbacks.c:675 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "* Utilizzo della firma digitale disabilitato.\n" #: ../src/ca-cli-callbacks.c:679 ../src/ca-cli-callbacks.c:681 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "* Utilizzo della cifratura dati abilitato.\n" #: ../src/ca-cli-callbacks.c:685 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "* Utilizzo della cifratura di chiave abilitato.\n" #: ../src/ca-cli-callbacks.c:687 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "* Utilizzo della cifratura di chiave disabilitato.\n" #: ../src/ca-cli-callbacks.c:691 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:693 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:697 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:699 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:702 #, c-format msgid "Certificate purposes:\n" msgstr "Scopi del certificato:\n" #: ../src/ca-cli-callbacks.c:705 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:707 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:711 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:713 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:717 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:719 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:723 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:725 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:729 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:731 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:735 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:737 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:741 #, c-format msgid "* Any purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:743 #, c-format msgid "* Any purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:767 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:769 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "" #: ../src/ca-cli-callbacks.c:772 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" #: ../src/ca-cli-callbacks.c:782 #, c-format msgid "" "The certificate will be generated with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:800 ../src/ca-cli-callbacks.c:888 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:803 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:806 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:808 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:812 msgid "* Enable CRL Signing? [Yes]/No " msgstr "* Abilitare la firma CRL? [Si]/No " #: ../src/ca-cli-callbacks.c:814 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "* Utilizzo della firma CRL disabilitato dalla politica\n" #: ../src/ca-cli-callbacks.c:818 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "* Abilitare l'utilizzo della firma digitale? [Si]/No " #: ../src/ca-cli-callbacks.c:820 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "* Utilizzo della firma digitale disabilitato dalla politica\n" #: ../src/ca-cli-callbacks.c:824 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "Abilitare l'utilizzo della cifratura dei dati? [Si]/No " #: ../src/ca-cli-callbacks.c:826 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "* Utilizzo della cifratura dei dati disabilitato dalla politica\n" #: ../src/ca-cli-callbacks.c:830 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "Abilitare l'utilizzo della cifratura di chiave? [Si]/No " #: ../src/ca-cli-callbacks.c:832 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "* Utilizzo della cifratura di chiave disabilitato dalla politica\n" #: ../src/ca-cli-callbacks.c:836 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:838 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:842 msgid "Enable Key Agreement use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:844 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:848 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:850 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:854 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:856 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:860 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:862 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:866 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:868 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:872 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:874 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:878 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:883 msgid "Enable any purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:899 #, c-format msgid "Certificate signed.\n" msgstr "Certificato firmato.\n" #: ../src/ca-cli-callbacks.c:921 msgid "This Certificate Signing Request will be deleted." msgstr "La richiesta di firma di certificato (CSR) sarà cancellata." #: ../src/ca-cli-callbacks.c:921 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:927 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "Richiesta di firma di certificato eliminata.\n" #: ../src/ca-cli-callbacks.c:952 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "CRL generato correttamente nel file '%s'\n" #: ../src/ca-cli-callbacks.c:969 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "" "La lunghezza in bit del numero primo deve essere un multiplo intero di 1024" #: ../src/ca-cli-callbacks.c:978 #, c-format msgid "" "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "" "Parametri Diffie-Hellman creati e salvati correttamente nel file '%s'\n" #: ../src/ca-cli-callbacks.c:990 msgid "Currently, the database is not password-protected." msgstr "Attualmente il database non è protetto da password" #: ../src/ca-cli-callbacks.c:990 msgid "Do you want to password protect it? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:991 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password:" msgstr "Inserire la password:" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password (confirm):" msgstr "Inserire la password (conferma):" #: ../src/ca-cli-callbacks.c:995 ../src/ca-cli-callbacks.c:1065 msgid "The introduced passwords are distinct." msgstr "Le password introdotte sono diverse." #: ../src/ca-cli-callbacks.c:1006 #, c-format msgid "Password established successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Nothing done.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Currently, the database IS password-protected." msgstr "Attualmente il database IS è protetto da password." #: ../src/ca-cli-callbacks.c:1017 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:1021 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1022 ../src/ca-cli-callbacks.c:1050 msgid "Please, insert the current database password (Empty to cancel): " msgstr "" #: ../src/ca-cli-callbacks.c:1029 ../src/ca-cli-callbacks.c:1057 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" #: ../src/ca-cli-callbacks.c:1034 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1039 #, c-format msgid "Password removed successfully.\n" msgstr "Password rimossa correttamente.\n" #: ../src/ca-cli-callbacks.c:1049 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1061 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password:" msgstr "Inserire la nuova password:" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password (confirm):" msgstr "Inserire la nuova password (conferma):" #: ../src/ca-cli-callbacks.c:1073 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1079 #, c-format msgid "Password changed successfully.\n" msgstr "Password modificata correttamente.\n" #: ../src/ca-cli-callbacks.c:1097 msgid "Problem when importing the given file." msgstr "Si è verificato un problema durante l'importazione del file fornito." #: ../src/ca-cli-callbacks.c:1100 #, c-format msgid "File imported successfully.\n" msgstr "File importato correttamente.\n" #: ../src/ca-cli-callbacks.c:1116 #, c-format msgid "Directory imported successfully.\n" msgstr "Cartella importata correttamente.\n" #: ../src/ca-cli-callbacks.c:1145 #, c-format msgid "Certificate:\n" msgstr "Certificato:\n" #: ../src/ca-cli-callbacks.c:1149 #, c-format msgid "\tSerial number: %s\n" msgstr "\tNumero di serie: %s\n" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1157 #: ../src/ca-cli-callbacks.c:1205 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1154 #: ../src/ca-cli-callbacks.c:1157 ../src/ca-cli-callbacks.c:1158 msgid "None." msgstr "" #: ../src/ca-cli-callbacks.c:1154 ../src/ca-cli-callbacks.c:1158 #: ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tUnique ID: %s\n" msgstr "\tID unico: %s\n" #: ../src/ca-cli-callbacks.c:1156 #, c-format msgid "Issuer:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1169 #, c-format msgid "Fingerprints:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1170 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1171 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1202 #, c-format msgid "Certificate Signing Request:\n" msgstr "Richiesta di firma di certificato (CSR):\n" #: ../src/ca-cli-callbacks.c:1275 msgid "Generated certs inherit Country from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1276 msgid "Generated certs inherit State from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1277 msgid "Generated certs inherit Locality from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1278 msgid "Generated certs inherit Organization from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1279 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1280 msgid "Country in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1281 msgid "State in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1282 msgid "Locality in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1283 msgid "Organization in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1284 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "" #: ../src/ca-cli-callbacks.c:1285 msgid "Maximum number of hours between CRL updates " msgstr "" #: ../src/ca-cli-callbacks.c:1286 msgid "Maximum number of months before expiration of new certs " msgstr "" #: ../src/ca-cli-callbacks.c:1287 msgid "CA use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1288 msgid "CRL Sign use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1289 msgid "Non reputation use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1290 msgid "Digital signature use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1291 msgid "Key encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1292 msgid "Key agreement use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1293 msgid "Data encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1294 msgid "TLS web server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1295 msgid "TLS web client purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1296 msgid "Time stamping purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1297 msgid "Code signing server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1298 msgid "Email protection purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1299 msgid "OCSP signing purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1300 msgid "Any purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1314 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "Visualizzazione delle politiche del seguente certificato:\n" #: ../src/ca-cli-callbacks.c:1316 #, c-format msgid "" "\n" "Policies:\n" msgstr "" "\n" "Politiche:\n" #: ../src/ca-cli-callbacks.c:1318 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1344 msgid "The given policy id is not valid" msgstr "La politica fornita non è valida" #: ../src/ca-cli-callbacks.c:1356 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1360 ../src/ca-cli-callbacks.c:1404 msgid "Are you sure? Yes/[No] : " msgstr "Confermare? Si/[No] " #: ../src/ca-cli-callbacks.c:1365 #, c-format msgid "Policy set correctly to '%d'.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1379 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1381 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1382 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "" #: ../src/ca-cli-callbacks.c:1394 msgid "The given preference id is not valid" msgstr "La preferenza fornita non è valida" #: ../src/ca-cli-callbacks.c:1400 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1422 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" "%s versione %s\n" "%s\n" #: ../src/ca-cli-callbacks.c:1423 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" "\n" "Autori:\n" "%s\n" "\n" #: ../src/ca-cli-callbacks.c:1424 ../src/ca-cli-callbacks.c:1425 #: ../src/main.c:502 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " David Marín https://launchpad.net/~davefx\n" " Federico Pontelli https://launchpad.net/~federico\n" " Jecko Development https://launchpad.net/~jecko\n" " Vincenzo Reale https://launchpad.net/~smart2128\n" " gnuckx https://launchpad.net/~gnuckx" #: ../src/ca-cli-callbacks.c:1425 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" "Traduttori:\n" "%s\n" #: ../src/ca-cli-callbacks.c:1432 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1450 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1465 #, c-format msgid "%s version %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1474 #, c-format msgid "Available commands:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "===================\n" msgstr "===================\n" #: ../src/ca-cli-callbacks.c:1485 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "In uscita da gnomint-cli...\n" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "Generazione di una nuova coppia di chiavi RSA" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "Generazione della chiave fallita" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "Generazione di una nuova coppia di chiavi DSA" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "Generazione del certificato fallita" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "Creazione del database di CA" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "Creazione del database di CA fallita" #: ../src/ca_creation.c:144 msgid "CA generated successfully" msgstr "CA generato correttamente" #: ../src/ca_file.c:196 #, c-format msgid "Error opening filename '%s'" msgstr "Errore nell'apertura del file '%s'" #: ../src/ca_file.c:299 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" #: ../src/ca_file.c:1311 msgid "Cannot find parent CA in database" msgstr "" #: ../src/ca_file.c:1499 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "" #: ../src/ca_file.c:1930 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" #: ../src/ca_file.c:1933 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" #: ../src/certificate_properties.c:356 ../src/tls.c:1054 msgid "Certificate signing" msgstr "" #: ../src/certificate_properties.c:360 msgid "Key encipherment only" msgstr "" #: ../src/certificate_properties.c:362 msgid "Key decipherment only" msgstr "" #: ../src/certificate_properties.c:376 msgid "Version" msgstr "" #: ../src/certificate_properties.c:411 msgid "Serial Number" msgstr "" #: ../src/certificate_properties.c:427 ../src/certificate_properties.c:1060 msgid "Signature" msgstr "Firma" #: ../src/certificate_properties.c:430 ../src/certificate_properties.c:558 #: ../src/certificate_properties.c:561 ../src/certificate_properties.c:1027 msgid "Algorithm" msgstr "Algoritmo" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:594 ../src/certificate_properties.c:622 #: ../src/certificate_properties.c:1030 msgid "Parameters" msgstr "" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:622 ../src/certificate_properties.c:624 #: ../src/certificate_properties.c:635 ../src/certificate_properties.c:644 #: ../src/certificate_properties.c:1031 msgid "(unknown)" msgstr "(sconosciuto)" #: ../src/certificate_properties.c:465 msgid "Issuer" msgstr "" #: ../src/certificate_properties.c:493 msgid "Validity" msgstr "Validità" #: ../src/certificate_properties.c:496 msgid "Not Before" msgstr "Non prima" #: ../src/certificate_properties.c:499 msgid "Not After" msgstr "Non dopo" #: ../src/certificate_properties.c:555 msgid "Subject Public Key Info" msgstr "Informazioni della chiave pubblica soggetto" #: ../src/certificate_properties.c:568 msgid "RSA PublicKey" msgstr "" #: ../src/certificate_properties.c:578 msgid "Modulus" msgstr "" #: ../src/certificate_properties.c:584 msgid "Public Exponent" msgstr "" #: ../src/certificate_properties.c:617 msgid "DSA PublicKey" msgstr "" #: ../src/certificate_properties.c:624 msgid "Subject Public Key" msgstr "Chiave pubblica del soggetto" #: ../src/certificate_properties.c:635 msgid "Issuer Unique ID" msgstr "" #: ../src/certificate_properties.c:644 msgid "Subject Unique ID" msgstr "ID univoco del soggetto" #: ../src/certificate_properties.c:666 ../src/certificate_properties.c:689 #: ../src/certificate_properties.c:758 ../src/certificate_properties.c:862 #: ../src/certificate_properties.c:890 ../src/certificate_properties.c:930 #: ../src/certificate_properties.c:987 ../src/certificate_properties.c:1112 msgid "Value" msgstr "Valore" #: ../src/certificate_properties.c:728 ../src/certificate_properties.c:832 msgid "DNS Name" msgstr "Nome DNS" #: ../src/certificate_properties.c:733 ../src/certificate_properties.c:837 msgid "RFC822 Name" msgstr "" #: ../src/certificate_properties.c:738 ../src/certificate_properties.c:842 msgid "URI" msgstr "URI" #: ../src/certificate_properties.c:744 msgid "IP" msgstr "IP" #: ../src/certificate_properties.c:751 ../src/certificate_properties.c:855 msgid "Directory Name" msgstr "" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "TRUE" msgstr "VERO" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "FALSE" msgstr "FALSO" #: ../src/certificate_properties.c:790 msgid "CA" msgstr "CA" #: ../src/certificate_properties.c:794 msgid "Path Length Constraint" msgstr "" #: ../src/certificate_properties.c:848 msgid "IP Address" msgstr "Indirizzo IP" #: ../src/certificate_properties.c:963 msgid "Extensions" msgstr "Estensioni" #: ../src/certificate_properties.c:972 msgid "Critical" msgstr "" #: ../src/certificate_properties.c:1000 msgid "Certificate" msgstr "" #: ../src/certificate_properties.c:1025 msgid "Signature Algorithm" msgstr "" #: ../src/certificate_properties.c:1108 msgid "Name" msgstr "" #: ../src/certificate_properties.c:1124 ../src/tls.c:1070 msgid "TLS WWW Server" msgstr "" #: ../src/certificate_properties.c:1125 msgid "TLS WWW Client" msgstr "" #: ../src/certificate_properties.c:1131 msgid "Subject Directory Attributes" msgstr "" #: ../src/certificate_properties.c:1132 msgid "Subject Key Identifier" msgstr "" #: ../src/certificate_properties.c:1133 msgid "Key Usage" msgstr "" #: ../src/certificate_properties.c:1134 msgid "Private Key Usage Period" msgstr "" #: ../src/certificate_properties.c:1135 msgid "Subject Alternative Name" msgstr "" #: ../src/certificate_properties.c:1136 msgid "Basic Constraints" msgstr "" #: ../src/certificate_properties.c:1137 msgid "Name Constraints" msgstr "" #: ../src/certificate_properties.c:1138 msgid "CRL Distribution Points" msgstr "" #: ../src/certificate_properties.c:1139 msgid "Certificate Policies" msgstr "" #: ../src/certificate_properties.c:1140 msgid "Policy Mappings" msgstr "" #: ../src/certificate_properties.c:1141 msgid "Authority Key Identifier" msgstr "" #: ../src/certificate_properties.c:1142 msgid "Policy Constraints" msgstr "" #: ../src/certificate_properties.c:1143 msgid "Extended Key Usage" msgstr "" #: ../src/certificate_properties.c:1144 msgid "Delta CRL Distribution Point" msgstr "" #: ../src/certificate_properties.c:1145 msgid "Inhibit Any-Policy" msgstr "" #: ../src/creation_process_window.c:79 msgid "CA creation process finished" msgstr "" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "" #: ../src/creation_process_window.c:274 msgid "Creating Certificate Signing Request" msgstr "" #: ../src/crl.c:250 msgid "Export Certificate Revocation List" msgstr "" #: ../src/crl.c:280 msgid "CRL generated successfully" msgstr "" #: ../src/crl.c:309 ../src/crl.c:371 ../src/crl.c:382 msgid "There was an error while exporting CRL." msgstr "" #: ../src/crl.c:320 msgid "There was an error while getting revoked certificates." msgstr "" #: ../src/crl.c:336 ../src/crl.c:355 msgid "There was an error while generating CRL." msgstr "" #: ../src/crl.c:363 msgid "There was an error while writing CRL." msgstr "" #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "" #: ../src/csr_properties.c:78 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" #: ../src/dialog.c:79 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" #: ../src/dialog.c:103 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "" #: ../src/dialog.c:104 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "" #: ../src/dialog.c:372 msgid "To do. Feature not implemented yet." msgstr "" #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "" #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "" #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "" #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "" #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "" #: ../src/export.c:110 msgid "Operation cancelled." msgstr "" #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "" #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "" #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "" #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "" #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "" #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "" #: ../src/gnomint-cli.c:59 ../src/main.c:129 #, c-format msgid "Failed to initialize: %s\n" msgstr "" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "Chiave privata criptata PKCS#8" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" "La password fornita non corrisponde a quella utilizzata per criptare questa " "parte" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" "La password fornita non corrisponde con la password utilizzata per criptare " "questa parte." #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "Impossibile trovare un formato supportato nel file fornito" #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "Impossibile aprire il file %s. Controllare i permessi." #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "" "Impossibile riconoscere il file %s come una chiave privata RSA o DSA." #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "Chiave privata per %s" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "Chiave privata %s" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "" #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" "OpenSSL ha fornito il seguente errore mentre cercava di decifrare la chiave " "privata:\n" "\n" "%s" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "" #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" "Si è verificato un problema durante l'importazione della chiave privata " "corrispondente al certificato CA root" #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "" #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "" #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "" #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "" #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "" #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" #: ../src/main.c:126 msgid "- A graphical Certification Authority manager" msgstr "" #: ../src/main.c:285 msgid "Create new CA database" msgstr "" #: ../src/main.c:323 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" #: ../src/main.c:336 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "" #: ../src/main.c:357 msgid "Open CA database" msgstr "" #: ../src/main.c:380 ../src/main.c:420 #, c-format msgid "Problem when opening '%s' CA database" msgstr "" #: ../src/main.c:445 msgid "Save CA database as..." msgstr "" #: ../src/main.c:497 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" #: ../src/main.c:498 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" #: ../src/new_cert.c:329 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:335 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:341 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:347 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:353 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:799 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" #: ../src/new_cert.c:815 msgid "Error while signing CSR." msgstr "" #: ../src/pkey_manage.c:80 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" #: ../src/pkey_manage.c:125 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" #: ../src/pkey_manage.c:171 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:187 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:191 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" #. The file cannot be opened #: ../src/pkey_manage.c:196 msgid "The file designated in database couldn't be opened." msgstr "Il file designato nel database non può essere aperto." #. The file doesn't exist #: ../src/pkey_manage.c:201 msgid "The file designated in database doesn't exist." msgstr "Il file designato nel database non esiste." #: ../src/pkey_manage.c:760 ../src/pkey_manage.c:811 msgid "The given password doesn't match the one used in the database" msgstr "La password fornita non corrisponde a quella utilizzata nel database" #: ../src/pkey_manage.c:798 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" "Questa azione richiede l'utilizzo di una o più chiavi private salvate nel " "database.\n" #: ../src/pkey_manage.c:799 msgid "Please insert the database password:" msgstr "Si prega di inserire la password del database:" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "Errore di inizializzazione della struttura di chiave privata." #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "Errore nella creazione della chiave privata: %d" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:553 ../src/tls.c:855 #, c-format msgid "Error exporting private key to PEM structure." msgstr "Errore nell'esportazione della chiave privata nella struttura PEM." #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "Errore durante l'inizializzazione della struttura del certificato" #: ../src/tls.c:441 ../src/tls.c:689 #, c-format msgid "Error when setting certificate version" msgstr "Errore durante l'impostazione della versione del certificato" #: ../src/tls.c:451 ../src/tls.c:702 #, c-format msgid "Error when setting certificate serial number" msgstr "Errore durante l'impostazione del numero di serie del certificato" #: ../src/tls.c:460 ../src/tls.c:711 #, c-format msgid "Error when setting activation time" msgstr "Errore durante l'impostazione del tempo di attivazione" #: ../src/tls.c:465 ../src/tls.c:719 #, c-format msgid "Error when setting expiration time" msgstr "Errore durante l'impostazione del tempo di scadenza" #: ../src/tls.c:511 ../src/tls.c:768 #, c-format msgid "Error when setting basicConstraint extension" msgstr "Errore durante l'impostazione dell'estensione basicConstraint" #: ../src/tls.c:516 ../src/tls.c:810 #, c-format msgid "Error when setting keyUsage extension" msgstr "Errore durante l'impostazione dell'estensione keyUsage" #: ../src/tls.c:527 ../src/tls.c:784 #, c-format msgid "Error when setting subject key identifier extension" msgstr "" #: ../src/tls.c:531 ../src/tls.c:758 #, c-format msgid "Error when setting authority key identifier extension" msgstr "" #: ../src/tls.c:541 #, c-format msgid "Error when signing self-signed certificate" msgstr "Errore durante la firma del certificato autofirmato" #: ../src/tls.c:571 #, c-format msgid "Error when initializing csr structure" msgstr "Errore nell'inizializzazione della struttura del csr" #: ../src/tls.c:575 #, c-format msgid "Error when setting csr version" msgstr "Errore nell'impostazione della versione del csr" #: ../src/tls.c:608 #, c-format msgid "Error when signing self-signed csr" msgstr "Errore durante la firma del csr autofirmato" #: ../src/tls.c:619 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "Errore nell'esportazione del CSR nella struttura PEM." #: ../src/tls.c:673 #, c-format msgid "Error when initializing crt structure" msgstr "Errore durante l'inizializzazione della struttura del crt" #: ../src/tls.c:681 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "" "Errore durante la copia dei dati dal CSR alla struttura del certificato" #: ../src/tls.c:840 #, c-format msgid "Error when signing certificate" msgstr "Errore durante la firma del certificato" #: ../src/tls.c:1058 msgid "Key encipher only" msgstr "" #: ../src/tls.c:1060 msgid "Key decipher only" msgstr "Solo decifratura della chiave" #: ../src/tls.c:1072 msgid "TLS WWW Client." msgstr "Client TLS WWW" gnomint-1.3.0/po/de.po0000664000175000017500000026303612672052326011476 00000000000000# German translation for gnomint # Copyright (c) 2008 Rosetta Contributors and Canonical Ltd 2008 # This file is distributed under the same license as the gnomint package. # FIRST AUTHOR , 2008. # msgid "" msgstr "" "Project-Id-Version: gnomint\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-06-03 23:09+0200\n" "PO-Revision-Date: 2010-04-02 04:45+0000\n" "Last-Translator: Mario Blättermann \n" "Language-Team: German \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-08-11 09:00+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "Automatischer Export von Zertifikaten in den GNOME-Schlüsselbund" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "Zertifikat-Anfragen sind sichtbar" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "Widerrufene Zertifikate sind sichtbar" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" "Die Größe (Breite,Länge) des gnoMint-Fensters beim Start. Muss midestens " "(320,200) sein." #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "Legt fest, ob die Zertifikatanfragen sichtbar sein sollen." #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" "Legt fest, ob die erzeugten oder importierten Zertifikate automatisch in die " "Zertifikatverwaltung des GNOME-Schlüsselbundes exportiert werden sollen." #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "Legt fest, ob die widerrufenen Zertifikate sichtbar sein sollen." #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "Fenstergröße" #: ../gui/gnomint.glade.h:1 msgid " " msgstr " " #: ../gui/gnomint.glade.h:2 msgid "CSR subject" msgstr "" #: ../gui/gnomint.glade.h:3 msgid "Certificate fields" msgstr "Zertifikatfelder" #: ../gui/gnomint.glade.h:4 msgid "Certificate hierarchy" msgstr "Zertifikathierarchie" #: ../gui/gnomint.glade.h:5 msgid "Certificate purposes" msgstr "Zertifikatzwecke" #: ../gui/gnomint.glade.h:6 msgid "Certificate subject" msgstr "" #: ../gui/gnomint.glade.h:7 msgid "Certificate uses" msgstr "" #: ../gui/gnomint.glade.h:8 msgid "Emmited by" msgstr "Ausgegeben von" #: ../gui/gnomint.glade.h:9 msgid "Fingerprints" msgstr "Fingerabdrücke" #: ../gui/gnomint.glade.h:10 msgid "Inherited fields from CA subject" msgstr "" #: ../gui/gnomint.glade.h:11 msgid "Purposes of new generated certificates" msgstr "Zwecke neu erstellter Zertifikate" #: ../gui/gnomint.glade.h:12 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in the internal database." msgstr "" #: ../gui/gnomint.glade.h:13 msgid "This certificate has been verified for the following uses:" msgstr "" "Dieses Zertifikat wurde für folgende Verwendungsmöglichkeiten " "verifiziert:" #: ../gui/gnomint.glade.h:14 msgid "Uses of new generated certificates" msgstr "Verwendungsmöglichkeiten der neu generierten Zertifikate" #: ../gui/gnomint.glade.h:15 msgid "Validity" msgstr "Gültigkeit" #: ../gui/gnomint.glade.h:16 msgid "New Certificate Revocation List" msgstr "Neue Liste widerrufener Zertifikate" #: ../gui/gnomint.glade.h:17 msgid "CA Properties\n" msgstr "" #: ../gui/gnomint.glade.h:19 msgid "CA Root certificate properties\n" msgstr "" #: ../gui/gnomint.glade.h:21 msgid "Certificate Request Properties\n" msgstr "" #: ../gui/gnomint.glade.h:23 msgid "" "Choose private key file\n" "\n" "For doing the selected operation, you must provide the file where resides " "the private key corresponding to the certificate:" msgstr "" "Datei für geheimen Schlüssel auswählen\n" "\n" "Um den gewünschten Vorgang auszuführen, müssen Sie die Datei auswählen, in " "welcher sich der dem Zertifikat zugeordnete geheime Schlüssel befindet." #: ../gui/gnomint.glade.h:26 msgid "New Certificate Properties\n" msgstr "Eigenschaften des neuen Zertifikats\n" #: ../gui/gnomint.glade.h:28 msgid "Password protection\n" msgstr "Passwortschutz\n" #: ../gui/gnomint.glade.h:30 msgid "" "Export both (private and public) parts to a password-protected PKCS#12 " "file. This kind of file can be imported by other common programs, such as " "web or mail clients." msgstr "" "Sowohl den geheimen als auch den öffentlichen Teil in eine " "passwortgeschützte PKS#12-Datei exportieren. Diese Art von Datei kann in " "andere gebräuchliche Programme importiert werden, wie zum Beispiel Web- oder " "E-Mail Programme." #: ../gui/gnomint.glade.h:31 msgid "Export only the certificate to a public file, in PEM format." msgstr "" "Nur das Zertifikat in eine öffentliche Datei im PEM-Format " "importieren." #: ../gui/gnomint.glade.h:32 msgid "" "Export the saved private key to a PEM file. This option should only be " "used for exporting certificates that will be used in unattended servers." msgstr "" "Den gespeicherten geheimen Schlüssel in eine PEM-Datei exportieren. Diese " "Möglichkeit sollte nur zum Exportieren von Zertifikaten genutzt werden, wenn " "diese für Server benutzt werden, bei welchen kein Benutzereingriff " "stattfindet." #: ../gui/gnomint.glade.h:33 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the certificate." msgstr "" #: ../gui/gnomint.glade.h:34 msgid "" "Import a directory containing the structure of\n" "a whole CA made with OpenSSL ." msgstr "" #: ../gui/gnomint.glade.h:36 msgid "" "Import a single file, encoded in DER or PEM format, containing " "certificates, private keys (encrypted or plain), signing requests (CSRs), " "revocation lists (CRLs) or PKCS#12 packages." msgstr "" #: ../gui/gnomint.glade.h:37 msgid "" "\n" "It is recommended that all the certificates generated by a CA share the same " "properties.\n" "If you want to generate certificates with different properties, you should " "create a hierarchy of CAs, each one with its own policy for certificate " "generation.\n" "\n" "Please, define the maximum set of properties for the certificates that this " "CA will be able to generate:\n" msgstr "" #: ../gui/gnomint.glade.h:43 msgid "#Description#" msgstr "#Beschreibung#" #: ../gui/gnomint.glade.h:44 msgid "" "PKCS#3 files containing Diffie·Hellman parameters are used by " "some cryptographic \n" "applications for a secure interchange of their keys over insecure " "channels." msgstr "" #: ../gui/gnomint.glade.h:46 msgid "" "The part that is being imported has the description:" msgstr "Beschreibung des zu importierenden Teils:" #: ../gui/gnomint.glade.h:47 msgid "" "The subject of the new certificate request can inherit information " "from one of the existing Certification Authorities. This is a must if the " "policy of the CA you are going to use is defined to force some fields of a " "certificate subject to be the same as the ones in the CA cert " "subject." msgstr "" #: ../gui/gnomint.glade.h:48 msgid "Activated on" msgstr "Aktiviert am" #: ../gui/gnomint.glade.h:49 msgid "Add CSR" msgstr "Zertifizierungsanfrage hinzufügen" #: ../gui/gnomint.glade.h:50 msgid "Add _Certificate Request" msgstr "_Zertifikatanfrage hinzufügen" #: ../gui/gnomint.glade.h:51 msgid "Add a new Certificate Signing Request" msgstr "Eine neue Zertifizierungsanfrage hinzufügen" #: ../gui/gnomint.glade.h:52 msgid "Add an autosigned CA" msgstr "" #: ../gui/gnomint.glade.h:53 msgid "Add autosigned CA certificate" msgstr "" #: ../gui/gnomint.glade.h:54 ../src/certificate_properties.c:1130 #: ../src/tls.c:1082 msgid "Any purpose" msgstr "" #: ../gui/gnomint.glade.h:55 msgid "" "Automatically export created certificates to \n" "Gnome-keyring certificate store" msgstr "" "Erzeugte Zertifikate automatisch in die Zertifikatverwaltung des GNOME-" "Schlüsselbundes importieren" #: ../gui/gnomint.glade.h:57 msgid "Both parts." msgstr "Beide Teile." #: ../gui/gnomint.glade.h:58 msgid "CA Policy" msgstr "" #: ../gui/gnomint.glade.h:59 msgid "" "CA Root Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:61 msgid "CA properties" msgstr "" #: ../gui/gnomint.glade.h:62 msgid "CACN" msgstr "" #: ../gui/gnomint.glade.h:63 msgid "CAO" msgstr "" #: ../gui/gnomint.glade.h:64 msgid "CAOU" msgstr "" #: ../gui/gnomint.glade.h:65 ../src/certificate_properties.c:358 #: ../src/tls.c:1056 msgid "CRL signing" msgstr "" #: ../gui/gnomint.glade.h:66 msgid "CSR properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:67 msgid "CertActivationDate" msgstr "" #: ../gui/gnomint.glade.h:68 msgid "CertExpirationDate" msgstr "" #: ../gui/gnomint.glade.h:69 msgid "CertSN" msgstr "" #: ../gui/gnomint.glade.h:70 msgid "" "Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:72 msgid "Certificate DN" msgstr "" #: ../gui/gnomint.glade.h:73 msgid "Certificate _Signing Requests" msgstr "" #: ../gui/gnomint.glade.h:74 msgid "Certificate properties" msgstr "Zertifikat-Eigenschaften" #: ../gui/gnomint.glade.h:75 msgid "Certificate properties - gnoMint" msgstr "Zertifikat-Eigenschaften - gnoMint" #: ../gui/gnomint.glade.h:76 ../src/tls.c:1039 msgid "Certification Authority" msgstr "Zertifizierungsstelle" #: ../gui/gnomint.glade.h:77 msgid "Change database pass_word" msgstr "Pass_wort der Datenbank ändern" #: ../gui/gnomint.glade.h:78 msgid "Choose CA for signing the CSR" msgstr "" #: ../gui/gnomint.glade.h:79 msgid "Choose private key file. gnoMint" msgstr "Datei des geheimen Schlüssels wählen. gnoMint" #: ../gui/gnomint.glade.h:80 msgid "City" msgstr "Stadt" #: ../gui/gnomint.glade.h:81 msgid "City: " msgstr "Stadt: " #: ../gui/gnomint.glade.h:82 ../src/certificate_properties.c:1126 #: ../src/tls.c:1074 msgid "Code signing" msgstr "" #: ../gui/gnomint.glade.h:83 msgid "Common Name (CN)" msgstr "Voller Name (CN)" #: ../gui/gnomint.glade.h:84 msgid "Country" msgstr "Land" #: ../gui/gnomint.glade.h:85 msgid "Country:" msgstr "Land:" #: ../gui/gnomint.glade.h:86 msgid "Create a new database" msgstr "Eine neue Datenbank erstellen" #: ../gui/gnomint.glade.h:87 msgid "Creating CA Root Certificate" msgstr "" #: ../gui/gnomint.glade.h:88 msgid "Creating new CA - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:89 msgid "DSA" msgstr "DSA" #: ../gui/gnomint.glade.h:90 ../src/certificate_properties.c:352 #: ../src/tls.c:1050 msgid "Data encipherment" msgstr "" #: ../gui/gnomint.glade.h:91 msgid "Database password protection - gnoMint" msgstr "Datenbank-Passwortschutz - gnoMint" #: ../gui/gnomint.glade.h:92 msgid "Delete the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:93 msgid "Details" msgstr "Einzelheiten" #: ../gui/gnomint.glade.h:94 ../src/certificate_properties.c:346 #: ../src/tls.c:1044 msgid "Digital signature" msgstr "Digitale Signatur" #: ../gui/gnomint.glade.h:95 msgid "Don't inherit any fields from existing Certification Authorities" msgstr "" #: ../gui/gnomint.glade.h:96 msgid "E_xport" msgstr "E_xportieren" #: ../gui/gnomint.glade.h:97 ../src/certificate_properties.c:1127 #: ../src/tls.c:1076 msgid "Email protection" msgstr "" #: ../gui/gnomint.glade.h:98 msgid "" "Enter new password again \n" "for confirmation:" msgstr "" "Geben Sie das neue Passwort \n" "zur Bestätigung erneut ein:" #: ../gui/gnomint.glade.h:100 msgid "Enter password - gnoMint" msgstr "Passwort eingeben - gnoMint" #: ../gui/gnomint.glade.h:101 msgid "Enter password again for confirmation:" msgstr "Geben Sie zur Bestätigung das Passwort erneut ein:" #: ../gui/gnomint.glade.h:102 msgid "Expires on" msgstr "Läuft ab am" #: ../gui/gnomint.glade.h:103 msgid "Export certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:104 msgid "Export options" msgstr "Export-Optionen" #: ../gui/gnomint.glade.h:105 msgid "Exports the CSR so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:106 msgid "" "Exports the certificate so it can be imported by any other application" msgstr "" "Exportiert das Zertifikat, so dass es von anderen Anwendungen importiert " "werden kann" #: ../gui/gnomint.glade.h:107 msgid "Extrac_t private key" msgstr "Geheimen Schlüssel en_tpacken" #: ../gui/gnomint.glade.h:108 msgid "Extract Private Key" msgstr "Geheimen Schlüssel entpacken" #: ../gui/gnomint.glade.h:109 msgid "Extract the private key of the selected item into a external file" msgstr "" "Geheimen Schlüssel des gewählten Objekts in eine externe Datei entpacken" #: ../gui/gnomint.glade.h:110 msgid "Extract the saved private key to an external file or device" msgstr "" "Gespeicherten geheimen Schlüssel in eine externe Datei oder Gerät entpacken" #: ../gui/gnomint.glade.h:111 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the CSR will be used" msgstr "" #: ../gui/gnomint.glade.h:115 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the certificate will be used" msgstr "" #: ../gui/gnomint.glade.h:119 msgid "General" msgstr "Allgemein" #: ../gui/gnomint.glade.h:120 msgid "General Preferences - gnoMint" msgstr "Allgemeine Einstellungen - gnoMint" #: ../gui/gnomint.glade.h:121 msgid "Generate D_H parameters..." msgstr "" #: ../gui/gnomint.glade.h:122 msgid "Generate _CRL" msgstr "" #: ../gui/gnomint.glade.h:123 msgid "Generate the current Certificate Revocation List" msgstr "" #: ../gui/gnomint.glade.h:124 msgid "Hours between CRL updates:" msgstr "" #: ../gui/gnomint.glade.h:125 msgid "Import a single file." msgstr "Eine einzelne Datei importieren." #: ../gui/gnomint.glade.h:126 msgid "Import a whole directory." msgstr "Einen ganzen Ordner importieren." #: ../gui/gnomint.glade.h:127 msgid "Import selection - gnoMint" msgstr "Importauswahl - gnoMint" #: ../gui/gnomint.glade.h:128 msgid "" "Inherit fields according to selected Certification Authority and its policy." msgstr "" #: ../gui/gnomint.glade.h:129 ../src/certificate_properties.c:354 #: ../src/tls.c:1052 msgid "Key agreement" msgstr "" #: ../gui/gnomint.glade.h:130 ../src/certificate_properties.c:350 #: ../src/tls.c:1048 msgid "Key encipherment" msgstr "" #: ../gui/gnomint.glade.h:131 msgid "MD5 fingerprint" msgstr "MD5-Fingerabdruck" #: ../gui/gnomint.glade.h:132 msgid "MD5FINGERPRINT" msgstr "MD5FINGERPRINT" #: ../gui/gnomint.glade.h:133 msgid "" "Maximum number of months before expiration of the new generated certificates:" msgstr "" "Maximale Anzahl von Monaten bis zum Ablauf der erzeugten Zertifikate:" #: ../gui/gnomint.glade.h:134 msgid "Months before certificate expiration:" msgstr "Monate vor Zertifikatablauf:" #: ../gui/gnomint.glade.h:135 msgid "Months before root certificate expiration:" msgstr "" #: ../gui/gnomint.glade.h:136 msgid "New CA - gnoMint" msgstr "Neue Zertifizierungsstelle - gnoMint" #: ../gui/gnomint.glade.h:137 msgid "New CRL - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:138 msgid "New Certificate - gnoMint" msgstr "Neues Zertifikat - gnoMint" #: ../gui/gnomint.glade.h:139 msgid "New Diffie-Hellman parameters - gnoMint" msgstr "Neue Diffie-Hellman-Parameter - gnoMint" #: ../gui/gnomint.glade.h:140 msgid "" "New certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:142 msgid "New certificate request - gnoMint" msgstr "Neue Zertifikatanfrage - gnoMint" #: ../gui/gnomint.glade.h:143 ../src/certificate_properties.c:348 #: ../src/tls.c:1046 msgid "Non repudiation" msgstr "" #: ../gui/gnomint.glade.h:144 ../src/certificate_properties.c:1129 #: ../src/tls.c:1080 msgid "OCSP signing" msgstr "OCSP-Signatur" #: ../gui/gnomint.glade.h:145 msgid "Only the private key (crypted)." msgstr "Nur den geheimen Schlüssel (verschlüsselt)" #: ../gui/gnomint.glade.h:146 msgid "Only the private key (uncrypted)." msgstr "Nur den geheimen Schlüssel (unverschlüsselt)" #: ../gui/gnomint.glade.h:147 msgid "Only the pu_blic part." msgstr "Nur den ö_ffentlichen Teil." #: ../gui/gnomint.glade.h:148 msgid "Open _recents" msgstr "_Zuletzt geöffnet" #: ../gui/gnomint.glade.h:149 msgid "Open an existing database" msgstr "Eine existierende Datenbank öffnen" #: ../gui/gnomint.glade.h:150 msgid "Organization" msgstr "Organisation" #: ../gui/gnomint.glade.h:151 msgid "Organization (O)" msgstr "Organisation (O)" #: ../gui/gnomint.glade.h:152 msgid "Organization Unit:" msgstr "Organisationseinheit:" #: ../gui/gnomint.glade.h:153 msgid "Organization:" msgstr "Organisation:" #: ../gui/gnomint.glade.h:154 msgid "Organizational Unit (OU)" msgstr "Organisationseinheit (OU)" #: ../gui/gnomint.glade.h:155 msgid "Organizational unit" msgstr "Organisationseinheit" #: ../gui/gnomint.glade.h:156 msgid "Password (confirm):" msgstr "Passwort (bestätigen):" #: ../gui/gnomint.glade.h:157 msgid "Password protect" msgstr "Passwortschutz" #: ../gui/gnomint.glade.h:158 msgid "Password:" msgstr "Passwort:" #: ../gui/gnomint.glade.h:159 msgid "Please, choose the file:" msgstr "Bitte Datei auswählen:" #: ../gui/gnomint.glade.h:160 msgid "Please, choose the more suitable option for what you want to import:" msgstr "Bitte wählen Sie eine passendere Option für den gewünschten Import:" #: ../gui/gnomint.glade.h:161 msgid "" "Please, choose which part of the saved certificate you want to export:" msgstr "" "Bitte wählen Sie den Teil des gespeicherten Zertifikats aus, den Sie " "importieren wollen:" #: ../gui/gnomint.glade.h:162 msgid "" "Please, enter current\n" "password:" msgstr "" "Bitte geben Sie das\n" "aktuelle Passwort ein:" #: ../gui/gnomint.glade.h:164 msgid "" "Please, enter new \n" "password:" msgstr "" "Bitte geben Sia das \n" "neue Passwort ein:" #: ../gui/gnomint.glade.h:166 msgid "Please, enter password" msgstr "Bitte Passwort eingeben" #: ../gui/gnomint.glade.h:167 msgid "Please, enter password:" msgstr "Bitte Passwort eingeben:" #: ../gui/gnomint.glade.h:168 msgid "Please, enter the prime size, in bits:" msgstr "" #: ../gui/gnomint.glade.h:169 msgid "" "Please, select the CA for which a Certificate \n" "Revocation List is going to be created:" msgstr "" #: ../gui/gnomint.glade.h:171 msgid "Private key bit length:" msgstr "Länge des geheimen Schlüssels in Bit" #: ../gui/gnomint.glade.h:172 msgid "Private key type:" msgstr "Typ des geheimen Schlüssels:" #: ../gui/gnomint.glade.h:173 msgid "" "Protect CA database private \n" "keys with password:" msgstr "" #: ../gui/gnomint.glade.h:175 msgid "" "Protect CA database private keys\n" "with password:" msgstr "" #: ../gui/gnomint.glade.h:177 msgid "RSA" msgstr "RSA" #: ../gui/gnomint.glade.h:178 msgid "Remember this password during this gnoMint session" msgstr "An dieses Passwort während der gnoMint-Sitzung erinnern" #: ../gui/gnomint.glade.h:179 msgid "Revo_ke" msgstr "Wider_rufen" #: ../gui/gnomint.glade.h:180 msgid "Revoke" msgstr "Widerrufen" #: ../gui/gnomint.glade.h:181 msgid "Revoke the selected certificate" msgstr "Das ausgewählte Zertifikat widerrufen" #: ../gui/gnomint.glade.h:182 msgid "Revokes the selected certificate" msgstr "Widerruft das ausgewählte Zertifikat" #: ../gui/gnomint.glade.h:183 msgid "Root certificate prop" msgstr "" #: ../gui/gnomint.glade.h:184 msgid "SHA1 fingerprint" msgstr "SHA1-Fingerabdruck" #: ../gui/gnomint.glade.h:185 msgid "SHA1FINGERPRINT" msgstr "SHA1FINGERPRINT" #: ../gui/gnomint.glade.h:186 msgid "Serial number" msgstr "Seriennummer" #: ../gui/gnomint.glade.h:187 msgid "Shows the CSR properties window" msgstr "" #: ../gui/gnomint.glade.h:188 msgid "Shows the certificate properties window" msgstr "" #: ../gui/gnomint.glade.h:189 msgid "Sign" msgstr "Signieren" #: ../gui/gnomint.glade.h:190 msgid "Sign the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:191 msgid "State or Province name" msgstr "Name des Bundeslandes/Kantons" #: ../gui/gnomint.glade.h:192 msgid "State or Province name: " msgstr "Name des Bundeslandes/Kantons: " #: ../gui/gnomint.glade.h:193 msgid "SubjectCN" msgstr "" #: ../gui/gnomint.glade.h:194 msgid "SubjectO" msgstr "" #: ../gui/gnomint.glade.h:195 msgid "SubjectOU" msgstr "" #: ../gui/gnomint.glade.h:196 msgid "TLS Web client" msgstr "TLS-Webclient" #: ../gui/gnomint.glade.h:197 msgid "TLS Web server" msgstr "TLS-Webserver" #: ../gui/gnomint.glade.h:198 msgid "" "The whole selected file, or some of its elements, seems to be cyphered using " "a password or passphrase.\n" "\n" "For importing the file into gnoMint database, you must provide an appropiate " "password." msgstr "" #: ../gui/gnomint.glade.h:201 msgid "" "This action requires using one or more private keys saved in the CA " "database.\n" "\n" "Please insert the database password." msgstr "" "Für diese Aktion werden ein oder mehrere private Schlüssel benötigt, die in " "der Zertifizierungsstellen-Datenbank gespeichert sind.\n" "\n" "Bitte geben Sie das Passwort für die Datenbank ein." #: ../gui/gnomint.glade.h:204 ../src/certificate_properties.c:1128 #: ../src/tls.c:1078 msgid "Time stamping" msgstr "Zeitstempel" #: ../gui/gnomint.glade.h:205 msgid "" "You are about to create and export a set of Diffie·Hellman parameters " "into a PKCS#3 structure file." msgstr "" "Sie sind dabei, eine Reihe von Diffie·Hellman-Parametern in eine PKCS#3-" "Strukturdatei zu importieren." #: ../gui/gnomint.glade.h:206 msgid "" "You are about to sign a Certificate Signing Request, and this way, creating " "a new certificate. Please check the certificate properties." msgstr "" "Sie sind dabei, eine Signaturanfrage für ein Zertifikat zu bestätigen. " "Dadurch wird ein neues Zertifikat erstellt. Bitte überprüfen Sie die " "Eigenschaften des Zertifikats." #: ../gui/gnomint.glade.h:207 msgid "" "You are about to sign a Certificate Signing Request. Please, choose the " "Certification Authority you are going to use for signing it." msgstr "" "Sie sind dabei, eine Signaturanfrage für ein Zertifikat zu bestätigen. Bitte " "wählen Sie die Zertifizierungsstelle, die Sie dafür verwenden wollen." #: ../gui/gnomint.glade.h:208 msgid "_Add self-signed CA" msgstr "" #: ../gui/gnomint.glade.h:209 msgid "_Certificates" msgstr "_Zertifikate" #: ../gui/gnomint.glade.h:210 msgid "_Edit" msgstr "_Bearbeiten" #: ../gui/gnomint.glade.h:211 msgid "_Help" msgstr "_Hilfe" #: ../gui/gnomint.glade.h:212 msgid "_Import" msgstr "_Importieren" #: ../gui/gnomint.glade.h:213 msgid "_New certificate database" msgstr "_Neue Zertifikat-Datenbank" #: ../gui/gnomint.glade.h:214 msgid "_No" msgstr "_Nein" #: ../gui/gnomint.glade.h:215 msgid "_Open certificate database" msgstr "Zertifikat-Datenbank ö_ffnen" #: ../gui/gnomint.glade.h:216 msgid "_Revoked Certificates" msgstr "Wider_rufene Zertifikate" #: ../gui/gnomint.glade.h:217 msgid "_Save certificate database as..." msgstr "Zertifikat-Datenbank speichern _unter" #: ../gui/gnomint.glade.h:218 msgid "_Save filename in the database for automatic loading" msgstr "Dateiname in der Datenbank für automatisches Laden _speichern" #: ../gui/gnomint.glade.h:219 msgid "_Sign" msgstr "_Signieren" #: ../gui/gnomint.glade.h:220 msgid "_View" msgstr "_Ansicht" #: ../gui/gnomint.glade.h:221 msgid "_Yes" msgstr "_Ja" #: ../gui/gnomint.glade.h:222 msgid "gnoMint" msgstr "gnoMint" #: ../gui/gnomint.glade.h:223 msgid "gtk-cancel" msgstr "gtk-cancel" #: ../gui/gnomint.glade.h:224 msgid "gtk-ok" msgstr "gtk-ok" #: ../gui/gnomint.glade.h:225 msgid "label" msgstr "Bezeichnung" #: ../gui/gnomint.glade.h:226 msgid "may differ" msgstr "kann unterschiedlich sein" #: ../gui/gnomint.glade.h:227 msgid "must be the same" msgstr "muss gleich sein" #: ../gui/gnomint.glade.h:228 msgid "page 3" msgstr "Seite 3" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "" "X.509-Zertifikate und Zertifizierungsstellen verwalten, einfach und grafisch" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "gnoMint X.509 Zertifizierungsstellen-Verwaltung" #: ../src/ca.c:147 msgid "Certificates" msgstr "Zertifikate" #: ../src/ca.c:263 msgid "Certificate Signing Requests" msgstr "Signaturanfragen für Zertifikate" #: ../src/ca.c:304 ../src/ca-cli-callbacks.c:168 ../src/ca-cli-callbacks.c:178 #: ../src/ca-cli-callbacks.c:189 ../src/ca-cli-callbacks.c:547 #: ../src/ca-cli-callbacks.c:551 ../src/ca-cli-callbacks.c:1162 #: ../src/ca-cli-callbacks.c:1166 ../src/certificate_properties.c:178 #: ../src/certificate_properties.c:183 msgid "%m/%d/%Y %R GMT" msgstr "%d.%m.%Y %R GMT" #: ../src/ca.c:448 ../src/certificate_properties.c:531 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "" #: ../src/ca.c:483 msgid "Serial" msgstr "Seriell" #: ../src/ca.c:490 msgid "Activation" msgstr "Aktivierung" #: ../src/ca.c:497 msgid "Expiration" msgstr "Ablaufdatum" #: ../src/ca.c:504 msgid "Revocation" msgstr "Widerruf" #: ../src/ca.c:791 msgid "Export certificate" msgstr "Zertifikat exportieren" #: ../src/ca.c:798 msgid "Export certificate signing request" msgstr "Signaturanfrage für Zertifikat exportieren" #: ../src/ca.c:813 ../src/ca.c:849 ../src/ca.c:859 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "Beim Export des Zertifikats ist ein Fehler aufgetreten." #: ../src/ca.c:815 ../src/ca.c:851 ../src/ca.c:861 msgid "There was an error while exporting CSR." msgstr "" #: ../src/ca.c:874 ../src/ca.c:1040 msgid "Certificate exported successfully" msgstr "Zertifikat wurde erfolgreich exportiert" #: ../src/ca.c:881 msgid "Certificate signing request exported successfully" msgstr "Signaturanfrage für Zertifikat wurde erfolgreich exportiert" #: ../src/ca.c:900 msgid "Export crypted private key" msgstr "" #: ../src/ca.c:929 ../src/ca.c:981 msgid "Private key exported successfully" msgstr "Geheimer Schlüssel wurde erfolgreich exportiert" #: ../src/ca.c:951 msgid "Export uncrypted private key" msgstr "" #: ../src/ca.c:1002 msgid "Export whole certificate in PKCS#12 package" msgstr "Gesamtes Zertifikat in einem PKCS#12-Paket exportieren" #: ../src/ca.c:1073 msgid "Export CSR - gnoMint" msgstr "Signaturanfrage exportieren - gnoMint" #: ../src/ca.c:1078 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" "Bitte wählen Sie den Teil der gespeicherten Siganturanfrage aus, den Sie " "exportieren wollen:" #: ../src/ca.c:1083 msgid "" "Export the Certificate Signing Request to a public file, in PEM " "format." msgstr "" "Signaturanfrage für Zertifikat in eine öffentliche Datei im PEM-Format " "exportieren." #: ../src/ca.c:1088 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" #: ../src/ca.c:1146 msgid "Unexpected error" msgstr "Unerwarteter Fehler" #: ../src/ca.c:1196 msgid "Are you sure you want to revoke this certificate?" msgstr "Sind Sie sicher, dass Sie dieses Zertifikat widerrufen wollen?" #: ../src/ca.c:1235 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "" "Sind Sie sicher, dass Sie diese Signaturanfrage für ein Zertifikat " "widerrufen wollen?" #: ../src/ca.c:1512 msgid "Change CA password - gnoMint" msgstr "Zertifizierungsstellen-Passwort ändern - gnoMint" #: ../src/ca.c:1530 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" "Das von Ihnen eingegebene Passwort stimmt nicht mit dem derzeit für die " "Datenbank geltenden Passwort überein." #: ../src/ca.c:1545 msgid "Error while changing database password. The operation was cancelled." msgstr "" "Fehler beim Ändern des Passworts der Datenbank. Der Vorgang wurde " "abgebrochen." #: ../src/ca.c:1554 msgid "Password changed successfully" msgstr "Das Passwort wurde erfolgreich geändert" #: ../src/ca.c:1564 ../src/ca-cli-callbacks.c:1002 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "" "Fehler beim Ermitteln des Passworts der Datenbank. Der Vorgang wurde " "abgebrochen." #: ../src/ca.c:1574 msgid "Password established successfully" msgstr "Passwort wurde erfolgreich ermittelt" #: ../src/ca.c:1584 msgid "Error while removing database password. The operation was cancelled." msgstr "" "Fehler beim Löschen des Passworts der Datenbank. Der Vorgang wurde " "abgebrochen." #: ../src/ca.c:1593 msgid "Password removed successfully" msgstr "Passwort wurde erfolgreich gelöscht" #: ../src/ca.c:1731 msgid "Save Diffie-Hellman parameters" msgstr "Diffie-Hellman-Parameter speichern" #: ../src/ca.c:1757 msgid "Diffie-Hellman parameters saved successfully" msgstr "Diffie-Hellman-Parameter wurden erfolgreich gespeichert" #. Import single file #: ../src/ca.c:1826 msgid "Select PEM file to import" msgstr "PEM-Datei zum Importieren auswählen" #: ../src/ca.c:1847 #, c-format msgid "Problem when importing '%s' file" msgstr "Problem beim Importieren der Datei »%s«" #: ../src/ca.c:1860 msgid "Select directory to import" msgstr "Ordner zum Importieren auswählen" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "" #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "" "Aktuelle Datei schließen und eine neue Datenbank mit dem angegebenen " "Dateinamen anlegen" #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "" #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "" "Aktuelle Datei schließen und eine Datei mit dem angegebenen Namen öffnen" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "" #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "Die aktuelle Datei unter einem anderen Namen speichern" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "" "Aktuellen Status ermitteln (geöffnete Datei, Anzahl der Zertifikate usw.)" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "" "Liste der Zertifikate in der Datenbank. Die Option --see-revoked listet auch " "die widerrufenen Zertifikate auf" #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "" #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" "Den geheimen Schlüssel des Zertifikats mit der angegebenen internen Kennung " "entpacken und in die angegebene Datei speichern" #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "" #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "" #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "Das Zertifikat mit der angegebenen internen Kennung widerrufen" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "" #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "" #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "" #: ../src/ca-cli.c:55 msgid "" "Generate a new CRL for the given CA, saving it into the file " msgstr "" #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "" #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "Passwort für die aktuelle Datenbank ändern" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "" #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "" #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "" #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "" #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "Eigenschaften des angegebenen Zertifikats anzeigen" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "" #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "Eigenschaften der angegebenen Signaturanfrage anzeigen" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "" #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "" #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "Programmeinstellungen anzeigen" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "" #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "Die gewählte Programmeinstellung festlegen" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "Info-Meldung anzeigen" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "Versionsinformation anzeigen" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "(Diese) Hilfemeldung anzeigen" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "Datenbank schließen und Programm beenden" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "Datenbank »%s« wird geöffnet …" #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr " OK.\n" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr " Fehler.\n" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" "\n" "\n" "%s-Version %s\n" "%s\n" "\n" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "Nicht übereinstimmende Anführungszeichen\n" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" "Ungültiger Befehl. Geben Sie »help« ein, um eine Liste der möglichen Befehle " "zu erhalten.\n" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "Falsche Anzahl der Parameter.\n" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "Syntax: %s\n" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "Die Datei existiert bereits und wird überschrieben werden." #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:638 msgid "Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "" "Problem beim Öffnen der neuen Zertifizierungsstellen-Datenbank »%s«\n" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "Datei »%s« wurde geöffnet\n" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "Problem beim Öffnen der Zertifizierungsstellen-Datenbank »%s«\n" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "Gegenwärtig geöffnete Datei: %s\n" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "Anzahl der Zertifikate in Datei: %d\n" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "Anzahl der Siganturanfragen in Datei: %d\n" #: ../src/ca-cli-callbacks.c:140 #, c-format msgid "CertList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:143 msgid "CertList IsCA|Y\t" msgstr "" #: ../src/ca-cli-callbacks.c:145 msgid "CertList IsCA|N\t" msgstr "" #: ../src/ca-cli-callbacks.c:150 #, c-format msgid "CertList Subject|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:153 msgid "CertList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:155 msgid "CertList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:158 msgid "CertList PKeyInDB|Y\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:160 msgid "CertList PKeyInDB|N\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:164 msgid "CertList Activation|\t" msgstr "" #: ../src/ca-cli-callbacks.c:169 #, c-format msgid "CertList Activation|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:174 msgid "CertList Expiration|\t" msgstr "" #: ../src/ca-cli-callbacks.c:179 #, c-format msgid "CertList Expiration|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:185 msgid "CertList Revocation|\n" msgstr "" #: ../src/ca-cli-callbacks.c:190 #, c-format msgid "CertList Revocation|%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:207 #, c-format msgid "Certificates in Database:\n" msgstr "Zertifikate in Datenbank:\n" #: ../src/ca-cli-callbacks.c:208 #, c-format msgid "" "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "" #: ../src/ca-cli-callbacks.c:211 #, c-format msgid "\t\tRevocation\n" msgstr "" #: ../src/ca-cli-callbacks.c:221 #, c-format msgid "CsrList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "CsrList ParentID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 msgid "CsrList ParentID|\t" msgstr "" #: ../src/ca-cli-callbacks.c:228 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "" #: ../src/ca-cli-callbacks.c:231 msgid "CsrList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:233 msgid "CsrList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:236 msgid "CsrList PKeyInDB|Y\n" msgstr "" #: ../src/ca-cli-callbacks.c:238 msgid "CsrList PKeyInDB|N\n" msgstr "" #: ../src/ca-cli-callbacks.c:246 #, c-format msgid "Certificate Requests in Database:\n" msgstr "Zertifikatanfragen in Datenbank:\n" #: ../src/ca-cli-callbacks.c:247 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "" #: ../src/ca-cli-callbacks.c:275 ../src/ca-cli-callbacks.c:945 #: ../src/ca-cli-callbacks.c:1310 ../src/ca-cli-callbacks.c:1339 msgid "The given CA id. is not valid" msgstr "Die angegebene Kennung der Zertifizierungsstelle ist ungültig" #: ../src/ca-cli-callbacks.c:328 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:330 ../src/ca-cli-callbacks.c:453 msgid "Enter country (C)" msgstr "Land eingeben (C)" #: ../src/ca-cli-callbacks.c:336 ../src/ca-cli-callbacks.c:459 msgid "Enter state or province (ST)" msgstr "Bundesland oder Kanton eingeben (ST)" #: ../src/ca-cli-callbacks.c:342 ../src/ca-cli-callbacks.c:465 msgid "Enter locality or city (L)" msgstr "Ort oder Stadt eingeben (L)" #: ../src/ca-cli-callbacks.c:348 ../src/ca-cli-callbacks.c:471 msgid "Enter organization (O)" msgstr "Organisation eingeben (O)" #: ../src/ca-cli-callbacks.c:354 ../src/ca-cli-callbacks.c:477 msgid "Enter organizational unit (OU)" msgstr "Organisationseinheit eingeben (OU)" #: ../src/ca-cli-callbacks.c:360 ../src/ca-cli-callbacks.c:483 msgid "Enter common name (CN)" msgstr "" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:493 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "Typ des zu erzeugenden Schlüssels eingeben (RSA/DSA)" #: ../src/ca-cli-callbacks.c:382 ../src/ca-cli-callbacks.c:505 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "" "Bitlänge des Schlüssels eingeben (muss ein ganzzahliges Vielfaches von 1024 " "sein)" #: ../src/ca-cli-callbacks.c:386 #, c-format msgid "These are the provided CSR properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:388 ../src/ca-cli-callbacks.c:526 #: ../src/ca-cli-callbacks.c:1152 ../src/ca-cli-callbacks.c:1204 #, c-format msgid "Subject:\n" msgstr "" #: ../src/ca-cli-callbacks.c:389 ../src/ca-cli-callbacks.c:527 #, c-format msgid "\tDistinguished Name: " msgstr "" #: ../src/ca-cli-callbacks.c:403 ../src/ca-cli-callbacks.c:541 #, c-format msgid "Key pair\n" msgstr "Schlüsselpaar\n" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:542 #, c-format msgid "\tType: %s\n" msgstr "\tTyp: %s\n" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:543 #, c-format msgid "\tKey bitlength: %d\n" msgstr "\tBitlänge des Schlüssels: %d\n" #: ../src/ca-cli-callbacks.c:407 ../src/ca-cli-callbacks.c:554 msgid "Do you want to change anything? Yes/[No] " msgstr "Wollen Sie noch etwas ändern? Ja/[Nein] " #: ../src/ca-cli-callbacks.c:411 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "" "Sie sind dabei, eine Signaturanfrage für ein Zertifikat mit den folgenden " "Parametern zu erstellen." #: ../src/ca-cli-callbacks.c:412 ../src/ca-cli-callbacks.c:559 msgid "Are you sure? [Yes]/No " msgstr "Sind Sie sicher? [Ja]/Nein " #: ../src/ca-cli-callbacks.c:417 ../src/ca-cli-callbacks.c:564 #: ../src/ca-cli-callbacks.c:648 ../src/ca-cli-callbacks.c:779 #: ../src/ca-cli-callbacks.c:902 ../src/ca-cli-callbacks.c:931 #: ../src/ca-cli-callbacks.c:997 ../src/ca-cli-callbacks.c:1024 #: ../src/ca-cli-callbacks.c:1052 ../src/ca-cli-callbacks.c:1067 #: ../src/ca-cli-callbacks.c:1369 ../src/ca-cli-callbacks.c:1412 #, c-format msgid "Operation cancelled.\n" msgstr "Vorgang wurde abgebrochen.\n" #: ../src/ca-cli-callbacks.c:451 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "" #: ../src/ca-cli-callbacks.c:510 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" "Geben Sie die Anzahl der Monate bis zum Ablauf der neuen " "Zertifizierungsstelle an" #: ../src/ca-cli-callbacks.c:524 #, c-format msgid "These are the provided new CA properties:\n" msgstr "Dies sind die Eigenschaften der neuen Zertifizierungsstelle:\n" #: ../src/ca-cli-callbacks.c:544 #, c-format msgid "Validity\n" msgstr "Gültigkeit\n" #: ../src/ca-cli-callbacks.c:545 ../src/ca-cli-callbacks.c:1160 #, c-format msgid "Validity:\n" msgstr "Gültigkeit:\n" #: ../src/ca-cli-callbacks.c:548 ../src/ca-cli-callbacks.c:1163 #, c-format msgid "\tActivated on: %s\n" msgstr "\tAktiviert am: %s\n" #: ../src/ca-cli-callbacks.c:552 ../src/ca-cli-callbacks.c:1167 #, c-format msgid "\tExpires on: %s\n" msgstr "\tLäuft ab am: %s\n" #: ../src/ca-cli-callbacks.c:558 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "" "Sie sind dabei, eine neue Zertfizierungsstelle mit den folgenden " "Eigenschaften zu erstellen:" #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:632 #: ../src/ca-cli-callbacks.c:1137 msgid "The given certificate id. is not valid" msgstr "Die angegebene Zertifikatkennung ist ungültig" #: ../src/ca-cli-callbacks.c:591 ../src/ca-cli-callbacks.c:615 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "Geheimer Schlüssel wurde erfolgreich in Datei »%s« entpackt\n" #: ../src/ca-cli-callbacks.c:608 ../src/ca-cli-callbacks.c:760 #: ../src/ca-cli-callbacks.c:915 ../src/ca-cli-callbacks.c:1193 msgid "The given CSR id. is not valid" msgstr "Die angegebene Kennung der Siganturanfrage ist ungültig" #: ../src/ca-cli-callbacks.c:638 msgid "This certificate will be revoked." msgstr "Dieses Zertifikat wird widerrufen werden." #: ../src/ca-cli-callbacks.c:644 #, c-format msgid "Certificate revoked.\n" msgstr "Zertifikat wurde widerrufen.\n" #: ../src/ca-cli-callbacks.c:658 ../src/ca-cli-callbacks.c:1174 #, c-format msgid "Certificate uses:\n" msgstr "Zertifikat benutzt:\n" #: ../src/ca-cli-callbacks.c:661 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:663 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:667 #, c-format msgid "* CRL signing use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:669 #, c-format msgid "* CRL signing use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:673 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:675 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:679 ../src/ca-cli-callbacks.c:681 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:685 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:687 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:691 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:693 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:697 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:699 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:702 #, c-format msgid "Certificate purposes:\n" msgstr "Zertifikatzwecke:\n" #: ../src/ca-cli-callbacks.c:705 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:707 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:711 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:713 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:717 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:719 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:723 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:725 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:729 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:731 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:735 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:737 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:741 #, c-format msgid "* Any purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:743 #, c-format msgid "* Any purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:767 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:769 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "" #: ../src/ca-cli-callbacks.c:772 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" "Geben Sie die Anzahl der Monate bis zum Ablauf des neuen Zertifikats ein (0 " "für abbrechen)" #: ../src/ca-cli-callbacks.c:782 #, c-format msgid "" "The certificate will be generated with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:800 ../src/ca-cli-callbacks.c:888 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:803 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "" "Wollen Sie irgeneine Eigenschaft des neuen Zertifikats ändern? Ja/[Nein] " #: ../src/ca-cli-callbacks.c:806 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:808 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:812 msgid "* Enable CRL Signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:814 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:818 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:820 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:824 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:826 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:830 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:832 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:836 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:838 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:842 msgid "Enable Key Agreement use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:844 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:848 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:850 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:854 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:856 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:860 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:862 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:866 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:868 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:872 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:874 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:878 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:883 msgid "Enable any purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "Wollen Sie das Signieren fortsetzen? [Ja]/Nein " #: ../src/ca-cli-callbacks.c:899 #, c-format msgid "Certificate signed.\n" msgstr "Zertifikat wurde signiert.\n" #: ../src/ca-cli-callbacks.c:921 msgid "This Certificate Signing Request will be deleted." msgstr "Diese Signaturanfrage für ein Zertifikat wird gelöscht werden." #: ../src/ca-cli-callbacks.c:921 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "" "Dieser Vorgang kann nicht rückgängig gemacht werden. Sind Sie sicher? " "Ja/[Nein] " #: ../src/ca-cli-callbacks.c:927 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "Signaturanfrage wurde gelöscht.\n" #: ../src/ca-cli-callbacks.c:952 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:969 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "" #: ../src/ca-cli-callbacks.c:978 #, c-format msgid "" "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "" "Diffie-Hellman-Parameter wurden erstellt und erfolgreich in Datei »%s« " "gespeichert.\n" #: ../src/ca-cli-callbacks.c:990 msgid "Currently, the database is not password-protected." msgstr "Gegenwärtig ist die Datenbank nicht durch ein Passwort geschützt." #: ../src/ca-cli-callbacks.c:990 msgid "Do you want to password protect it? [Yes]/No " msgstr "Wollen Sie sie durch ein Passwort schützen? [Ja]/Nein " #: ../src/ca-cli-callbacks.c:991 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" "OK. Sie müssen zum Schutz der geheimen Schlüssel in der Datenbank\n" "ein Passwort eingeben, so dass niemand anderes als zugelassene Personen\n" "diese benutzen können. Dieses Passwort wird jedesmal abgefragt,\n" "wenn gnoMint einen geheimen Schlüssel in der Datenbank benutzen will." #: ../src/ca-cli-callbacks.c:994 msgid "Insert password:" msgstr "Passwort eingeben:" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password (confirm):" msgstr "Passwort eingeben (Bestätigung):" #: ../src/ca-cli-callbacks.c:995 ../src/ca-cli-callbacks.c:1065 msgid "The introduced passwords are distinct." msgstr "Die eingegebenen Passwörter sind unterschiedlich." #: ../src/ca-cli-callbacks.c:1006 #, c-format msgid "Password established successfully.\n" msgstr "Passwort wurde erfolgreich festgelegt.\n" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Nothing done.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Currently, the database IS password-protected." msgstr "Gegenwärtig IST die Datenbank durchein Passwort geschützt." #: ../src/ca-cli-callbacks.c:1017 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "Wollen Sie diesen Passwortschutz entfernen? Ja/[Nein] " #: ../src/ca-cli-callbacks.c:1021 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" "Zum Entfernen des Passwortschutzes muss das aktuelle Passwort\n" "der Datenbank eingegeben werden.\n" #: ../src/ca-cli-callbacks.c:1022 ../src/ca-cli-callbacks.c:1050 msgid "Please, insert the current database password (Empty to cancel): " msgstr "" "Bitte geben Sie das aktuelle Passwort der Datenbank ein (leer lassen, um " "abzubrechen): " #: ../src/ca-cli-callbacks.c:1029 ../src/ca-cli-callbacks.c:1057 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" "Das aktuell eingebene Passwort stimmt nicht mit dem\n" "aktuellen Passwort der Datenbank überein." #: ../src/ca-cli-callbacks.c:1034 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" "Fehler beim Entfernen des Datenbank-Passworts. \n" "Vorgang wurde abgebrochen." #: ../src/ca-cli-callbacks.c:1039 #, c-format msgid "Password removed successfully.\n" msgstr "Passwort wurde erfolgreich entfernt.\n" #: ../src/ca-cli-callbacks.c:1049 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "" "Sie müssen das aktuelle Datenbank-Passwort eingeben, bevor das Passwort " "geändert werden kann.\n" #: ../src/ca-cli-callbacks.c:1061 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password:" msgstr "Neues Passwort eingeben:" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password (confirm):" msgstr "Neues Passwort eingeben (Bestätigung):" #: ../src/ca-cli-callbacks.c:1073 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" "Fehler beim Ändern des Datenbank-Passworts. \n" "Vorgang wurde abgebrochen." #: ../src/ca-cli-callbacks.c:1079 #, c-format msgid "Password changed successfully.\n" msgstr "Passwort wurde erfolgreich geändert.\n" #: ../src/ca-cli-callbacks.c:1097 msgid "Problem when importing the given file." msgstr "Problem beim Importieren der angegebenen Datei." #: ../src/ca-cli-callbacks.c:1100 #, c-format msgid "File imported successfully.\n" msgstr "Datei wurde erfolgreich importiert.\n" #: ../src/ca-cli-callbacks.c:1116 #, c-format msgid "Directory imported successfully.\n" msgstr "Ordner wurde erfolgreich importiert.\n" #: ../src/ca-cli-callbacks.c:1145 #, c-format msgid "Certificate:\n" msgstr "Zertifikat:\n" #: ../src/ca-cli-callbacks.c:1149 #, c-format msgid "\tSerial number: %s\n" msgstr "\tSeriennummer: %s\n" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1157 #: ../src/ca-cli-callbacks.c:1205 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1154 #: ../src/ca-cli-callbacks.c:1157 ../src/ca-cli-callbacks.c:1158 msgid "None." msgstr "Nichts." #: ../src/ca-cli-callbacks.c:1154 ../src/ca-cli-callbacks.c:1158 #: ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tUnique ID: %s\n" msgstr "\tEindeutige Kennung: %s\n" #: ../src/ca-cli-callbacks.c:1156 #, c-format msgid "Issuer:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1169 #, c-format msgid "Fingerprints:\n" msgstr "Fingerabdrücke:\n" #: ../src/ca-cli-callbacks.c:1170 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "\tSHA1-Fingerabdruck: %s\n" #: ../src/ca-cli-callbacks.c:1171 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "\tMD5-Fingerabdruck: %s\n" #: ../src/ca-cli-callbacks.c:1202 #, c-format msgid "Certificate Signing Request:\n" msgstr "Signaturanfrage für Zertifikat:\n" #: ../src/ca-cli-callbacks.c:1275 msgid "Generated certs inherit Country from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1276 msgid "Generated certs inherit State from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1277 msgid "Generated certs inherit Locality from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1278 msgid "Generated certs inherit Organization from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1279 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1280 msgid "Country in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1281 msgid "State in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1282 msgid "Locality in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1283 msgid "Organization in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1284 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "" #: ../src/ca-cli-callbacks.c:1285 msgid "Maximum number of hours between CRL updates " msgstr "" #: ../src/ca-cli-callbacks.c:1286 msgid "Maximum number of months before expiration of new certs " msgstr "" #: ../src/ca-cli-callbacks.c:1287 msgid "CA use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1288 msgid "CRL Sign use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1289 msgid "Non reputation use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1290 msgid "Digital signature use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1291 msgid "Key encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1292 msgid "Key agreement use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1293 msgid "Data encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1294 msgid "TLS web server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1295 msgid "TLS web client purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1296 msgid "Time stamping purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1297 msgid "Code signing server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1298 msgid "Email protection purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1299 msgid "OCSP signing purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1300 msgid "Any purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1314 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1316 #, c-format msgid "" "\n" "Policies:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1318 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1344 msgid "The given policy id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1356 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1360 ../src/ca-cli-callbacks.c:1404 msgid "Are you sure? Yes/[No] : " msgstr "Sind Sie sicher? Ja/[Nein] : " #: ../src/ca-cli-callbacks.c:1365 #, c-format msgid "Policy set correctly to '%d'.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1379 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1381 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "Id.\tName\t\t\tWert\n" #: ../src/ca-cli-callbacks.c:1382 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "0\tUnterstützung für Gnome-Schlüsselbund\t%d\n" #: ../src/ca-cli-callbacks.c:1394 msgid "The given preference id is not valid" msgstr "Die angegebene Einstellungskennung ist ungültig" #: ../src/ca-cli-callbacks.c:1400 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1422 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" "%s Version %s\n" "%s\n" #: ../src/ca-cli-callbacks.c:1423 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" "\n" "Autoren:\n" "%s\n" "\n" #: ../src/ca-cli-callbacks.c:1424 ../src/ca-cli-callbacks.c:1425 #: ../src/main.c:502 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " David Marín https://launchpad.net/~davefx\n" " Gregor Goldbach https://launchpad.net/~glauschwuffel\n" " Mario Blättermann https://launchpad.net/~mariobl-freenet\n" " Michael Honsel https://launchpad.net/~lesnoh" #: ../src/ca-cli-callbacks.c:1425 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" "Übersetzer:\n" "%s\n" #: ../src/ca-cli-callbacks.c:1432 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1450 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1465 #, c-format msgid "%s version %s\n" msgstr "%s-Version %s\n" #: ../src/ca-cli-callbacks.c:1474 #, c-format msgid "Available commands:\n" msgstr "Verfügbare Befehle:\n" #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "===================\n" msgstr "===================\n" #: ../src/ca-cli-callbacks.c:1485 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "Neues RSA-Schlüsselpaar wird erzeugt" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "Schlüsselerzeugung ist fehlgeschlagen" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "Neues DSA-Schlüsselpaar wird erzeugt" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "Erzeugung des Zertifikats ist fehlgeschlagen" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "Zertifizierungsstellen-Datenbank wird erzeugt" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "Erzeugung der Zertifizierungsstellen-Datenbank ist fehlgeschlagen" #: ../src/ca_creation.c:144 msgid "CA generated successfully" msgstr "Zertifizierungsstellen-Datenbank wurde erfolgreich erzeugt" #: ../src/ca_file.c:196 #, c-format msgid "Error opening filename '%s'" msgstr "Fehler beim Öffnen der Datei »%s«" #: ../src/ca_file.c:299 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" "Die ausgewählte Datenbank wurde mit einer neueren Version von gnoMint " "erzeugt, als die gegenwärtig installierte Version." #: ../src/ca_file.c:1311 msgid "Cannot find parent CA in database" msgstr "" #: ../src/ca_file.c:1499 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "" "Dieses Zertikat existiert bereits in der Datenbank. Es kann nicht nochmals " "eingefügt werden." #: ../src/ca_file.c:1930 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" #: ../src/ca_file.c:1933 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" #: ../src/certificate_properties.c:356 ../src/tls.c:1054 msgid "Certificate signing" msgstr "" #: ../src/certificate_properties.c:360 msgid "Key encipherment only" msgstr "" #: ../src/certificate_properties.c:362 msgid "Key decipherment only" msgstr "" #: ../src/certificate_properties.c:376 msgid "Version" msgstr "Version" #: ../src/certificate_properties.c:411 msgid "Serial Number" msgstr "Seriennummer" #: ../src/certificate_properties.c:427 ../src/certificate_properties.c:1060 msgid "Signature" msgstr "Signatur" #: ../src/certificate_properties.c:430 ../src/certificate_properties.c:558 #: ../src/certificate_properties.c:561 ../src/certificate_properties.c:1027 msgid "Algorithm" msgstr "Algorithmus" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:594 ../src/certificate_properties.c:622 #: ../src/certificate_properties.c:1030 msgid "Parameters" msgstr "Parameter" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:622 ../src/certificate_properties.c:624 #: ../src/certificate_properties.c:635 ../src/certificate_properties.c:644 #: ../src/certificate_properties.c:1031 msgid "(unknown)" msgstr "(unbekannt)" #: ../src/certificate_properties.c:465 msgid "Issuer" msgstr "" #: ../src/certificate_properties.c:493 msgid "Validity" msgstr "Gültigkeit" #: ../src/certificate_properties.c:496 msgid "Not Before" msgstr "Nicht vor" #: ../src/certificate_properties.c:499 msgid "Not After" msgstr "Nicht nach" #: ../src/certificate_properties.c:555 msgid "Subject Public Key Info" msgstr "" #: ../src/certificate_properties.c:568 msgid "RSA PublicKey" msgstr "Öffentlicher RSA-Schlüssel" #: ../src/certificate_properties.c:578 msgid "Modulus" msgstr "Modulus" #: ../src/certificate_properties.c:584 msgid "Public Exponent" msgstr "" #: ../src/certificate_properties.c:617 msgid "DSA PublicKey" msgstr "Öffentlicher DSA-Schlüssel" #: ../src/certificate_properties.c:624 msgid "Subject Public Key" msgstr "" #: ../src/certificate_properties.c:635 msgid "Issuer Unique ID" msgstr "Eindeutige Ausstellerkennung" #: ../src/certificate_properties.c:644 msgid "Subject Unique ID" msgstr "" #: ../src/certificate_properties.c:666 ../src/certificate_properties.c:689 #: ../src/certificate_properties.c:758 ../src/certificate_properties.c:862 #: ../src/certificate_properties.c:890 ../src/certificate_properties.c:930 #: ../src/certificate_properties.c:987 ../src/certificate_properties.c:1112 msgid "Value" msgstr "Wert" #: ../src/certificate_properties.c:728 ../src/certificate_properties.c:832 msgid "DNS Name" msgstr "DNS-Name" #: ../src/certificate_properties.c:733 ../src/certificate_properties.c:837 msgid "RFC822 Name" msgstr "RFC822-Name" #: ../src/certificate_properties.c:738 ../src/certificate_properties.c:842 msgid "URI" msgstr "Adresse" #: ../src/certificate_properties.c:744 msgid "IP" msgstr "IP" #: ../src/certificate_properties.c:751 ../src/certificate_properties.c:855 msgid "Directory Name" msgstr "Ordnername" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "TRUE" msgstr "WAHR" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "FALSE" msgstr "FALSCH" #: ../src/certificate_properties.c:790 msgid "CA" msgstr "Zertifizierungsstelle" #: ../src/certificate_properties.c:794 msgid "Path Length Constraint" msgstr "Beschränkung der Pfadlänge" #: ../src/certificate_properties.c:848 msgid "IP Address" msgstr "IP-Adresse" #: ../src/certificate_properties.c:963 msgid "Extensions" msgstr "Erweiterungen" #: ../src/certificate_properties.c:972 msgid "Critical" msgstr "Kritisch" #: ../src/certificate_properties.c:1000 msgid "Certificate" msgstr "Zertifikat" #: ../src/certificate_properties.c:1025 msgid "Signature Algorithm" msgstr "Signatur-Algorithmus" #: ../src/certificate_properties.c:1108 msgid "Name" msgstr "Name" #: ../src/certificate_properties.c:1124 ../src/tls.c:1070 msgid "TLS WWW Server" msgstr "TLS-Webserver" #: ../src/certificate_properties.c:1125 msgid "TLS WWW Client" msgstr "TLS-Webclient" #: ../src/certificate_properties.c:1131 msgid "Subject Directory Attributes" msgstr "" #: ../src/certificate_properties.c:1132 msgid "Subject Key Identifier" msgstr "" #: ../src/certificate_properties.c:1133 msgid "Key Usage" msgstr "" #: ../src/certificate_properties.c:1134 msgid "Private Key Usage Period" msgstr "" #: ../src/certificate_properties.c:1135 msgid "Subject Alternative Name" msgstr "" #: ../src/certificate_properties.c:1136 msgid "Basic Constraints" msgstr "" #: ../src/certificate_properties.c:1137 msgid "Name Constraints" msgstr "" #: ../src/certificate_properties.c:1138 msgid "CRL Distribution Points" msgstr "" #: ../src/certificate_properties.c:1139 msgid "Certificate Policies" msgstr "" #: ../src/certificate_properties.c:1140 msgid "Policy Mappings" msgstr "" #: ../src/certificate_properties.c:1141 msgid "Authority Key Identifier" msgstr "" #: ../src/certificate_properties.c:1142 msgid "Policy Constraints" msgstr "" #: ../src/certificate_properties.c:1143 msgid "Extended Key Usage" msgstr "" #: ../src/certificate_properties.c:1144 msgid "Delta CRL Distribution Point" msgstr "" #: ../src/certificate_properties.c:1145 msgid "Inhibit Any-Policy" msgstr "" #: ../src/creation_process_window.c:79 msgid "CA creation process finished" msgstr "Vorgang der Erzeugung der Zertifizierungsstelle abgeschlossen" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "Erzeugungsvorgang wurde abgebrochen" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "" #: ../src/creation_process_window.c:274 msgid "Creating Certificate Signing Request" msgstr "" #: ../src/crl.c:250 msgid "Export Certificate Revocation List" msgstr "" #: ../src/crl.c:280 msgid "CRL generated successfully" msgstr "" #: ../src/crl.c:309 ../src/crl.c:371 ../src/crl.c:382 msgid "There was an error while exporting CRL." msgstr "" #: ../src/crl.c:320 msgid "There was an error while getting revoked certificates." msgstr "Fehler beim Erhalten der widerrufenen Zertifikate." #: ../src/crl.c:336 ../src/crl.c:355 msgid "There was an error while generating CRL." msgstr "" #: ../src/crl.c:363 msgid "There was an error while writing CRL." msgstr "" #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "Signaturanfrage wird erzeugt" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "Erzeugung der Signaturanfrage ist fehlgeschlagen" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "Signaturanfrage wird in Datenbank gespeichert" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "Signaturanfrage konnte nicht gespeichert werden" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "Signaturanfrage wurde erfolgreich erzeugt" #: ../src/csr_properties.c:78 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" "Der zugehörige geheime Schlüssel für diese Siganturanfrage wurde in einer " "externen Datei gespeichert." #: ../src/dialog.c:79 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" "\n" "Das Passwort muss mindestens aus %d Zeichen bestehen\n" #: ../src/dialog.c:103 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "" #: ../src/dialog.c:104 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "" #: ../src/dialog.c:372 msgid "To do. Feature not implemented yet." msgstr "Dieses Funktionsmerkmal ist noch nicht implementiert." #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "" "Beim Speichern der Diffie-Hellman-Parameter ist ein Fehler aufgetreten." #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "Beim Exportieren des geheimen Schlüssels ist ein Fehler aufgetreten." #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "Beim Erhalten des geheimen Schlüssels ist ein Fehler aufgetreten." #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "" "Beim Entschlüsseln des geheimen Schlüssels ist ein Fehler aufgetreten." #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "Kennwort eingeben (mindestens 8 Zeichen):" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "Kennwort eingeben (Bestätigung):" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "Die eingegebenen Kennwörter sind unterschiedlich." #: ../src/export.c:110 msgid "Operation cancelled." msgstr "Vorgang wurde abgebrochen." #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "" "Beim Schützen des geheimen Schlüssels durch ein Passwort ist ein Fehler " "aufgetreten." #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "" "Beim Entschlüsseln des geheimen Schlüssels ist ein Fehler aufgetreten." #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "" "Nicht unterstützter Vorgang: Sie können kein PKCS#12 für eine " "Signaturanfrage erstellen." #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" "Beim Holen des Zertifikats und geheimen Schlüssels aus der internen " "Datenbank ist ein Fehler aufgetreten." #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "Beim Erstellen des PKCS#12-Pakets ist ein Fehler aufgetreten." #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "Beim Exportieren des Zertifikats ist ein Fehler aufgetreten." #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "- Ein Zertifizierungsstellen-Verwalter" #: ../src/gnomint-cli.c:59 ../src/main.c:129 #, c-format msgid "Failed to initialize: %s\n" msgstr "Initialisierung ist fehlgeschlagen: %s\n" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "Bitte Passwort für »%s« eingeben" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" "Die Zertifizierungsanfrage konnte nicht importiert werden. \n" "Die Daenbank gab folgenden Fehler zurück: \n" "\n" "»%s«" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" "Das Zertifikat konnte nicht importiert werden. \n" "Die Daenbank gab folgenden Fehler zurück: \n" "\n" "»%s«" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "" "In der angegebenen Datei konnte kein unterstütztes Format gefunden werden" #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "" "Datei %s konnte nicht geöffnet werden. Bitte überprüfen Sie die " "Zugriffsrechte." #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "" "Datei %s konnte nicht als geheimer RSA- oder DSA-Schlüssel erkannte werden." #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "Geheimer Schlüssel für %s" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "Geheimer Schlüssel %s" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "" "Problem beim Aufruf von openssl für die Verarbeitung des geheimen Schlüssels." #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" "OpenSSL gab folgenden Fehler beim Versuch zurück, den geheimen Schlüssel zu " "entschlüsseln:\n" "\n" "%s" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "" #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "Beim Öffnen des Ordners certs/ ist ein Fehler aufgetreten." #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "Beim Öffnen des Ordners newcerts/ ist ein Fehler aufgetreten." #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "Beim Öffnen des Ordners req/ ist ein Fehler aufgetreten." #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "Beim Öffnen des Ordners crl/ ist ein Fehler aufgetreten." #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "Beim Öffnen des Ordners keys/ ist ein Fehler aufgetreten." #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" "Dateien im Ordner entsprechen keinem unterstützten Zertifizierungsstellen-" "Format." #: ../src/main.c:126 msgid "- A graphical Certification Authority manager" msgstr "- Eine grafische Verwaltung für Zertifizierungsstellen" #: ../src/main.c:285 msgid "Create new CA database" msgstr "Neue Zertifizierungsstellen-Datenbank erzeugen" #: ../src/main.c:323 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" "Problem beim Erzeugen der Zertifizierungsstellen-Datenbank »%s«:\n" "%s" #: ../src/main.c:336 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "Problem beim Öffnen der neuen Zertifizierungsstellen-Datenbank »%s«" #: ../src/main.c:357 msgid "Open CA database" msgstr "Zertifizierungsstellen-Datenbank öffnen" #: ../src/main.c:380 ../src/main.c:420 #, c-format msgid "Problem when opening '%s' CA database" msgstr "Problem beim Öffnen der Zertifizierungsstellen-Datenbank »%s«" #: ../src/main.c:445 msgid "Save CA database as..." msgstr "Zertifizierungsstellen-Datenbank speichern unter …" #: ../src/main.c:497 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" "gnoMint ist ein Programm zum Erzeugen und Verwalten von " "Zertifizierungsstellen und deren Zertifikaten" #: ../src/main.c:498 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" #: ../src/new_cert.c:329 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:335 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:341 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:347 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:353 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:799 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" #: ../src/new_cert.c:815 msgid "Error while signing CSR." msgstr "Fehler beim Bestätigen der Signaturanfrage für ein Zertifikat." #: ../src/pkey_manage.c:80 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" #: ../src/pkey_manage.c:125 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" #: ../src/pkey_manage.c:171 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" "Das angegebene Passwort stimmt nicht mit demjenigen überein, das zur " "Verschlüsselung der Datei verwendet wurde." #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:187 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:191 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" #. The file cannot be opened #: ../src/pkey_manage.c:196 msgid "The file designated in database couldn't be opened." msgstr "" #. The file doesn't exist #: ../src/pkey_manage.c:201 msgid "The file designated in database doesn't exist." msgstr "" #: ../src/pkey_manage.c:760 ../src/pkey_manage.c:811 msgid "The given password doesn't match the one used in the database" msgstr "" "Das angegebene Passwort stimmt nicht mit dem in der Datenbank verwendeten " "Passwort überein" #: ../src/pkey_manage.c:798 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" #: ../src/pkey_manage.c:799 msgid "Please insert the database password:" msgstr "Bitte geben Sie das Datenbankpasswort ein:" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "Fehler beim Initialisieren der Struktur des geheimen Schlüssels." #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "Fehler beim Erzeugen des geheimen Schlüssels: %d" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:553 ../src/tls.c:855 #, c-format msgid "Error exporting private key to PEM structure." msgstr "" "Fehler beim Exportieren des geheimen Schlüssels in eine PEM-Struktur." #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "Fehler beim Initialisieren der Struktur des Zertifikats" #: ../src/tls.c:441 ../src/tls.c:689 #, c-format msgid "Error when setting certificate version" msgstr "Fehler beim Setzen der Version des Zertifikats" #: ../src/tls.c:451 ../src/tls.c:702 #, c-format msgid "Error when setting certificate serial number" msgstr "Fehler beim Setzen der Seriennummer des Zertifikats" #: ../src/tls.c:460 ../src/tls.c:711 #, c-format msgid "Error when setting activation time" msgstr "Fehler beim Setzen der Aktivierungszeit" #: ../src/tls.c:465 ../src/tls.c:719 #, c-format msgid "Error when setting expiration time" msgstr "Fehler beim Setzen der Ablaufzeit" #: ../src/tls.c:511 ../src/tls.c:768 #, c-format msgid "Error when setting basicConstraint extension" msgstr "Fehler beim Setzen der basicConstraint-Erweiterung" #: ../src/tls.c:516 ../src/tls.c:810 #, c-format msgid "Error when setting keyUsage extension" msgstr "Fehler beim Setzen der keyUsage-Erweiterung" #: ../src/tls.c:527 ../src/tls.c:784 #, c-format msgid "Error when setting subject key identifier extension" msgstr "" #: ../src/tls.c:531 ../src/tls.c:758 #, c-format msgid "Error when setting authority key identifier extension" msgstr "" #: ../src/tls.c:541 #, c-format msgid "Error when signing self-signed certificate" msgstr "" #: ../src/tls.c:571 #, c-format msgid "Error when initializing csr structure" msgstr "" #: ../src/tls.c:575 #, c-format msgid "Error when setting csr version" msgstr "" #: ../src/tls.c:608 #, c-format msgid "Error when signing self-signed csr" msgstr "" #: ../src/tls.c:619 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "Fehler beim Exportieren der Signaturanfrage in eine PEM-Struktur." #: ../src/tls.c:673 #, c-format msgid "Error when initializing crt structure" msgstr "Fehler beim Initialisieren der CRT-Struktur" #: ../src/tls.c:681 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "" "Fehler beim Kopieren der Daten aus der Signaturanfrage in die " "Zertifikatsstruktur" #: ../src/tls.c:840 #, c-format msgid "Error when signing certificate" msgstr "Fehler beim Signieren des Zertifikats" #: ../src/tls.c:1058 msgid "Key encipher only" msgstr "" #: ../src/tls.c:1060 msgid "Key decipher only" msgstr "" #: ../src/tls.c:1072 msgid "TLS WWW Client." msgstr "TLS-Webclient." gnomint-1.3.0/po/fi.po0000664000175000017500000022263512672052326011504 00000000000000# Finnish translation for gnomint # Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 # This file is distributed under the same license as the gnomint package. # FIRST AUTHOR , 2009. # msgid "" msgstr "" "Project-Id-Version: gnomint\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-06-03 23:09+0200\n" "PO-Revision-Date: 2009-06-03 22:28+0000\n" "Last-Translator: Ilkka Tuohela \n" "Language-Team: Finnish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2010-08-11 09:00+0000\n" "X-Generator: Launchpad (build Unknown)\n" #: ../gconf/gnomint.schemas.in.h:1 msgid "Automatic exporting of certificates for gnome-keyring" msgstr "Varmenteiden automaattinen vienti gnome-keyring -avainnippuun" #: ../gconf/gnomint.schemas.in.h:2 msgid "Certificate requests visibility" msgstr "Varmennuspyyntöjen näkyvyys" #: ../gconf/gnomint.schemas.in.h:3 msgid "Revoked certificates visibility" msgstr "Peruttujen varmenteiden näkyvyys" #: ../gconf/gnomint.schemas.in.h:4 msgid "" "The (width,length) size gnoMint should take when started. This cannot be " "smaller than (320,200)." msgstr "" #: ../gconf/gnomint.schemas.in.h:5 msgid "Whether the certificate requests should be visible." msgstr "" #: ../gconf/gnomint.schemas.in.h:6 msgid "" "Whether the created or imported certificates are automatically exported to " "gnome-keyring certificate-store." msgstr "" #: ../gconf/gnomint.schemas.in.h:7 msgid "Whether the revoked certificates should be visible." msgstr "Näytetäänkö perutut varmenteet." #: ../gconf/gnomint.schemas.in.h:8 msgid "Window size" msgstr "Ikkunan koko" #: ../gui/gnomint.glade.h:1 msgid " " msgstr " " #: ../gui/gnomint.glade.h:2 msgid "CSR subject" msgstr "CSR-aihe" #: ../gui/gnomint.glade.h:3 msgid "Certificate fields" msgstr "Varmenteen kentät" #: ../gui/gnomint.glade.h:4 msgid "Certificate hierarchy" msgstr "Varmennehiararkia" #: ../gui/gnomint.glade.h:5 msgid "Certificate purposes" msgstr "Varmenteen käyttötarkoitus" #: ../gui/gnomint.glade.h:6 msgid "Certificate subject" msgstr "Varmenteen aihe" #: ../gui/gnomint.glade.h:7 msgid "Certificate uses" msgstr "Varmenteen käyttö" #: ../gui/gnomint.glade.h:8 msgid "Emmited by" msgstr "" #: ../gui/gnomint.glade.h:9 msgid "Fingerprints" msgstr "Sormenjäljet" #: ../gui/gnomint.glade.h:10 msgid "Inherited fields from CA subject" msgstr "CA-aiheesta perityt kentät" #: ../gui/gnomint.glade.h:11 msgid "Purposes of new generated certificates" msgstr "Uusien luotujen varmenteiden käyttökohteet" #: ../gui/gnomint.glade.h:12 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in the internal database." msgstr "" "Tälle varmennuspyynnölle on tallennettu pyyntöön liittyvä salainen avain " "sisäiseen tietokantaan." #: ../gui/gnomint.glade.h:13 msgid "This certificate has been verified for the following uses:" msgstr "Tämä varmenne on vahvistettu seuraavia käyttökohteita varten:" #: ../gui/gnomint.glade.h:14 msgid "Uses of new generated certificates" msgstr "Uusien luotujen varmenteiden käyttökohteet" #: ../gui/gnomint.glade.h:15 msgid "Validity" msgstr "Kelpoisuus" #: ../gui/gnomint.glade.h:16 msgid "New Certificate Revocation List" msgstr "Uusi varmenteiden estolista" #: ../gui/gnomint.glade.h:17 msgid "CA Properties\n" msgstr "Varmentajan ominaisuudet\n" #: ../gui/gnomint.glade.h:19 msgid "CA Root certificate properties\n" msgstr "Varmentajan juurivarmenteen ominaisuudet\n" #: ../gui/gnomint.glade.h:21 msgid "Certificate Request Properties\n" msgstr "Varmennepyynnön ominaisuudet\n" #: ../gui/gnomint.glade.h:23 msgid "" "Choose private key file\n" "\n" "For doing the selected operation, you must provide the file where resides " "the private key corresponding to the certificate:" msgstr "" #: ../gui/gnomint.glade.h:26 msgid "New Certificate Properties\n" msgstr "Uuden varmenteen ominaisuudet\n" #: ../gui/gnomint.glade.h:28 msgid "Password protection\n" msgstr "Salasanasuojaus\n" #: ../gui/gnomint.glade.h:30 msgid "" "Export both (private and public) parts to a password-protected PKCS#12 " "file. This kind of file can be imported by other common programs, such as " "web or mail clients." msgstr "" #: ../gui/gnomint.glade.h:31 msgid "Export only the certificate to a public file, in PEM format." msgstr "" #: ../gui/gnomint.glade.h:32 msgid "" "Export the saved private key to a PEM file. This option should only be " "used for exporting certificates that will be used in unattended servers." msgstr "" #: ../gui/gnomint.glade.h:33 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the certificate." msgstr "" #: ../gui/gnomint.glade.h:34 msgid "" "Import a directory containing the structure of\n" "a whole CA made with OpenSSL ." msgstr "" #: ../gui/gnomint.glade.h:36 msgid "" "Import a single file, encoded in DER or PEM format, containing " "certificates, private keys (encrypted or plain), signing requests (CSRs), " "revocation lists (CRLs) or PKCS#12 packages." msgstr "" #: ../gui/gnomint.glade.h:37 msgid "" "\n" "It is recommended that all the certificates generated by a CA share the same " "properties.\n" "If you want to generate certificates with different properties, you should " "create a hierarchy of CAs, each one with its own policy for certificate " "generation.\n" "\n" "Please, define the maximum set of properties for the certificates that this " "CA will be able to generate:\n" msgstr "" #: ../gui/gnomint.glade.h:43 msgid "#Description#" msgstr "" #: ../gui/gnomint.glade.h:44 msgid "" "PKCS#3 files containing Diffie·Hellman parameters are used by " "some cryptographic \n" "applications for a secure interchange of their keys over insecure " "channels." msgstr "" #: ../gui/gnomint.glade.h:46 msgid "" "The part that is being imported has the description:" msgstr "" #: ../gui/gnomint.glade.h:47 msgid "" "The subject of the new certificate request can inherit information " "from one of the existing Certification Authorities. This is a must if the " "policy of the CA you are going to use is defined to force some fields of a " "certificate subject to be the same as the ones in the CA cert " "subject." msgstr "" #: ../gui/gnomint.glade.h:48 msgid "Activated on" msgstr "" #: ../gui/gnomint.glade.h:49 msgid "Add CSR" msgstr "" #: ../gui/gnomint.glade.h:50 msgid "Add _Certificate Request" msgstr "" #: ../gui/gnomint.glade.h:51 msgid "Add a new Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:52 msgid "Add an autosigned CA" msgstr "" #: ../gui/gnomint.glade.h:53 msgid "Add autosigned CA certificate" msgstr "" #: ../gui/gnomint.glade.h:54 ../src/certificate_properties.c:1130 #: ../src/tls.c:1082 msgid "Any purpose" msgstr "" #: ../gui/gnomint.glade.h:55 msgid "" "Automatically export created certificates to \n" "Gnome-keyring certificate store" msgstr "" #: ../gui/gnomint.glade.h:57 msgid "Both parts." msgstr "" #: ../gui/gnomint.glade.h:58 msgid "CA Policy" msgstr "" #: ../gui/gnomint.glade.h:59 msgid "" "CA Root Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:61 msgid "CA properties" msgstr "" #: ../gui/gnomint.glade.h:62 msgid "CACN" msgstr "" #: ../gui/gnomint.glade.h:63 msgid "CAO" msgstr "" #: ../gui/gnomint.glade.h:64 msgid "CAOU" msgstr "" #: ../gui/gnomint.glade.h:65 ../src/certificate_properties.c:358 #: ../src/tls.c:1056 msgid "CRL signing" msgstr "" #: ../gui/gnomint.glade.h:66 msgid "CSR properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:67 msgid "CertActivationDate" msgstr "" #: ../gui/gnomint.glade.h:68 msgid "CertExpirationDate" msgstr "" #: ../gui/gnomint.glade.h:69 msgid "CertSN" msgstr "" #: ../gui/gnomint.glade.h:70 msgid "" "Certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:72 msgid "Certificate DN" msgstr "" #: ../gui/gnomint.glade.h:73 msgid "Certificate _Signing Requests" msgstr "" #: ../gui/gnomint.glade.h:74 msgid "Certificate properties" msgstr "" #: ../gui/gnomint.glade.h:75 msgid "Certificate properties - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:76 ../src/tls.c:1039 msgid "Certification Authority" msgstr "" #: ../gui/gnomint.glade.h:77 msgid "Change database pass_word" msgstr "" #: ../gui/gnomint.glade.h:78 msgid "Choose CA for signing the CSR" msgstr "" #: ../gui/gnomint.glade.h:79 msgid "Choose private key file. gnoMint" msgstr "" #: ../gui/gnomint.glade.h:80 msgid "City" msgstr "" #: ../gui/gnomint.glade.h:81 msgid "City: " msgstr "" #: ../gui/gnomint.glade.h:82 ../src/certificate_properties.c:1126 #: ../src/tls.c:1074 msgid "Code signing" msgstr "" #: ../gui/gnomint.glade.h:83 msgid "Common Name (CN)" msgstr "" #: ../gui/gnomint.glade.h:84 msgid "Country" msgstr "" #: ../gui/gnomint.glade.h:85 msgid "Country:" msgstr "" #: ../gui/gnomint.glade.h:86 msgid "Create a new database" msgstr "" #: ../gui/gnomint.glade.h:87 msgid "Creating CA Root Certificate" msgstr "" #: ../gui/gnomint.glade.h:88 msgid "Creating new CA - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:89 msgid "DSA" msgstr "" #: ../gui/gnomint.glade.h:90 ../src/certificate_properties.c:352 #: ../src/tls.c:1050 msgid "Data encipherment" msgstr "" #: ../gui/gnomint.glade.h:91 msgid "Database password protection - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:92 msgid "Delete the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:93 msgid "Details" msgstr "" #: ../gui/gnomint.glade.h:94 ../src/certificate_properties.c:346 #: ../src/tls.c:1044 msgid "Digital signature" msgstr "" #: ../gui/gnomint.glade.h:95 msgid "Don't inherit any fields from existing Certification Authorities" msgstr "" #: ../gui/gnomint.glade.h:96 msgid "E_xport" msgstr "" #: ../gui/gnomint.glade.h:97 ../src/certificate_properties.c:1127 #: ../src/tls.c:1076 msgid "Email protection" msgstr "" #: ../gui/gnomint.glade.h:98 msgid "" "Enter new password again \n" "for confirmation:" msgstr "" #: ../gui/gnomint.glade.h:100 msgid "Enter password - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:101 msgid "Enter password again for confirmation:" msgstr "" #: ../gui/gnomint.glade.h:102 msgid "Expires on" msgstr "" #: ../gui/gnomint.glade.h:103 msgid "Export certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:104 msgid "Export options" msgstr "" #: ../gui/gnomint.glade.h:105 msgid "Exports the CSR so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:106 msgid "" "Exports the certificate so it can be imported by any other application" msgstr "" #: ../gui/gnomint.glade.h:107 msgid "Extrac_t private key" msgstr "" #: ../gui/gnomint.glade.h:108 msgid "Extract Private Key" msgstr "" #: ../gui/gnomint.glade.h:109 msgid "Extract the private key of the selected item into a external file" msgstr "" #: ../gui/gnomint.glade.h:110 msgid "Extract the saved private key to an external file or device" msgstr "" #: ../gui/gnomint.glade.h:111 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the CSR will be used" msgstr "" #: ../gui/gnomint.glade.h:115 msgid "" "Extracts the private key of the selected \n" "certificate from the database to an \n" "external file. This file must be provided \n" "each time the certificate will be used" msgstr "" #: ../gui/gnomint.glade.h:119 msgid "General" msgstr "" #: ../gui/gnomint.glade.h:120 msgid "General Preferences - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:121 msgid "Generate D_H parameters..." msgstr "" #: ../gui/gnomint.glade.h:122 msgid "Generate _CRL" msgstr "" #: ../gui/gnomint.glade.h:123 msgid "Generate the current Certificate Revocation List" msgstr "" #: ../gui/gnomint.glade.h:124 msgid "Hours between CRL updates:" msgstr "" #: ../gui/gnomint.glade.h:125 msgid "Import a single file." msgstr "" #: ../gui/gnomint.glade.h:126 msgid "Import a whole directory." msgstr "" #: ../gui/gnomint.glade.h:127 msgid "Import selection - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:128 msgid "" "Inherit fields according to selected Certification Authority and its policy." msgstr "" #: ../gui/gnomint.glade.h:129 ../src/certificate_properties.c:354 #: ../src/tls.c:1052 msgid "Key agreement" msgstr "" #: ../gui/gnomint.glade.h:130 ../src/certificate_properties.c:350 #: ../src/tls.c:1048 msgid "Key encipherment" msgstr "" #: ../gui/gnomint.glade.h:131 msgid "MD5 fingerprint" msgstr "" #: ../gui/gnomint.glade.h:132 msgid "MD5FINGERPRINT" msgstr "" #: ../gui/gnomint.glade.h:133 msgid "" "Maximum number of months before expiration of the new generated certificates:" msgstr "" #: ../gui/gnomint.glade.h:134 msgid "Months before certificate expiration:" msgstr "" #: ../gui/gnomint.glade.h:135 msgid "Months before root certificate expiration:" msgstr "" #: ../gui/gnomint.glade.h:136 msgid "New CA - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:137 msgid "New CRL - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:138 msgid "New Certificate - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:139 msgid "New Diffie-Hellman parameters - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:140 msgid "" "New certificate \n" "Common Name (CN):" msgstr "" #: ../gui/gnomint.glade.h:142 msgid "New certificate request - gnoMint" msgstr "" #: ../gui/gnomint.glade.h:143 ../src/certificate_properties.c:348 #: ../src/tls.c:1046 msgid "Non repudiation" msgstr "" #: ../gui/gnomint.glade.h:144 ../src/certificate_properties.c:1129 #: ../src/tls.c:1080 msgid "OCSP signing" msgstr "" #: ../gui/gnomint.glade.h:145 msgid "Only the private key (crypted)." msgstr "" #: ../gui/gnomint.glade.h:146 msgid "Only the private key (uncrypted)." msgstr "" #: ../gui/gnomint.glade.h:147 msgid "Only the pu_blic part." msgstr "" #: ../gui/gnomint.glade.h:148 msgid "Open _recents" msgstr "" #: ../gui/gnomint.glade.h:149 msgid "Open an existing database" msgstr "" #: ../gui/gnomint.glade.h:150 msgid "Organization" msgstr "" #: ../gui/gnomint.glade.h:151 msgid "Organization (O)" msgstr "" #: ../gui/gnomint.glade.h:152 msgid "Organization Unit:" msgstr "" #: ../gui/gnomint.glade.h:153 msgid "Organization:" msgstr "" #: ../gui/gnomint.glade.h:154 msgid "Organizational Unit (OU)" msgstr "" #: ../gui/gnomint.glade.h:155 msgid "Organizational unit" msgstr "" #: ../gui/gnomint.glade.h:156 msgid "Password (confirm):" msgstr "" #: ../gui/gnomint.glade.h:157 msgid "Password protect" msgstr "" #: ../gui/gnomint.glade.h:158 msgid "Password:" msgstr "" #: ../gui/gnomint.glade.h:159 msgid "Please, choose the file:" msgstr "" #: ../gui/gnomint.glade.h:160 msgid "Please, choose the more suitable option for what you want to import:" msgstr "" #: ../gui/gnomint.glade.h:161 msgid "" "Please, choose which part of the saved certificate you want to export:" msgstr "" #: ../gui/gnomint.glade.h:162 msgid "" "Please, enter current\n" "password:" msgstr "" #: ../gui/gnomint.glade.h:164 msgid "" "Please, enter new \n" "password:" msgstr "" #: ../gui/gnomint.glade.h:166 msgid "Please, enter password" msgstr "" #: ../gui/gnomint.glade.h:167 msgid "Please, enter password:" msgstr "" #: ../gui/gnomint.glade.h:168 msgid "Please, enter the prime size, in bits:" msgstr "" #: ../gui/gnomint.glade.h:169 msgid "" "Please, select the CA for which a Certificate \n" "Revocation List is going to be created:" msgstr "" #: ../gui/gnomint.glade.h:171 msgid "Private key bit length:" msgstr "" #: ../gui/gnomint.glade.h:172 msgid "Private key type:" msgstr "" #: ../gui/gnomint.glade.h:173 msgid "" "Protect CA database private \n" "keys with password:" msgstr "" #: ../gui/gnomint.glade.h:175 msgid "" "Protect CA database private keys\n" "with password:" msgstr "" #: ../gui/gnomint.glade.h:177 msgid "RSA" msgstr "" #: ../gui/gnomint.glade.h:178 msgid "Remember this password during this gnoMint session" msgstr "" #: ../gui/gnomint.glade.h:179 msgid "Revo_ke" msgstr "" #: ../gui/gnomint.glade.h:180 msgid "Revoke" msgstr "" #: ../gui/gnomint.glade.h:181 msgid "Revoke the selected certificate" msgstr "" #: ../gui/gnomint.glade.h:182 msgid "Revokes the selected certificate" msgstr "" #: ../gui/gnomint.glade.h:183 msgid "Root certificate prop" msgstr "" #: ../gui/gnomint.glade.h:184 msgid "SHA1 fingerprint" msgstr "" #: ../gui/gnomint.glade.h:185 msgid "SHA1FINGERPRINT" msgstr "" #: ../gui/gnomint.glade.h:186 msgid "Serial number" msgstr "" #: ../gui/gnomint.glade.h:187 msgid "Shows the CSR properties window" msgstr "" #: ../gui/gnomint.glade.h:188 msgid "Shows the certificate properties window" msgstr "" #: ../gui/gnomint.glade.h:189 msgid "Sign" msgstr "" #: ../gui/gnomint.glade.h:190 msgid "Sign the selected Certificate Signing Request" msgstr "" #: ../gui/gnomint.glade.h:191 msgid "State or Province name" msgstr "" #: ../gui/gnomint.glade.h:192 msgid "State or Province name: " msgstr "" #: ../gui/gnomint.glade.h:193 msgid "SubjectCN" msgstr "" #: ../gui/gnomint.glade.h:194 msgid "SubjectO" msgstr "" #: ../gui/gnomint.glade.h:195 msgid "SubjectOU" msgstr "" #: ../gui/gnomint.glade.h:196 msgid "TLS Web client" msgstr "" #: ../gui/gnomint.glade.h:197 msgid "TLS Web server" msgstr "" #: ../gui/gnomint.glade.h:198 msgid "" "The whole selected file, or some of its elements, seems to be cyphered using " "a password or passphrase.\n" "\n" "For importing the file into gnoMint database, you must provide an appropiate " "password." msgstr "" #: ../gui/gnomint.glade.h:201 msgid "" "This action requires using one or more private keys saved in the CA " "database.\n" "\n" "Please insert the database password." msgstr "" #: ../gui/gnomint.glade.h:204 ../src/certificate_properties.c:1128 #: ../src/tls.c:1078 msgid "Time stamping" msgstr "" #: ../gui/gnomint.glade.h:205 msgid "" "You are about to create and export a set of Diffie·Hellman parameters " "into a PKCS#3 structure file." msgstr "" #: ../gui/gnomint.glade.h:206 msgid "" "You are about to sign a Certificate Signing Request, and this way, creating " "a new certificate. Please check the certificate properties." msgstr "" #: ../gui/gnomint.glade.h:207 msgid "" "You are about to sign a Certificate Signing Request. Please, choose the " "Certification Authority you are going to use for signing it." msgstr "" #: ../gui/gnomint.glade.h:208 msgid "_Add self-signed CA" msgstr "" #: ../gui/gnomint.glade.h:209 msgid "_Certificates" msgstr "" #: ../gui/gnomint.glade.h:210 msgid "_Edit" msgstr "" #: ../gui/gnomint.glade.h:211 msgid "_Help" msgstr "" #: ../gui/gnomint.glade.h:212 msgid "_Import" msgstr "" #: ../gui/gnomint.glade.h:213 msgid "_New certificate database" msgstr "" #: ../gui/gnomint.glade.h:214 msgid "_No" msgstr "" #: ../gui/gnomint.glade.h:215 msgid "_Open certificate database" msgstr "" #: ../gui/gnomint.glade.h:216 msgid "_Revoked Certificates" msgstr "" #: ../gui/gnomint.glade.h:217 msgid "_Save certificate database as..." msgstr "" #: ../gui/gnomint.glade.h:218 msgid "_Save filename in the database for automatic loading" msgstr "" #: ../gui/gnomint.glade.h:219 msgid "_Sign" msgstr "" #: ../gui/gnomint.glade.h:220 msgid "_View" msgstr "" #: ../gui/gnomint.glade.h:221 msgid "_Yes" msgstr "" #: ../gui/gnomint.glade.h:222 msgid "gnoMint" msgstr "" #: ../gui/gnomint.glade.h:223 msgid "gtk-cancel" msgstr "" #: ../gui/gnomint.glade.h:224 msgid "gtk-ok" msgstr "" #: ../gui/gnomint.glade.h:225 msgid "label" msgstr "" #: ../gui/gnomint.glade.h:226 msgid "may differ" msgstr "" #: ../gui/gnomint.glade.h:227 msgid "must be the same" msgstr "" #: ../gui/gnomint.glade.h:228 msgid "page 3" msgstr "" #: ../gui/gnomint.desktop.in.h:1 msgid "Manage X.509 certificates and CAs, easily and graphically" msgstr "" #: ../gui/gnomint.desktop.in.h:2 msgid "gnoMint X.509 CA Manager" msgstr "" #: ../src/ca.c:147 msgid "Certificates" msgstr "" #: ../src/ca.c:263 msgid "Certificate Signing Requests" msgstr "" #: ../src/ca.c:304 ../src/ca-cli-callbacks.c:168 ../src/ca-cli-callbacks.c:178 #: ../src/ca-cli-callbacks.c:189 ../src/ca-cli-callbacks.c:547 #: ../src/ca-cli-callbacks.c:551 ../src/ca-cli-callbacks.c:1162 #: ../src/ca-cli-callbacks.c:1166 ../src/certificate_properties.c:178 #: ../src/certificate_properties.c:183 msgid "%m/%d/%Y %R GMT" msgstr "" #: ../src/ca.c:448 ../src/certificate_properties.c:531 ../src/crl.c:173 #: ../src/new_cert.c:181 ../src/new_req_window.c:179 msgid "Subject" msgstr "" #: ../src/ca.c:483 msgid "Serial" msgstr "" #: ../src/ca.c:490 msgid "Activation" msgstr "" #: ../src/ca.c:497 msgid "Expiration" msgstr "" #: ../src/ca.c:504 msgid "Revocation" msgstr "" #: ../src/ca.c:791 msgid "Export certificate" msgstr "" #: ../src/ca.c:798 msgid "Export certificate signing request" msgstr "" #: ../src/ca.c:813 ../src/ca.c:849 ../src/ca.c:859 ../src/export.c:260 msgid "There was an error while exporting certificate." msgstr "" #: ../src/ca.c:815 ../src/ca.c:851 ../src/ca.c:861 msgid "There was an error while exporting CSR." msgstr "" #: ../src/ca.c:874 ../src/ca.c:1040 msgid "Certificate exported successfully" msgstr "" #: ../src/ca.c:881 msgid "Certificate signing request exported successfully" msgstr "" #: ../src/ca.c:900 msgid "Export crypted private key" msgstr "" #: ../src/ca.c:929 ../src/ca.c:981 msgid "Private key exported successfully" msgstr "" #: ../src/ca.c:951 msgid "Export uncrypted private key" msgstr "" #: ../src/ca.c:1002 msgid "Export whole certificate in PKCS#12 package" msgstr "" #: ../src/ca.c:1073 msgid "Export CSR - gnoMint" msgstr "" #: ../src/ca.c:1078 msgid "" "Please, choose which part of the saved Certificate Signing Request you want " "to export:" msgstr "" #: ../src/ca.c:1083 msgid "" "Export the Certificate Signing Request to a public file, in PEM " "format." msgstr "" #: ../src/ca.c:1088 msgid "" "Export the saved private key to a PKCS#8 password-protected file. This " "file should only be accessed by the subject of the Certificate Signing " "Request." msgstr "" #: ../src/ca.c:1146 msgid "Unexpected error" msgstr "" #: ../src/ca.c:1196 msgid "Are you sure you want to revoke this certificate?" msgstr "" #: ../src/ca.c:1235 msgid "Are you sure you want to delete this Certificate Signing Request?" msgstr "" #: ../src/ca.c:1512 msgid "Change CA password - gnoMint" msgstr "" #: ../src/ca.c:1530 msgid "" "The current password you have entered doesn't match with the actual current " "database password." msgstr "" #: ../src/ca.c:1545 msgid "Error while changing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1554 msgid "Password changed successfully" msgstr "" #: ../src/ca.c:1564 ../src/ca-cli-callbacks.c:1002 msgid "" "Error while establishing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1574 msgid "Password established successfully" msgstr "" #: ../src/ca.c:1584 msgid "Error while removing database password. The operation was cancelled." msgstr "" #: ../src/ca.c:1593 msgid "Password removed successfully" msgstr "" #: ../src/ca.c:1731 msgid "Save Diffie-Hellman parameters" msgstr "" #: ../src/ca.c:1757 msgid "Diffie-Hellman parameters saved successfully" msgstr "" #. Import single file #: ../src/ca.c:1826 msgid "Select PEM file to import" msgstr "" #: ../src/ca.c:1847 #, c-format msgid "Problem when importing '%s' file" msgstr "" #: ../src/ca.c:1860 msgid "Select directory to import" msgstr "" #: ../src/ca-cli.c:37 msgid "newdb " msgstr "" #: ../src/ca-cli.c:37 msgid "Close current file and create a new database with given filename" msgstr "" #. 0 #: ../src/ca-cli.c:38 msgid "opendb " msgstr "" #: ../src/ca-cli.c:38 msgid "Close current file and open the file with given filename" msgstr "" #. 1 #: ../src/ca-cli.c:39 msgid "savedbas " msgstr "" #: ../src/ca-cli.c:39 msgid "Save the current file with a different filename" msgstr "" #. 2 #: ../src/ca-cli.c:40 msgid "Get current status (opened file, no. of certificates, etc...)" msgstr "" #. 3 #: ../src/ca-cli.c:41 msgid "" "List the certificates in database. With option --see-revoked, lists also the " "revoked ones" msgstr "" #. 4 #: ../src/ca-cli.c:43 msgid "List the CSRs in database" msgstr "" #. 5 #: ../src/ca-cli.c:44 msgid "addcsr [ca-id-for-inherit-fields]" msgstr "" #: ../src/ca-cli.c:44 msgid "Start a new CSR creation process" msgstr "" #. 6 #: ../src/ca-cli.c:45 msgid "Start a new self-signed CA creation process" msgstr "" #. 7 #: ../src/ca-cli.c:46 msgid "extractcertpkey " msgstr "" #: ../src/ca-cli.c:46 msgid "" "Extract the private key of the certificate with the given internal id and " "saves it into the given file" msgstr "" #. 8 #: ../src/ca-cli.c:49 msgid "extractcsrpkey " msgstr "" #: ../src/ca-cli.c:49 msgid "" "Extract the private key of the CSR with the given internal id and saves it " "into the given file" msgstr "" #. 9 #: ../src/ca-cli.c:52 msgid "revoke " msgstr "" #: ../src/ca-cli.c:52 msgid "Revoke the certificate with the given internal ID" msgstr "" #. 10 #: ../src/ca-cli.c:53 msgid "sign " msgstr "" #: ../src/ca-cli.c:53 msgid "Generate a certificate signing the given CSR with the given CA" msgstr "" #. 11 #: ../src/ca-cli.c:54 msgid "delete " msgstr "" #: ../src/ca-cli.c:54 msgid "Delete the given CSR from the database" msgstr "" #. 12 #: ../src/ca-cli.c:55 msgid "crlgen " msgstr "" #: ../src/ca-cli.c:55 msgid "" "Generate a new CRL for the given CA, saving it into the file " msgstr "" #. 13 #: ../src/ca-cli.c:56 msgid "dhgen " msgstr "" #: ../src/ca-cli.c:56 msgid "Generate a new DH-parameter set, saving it into the file " msgstr "" #. 14 #: ../src/ca-cli.c:57 msgid "Change password for the current database" msgstr "" #. 15 #: ../src/ca-cli.c:58 msgid "importfile " msgstr "" #: ../src/ca-cli.c:58 msgid "Import the file with the given name " msgstr "" #. 16 #: ../src/ca-cli.c:59 msgid "importdir " msgstr "" #: ../src/ca-cli.c:59 msgid "Import the given directory, as a OpenSSL-CA directory" msgstr "" #. 17 #: ../src/ca-cli.c:60 msgid "showcert " msgstr "" #: ../src/ca-cli.c:60 msgid "Show properties of the given certificate" msgstr "" #. 18 #: ../src/ca-cli.c:61 msgid "showcsr " msgstr "" #: ../src/ca-cli.c:61 msgid "Show properties of the given CSR" msgstr "" #. 19 #: ../src/ca-cli.c:62 msgid "showpolicy " msgstr "" #: ../src/ca-cli.c:62 msgid "Show CA policy" msgstr "" #. 20 #: ../src/ca-cli.c:63 msgid "setpolicy " msgstr "" #: ../src/ca-cli.c:63 msgid "Change the given CA policy" msgstr "" #. 21 #: ../src/ca-cli.c:64 msgid "Show program preferences" msgstr "" #. 22 #: ../src/ca-cli.c:65 msgid "setpreference " msgstr "" #: ../src/ca-cli.c:65 msgid "Set the given program preference" msgstr "" #. 23 #: ../src/ca-cli.c:66 msgid "Show about message" msgstr "" #. 24 #: ../src/ca-cli.c:67 msgid "Show warranty information" msgstr "" #. 25 #: ../src/ca-cli.c:68 msgid "Show distribution information" msgstr "" #. 26 #: ../src/ca-cli.c:69 msgid "Show version information" msgstr "" #. 27 #: ../src/ca-cli.c:70 msgid "Show (this) help message" msgstr "" #. 28 #. 29 #. 30 #: ../src/ca-cli.c:71 ../src/ca-cli.c:72 ../src/ca-cli.c:73 msgid "Close database and exit program" msgstr "" #: ../src/ca-cli.c:95 #, c-format msgid "Opening database %s..." msgstr "" #: ../src/ca-cli.c:99 #, c-format msgid " OK.\n" msgstr "" #: ../src/ca-cli.c:101 #, c-format msgid " Error.\n" msgstr "" #: ../src/ca-cli.c:128 #, c-format msgid "" "\n" "\n" "%s version %s\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli.c:129 #, c-format msgid "" "This program comes with ABSOLUTELY NO WARRANTY;\n" "for details type 'warranty'.\n" msgstr "" #: ../src/ca-cli.c:130 #, c-format msgid "" "This is free software, and you are welcome to redistribute it\n" "under certain conditions; type 'distribution' for details.\n" "\n" msgstr "" #. Unpaired quotes #: ../src/ca-cli.c:172 #, c-format msgid "Unpaired quotes\n" msgstr "" #: ../src/ca-cli.c:250 #, c-format msgid "" "Invalid command. Try 'help' for getting a list of recognized commands.\n" msgstr "" #: ../src/ca-cli.c:254 #, c-format msgid "Incorrect number of parameters.\n" msgstr "" #: ../src/ca-cli.c:255 #, c-format msgid "Syntax: %s\n" msgstr "" #. The file already exists. We ask the user about overwriting it #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 msgid "The file already exists, so it will be overwritten." msgstr "" #: ../src/ca-cli-callbacks.c:57 ../src/ca-cli-callbacks.c:106 #: ../src/ca-cli-callbacks.c:638 msgid "Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:79 #, c-format msgid "Problem when opening new '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:83 #, c-format msgid "File '%s' opened\n" msgstr "" #: ../src/ca-cli-callbacks.c:93 #, c-format msgid "Problem when opening '%s' CA database\n" msgstr "" #: ../src/ca-cli-callbacks.c:127 #, c-format msgid "Current opened file: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:128 #, c-format msgid "Number of certificates in file: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:129 #, c-format msgid "Number of CSRs in file: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:140 #, c-format msgid "CertList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:143 msgid "CertList IsCA|Y\t" msgstr "" #: ../src/ca-cli-callbacks.c:145 msgid "CertList IsCA|N\t" msgstr "" #: ../src/ca-cli-callbacks.c:150 #, c-format msgid "CertList Subject|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:153 msgid "CertList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:155 msgid "CertList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:158 msgid "CertList PKeyInDB|Y\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:160 msgid "CertList PKeyInDB|N\t\t" msgstr "" #: ../src/ca-cli-callbacks.c:164 msgid "CertList Activation|\t" msgstr "" #: ../src/ca-cli-callbacks.c:169 #, c-format msgid "CertList Activation|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:174 msgid "CertList Expiration|\t" msgstr "" #: ../src/ca-cli-callbacks.c:179 #, c-format msgid "CertList Expiration|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:185 msgid "CertList Revocation|\n" msgstr "" #: ../src/ca-cli-callbacks.c:190 #, c-format msgid "CertList Revocation|%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:207 #, c-format msgid "Certificates in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:208 #, c-format msgid "" "Id.\tIs CA?\tCertificate Subject\tKey in DB?\tActivation\t\tExpiration" msgstr "" #: ../src/ca-cli-callbacks.c:211 #, c-format msgid "\t\tRevocation\n" msgstr "" #: ../src/ca-cli-callbacks.c:221 #, c-format msgid "CsrList ID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 #, c-format msgid "CsrList ParentID|%s\t" msgstr "" #: ../src/ca-cli-callbacks.c:223 msgid "CsrList ParentID|\t" msgstr "" #: ../src/ca-cli-callbacks.c:228 #, c-format msgid "CsrList Subject|%-24s\t" msgstr "" #: ../src/ca-cli-callbacks.c:231 msgid "CsrList PadIfSubject<16|\t" msgstr "" #: ../src/ca-cli-callbacks.c:233 msgid "CsrList PadIfSubject<8|\t" msgstr "" #: ../src/ca-cli-callbacks.c:236 msgid "CsrList PKeyInDB|Y\n" msgstr "" #: ../src/ca-cli-callbacks.c:238 msgid "CsrList PKeyInDB|N\n" msgstr "" #: ../src/ca-cli-callbacks.c:246 #, c-format msgid "Certificate Requests in Database:\n" msgstr "" #: ../src/ca-cli-callbacks.c:247 #, c-format msgid "Id.\tParent Id.\tCSR Subject\t\tKey in DB?\n" msgstr "" #: ../src/ca-cli-callbacks.c:275 ../src/ca-cli-callbacks.c:945 #: ../src/ca-cli-callbacks.c:1310 ../src/ca-cli-callbacks.c:1339 msgid "The given CA id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:328 #, c-format msgid "" "Please enter data corresponding to subject of the Certificate Signing " "Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:330 ../src/ca-cli-callbacks.c:453 msgid "Enter country (C)" msgstr "" #: ../src/ca-cli-callbacks.c:336 ../src/ca-cli-callbacks.c:459 msgid "Enter state or province (ST)" msgstr "" #: ../src/ca-cli-callbacks.c:342 ../src/ca-cli-callbacks.c:465 msgid "Enter locality or city (L)" msgstr "" #: ../src/ca-cli-callbacks.c:348 ../src/ca-cli-callbacks.c:471 msgid "Enter organization (O)" msgstr "" #: ../src/ca-cli-callbacks.c:354 ../src/ca-cli-callbacks.c:477 msgid "Enter organizational unit (OU)" msgstr "" #: ../src/ca-cli-callbacks.c:360 ../src/ca-cli-callbacks.c:483 msgid "Enter common name (CN)" msgstr "" #: ../src/ca-cli-callbacks.c:370 ../src/ca-cli-callbacks.c:493 msgid "Enter type of key you are going to create (RSA/DSA)" msgstr "" #: ../src/ca-cli-callbacks.c:382 ../src/ca-cli-callbacks.c:505 msgid "Enter bitlength for the key (it must be a whole multiple of 1024)" msgstr "" #: ../src/ca-cli-callbacks.c:386 #, c-format msgid "These are the provided CSR properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:388 ../src/ca-cli-callbacks.c:526 #: ../src/ca-cli-callbacks.c:1152 ../src/ca-cli-callbacks.c:1204 #, c-format msgid "Subject:\n" msgstr "" #: ../src/ca-cli-callbacks.c:389 ../src/ca-cli-callbacks.c:527 #, c-format msgid "\tDistinguished Name: " msgstr "" #: ../src/ca-cli-callbacks.c:403 ../src/ca-cli-callbacks.c:541 #, c-format msgid "Key pair\n" msgstr "" #: ../src/ca-cli-callbacks.c:404 ../src/ca-cli-callbacks.c:542 #, c-format msgid "\tType: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:405 ../src/ca-cli-callbacks.c:543 #, c-format msgid "\tKey bitlength: %d\n" msgstr "" #: ../src/ca-cli-callbacks.c:407 ../src/ca-cli-callbacks.c:554 msgid "Do you want to change anything? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:411 msgid "" "You are about to create a Certificate Signing Request with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:412 ../src/ca-cli-callbacks.c:559 msgid "Are you sure? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:417 ../src/ca-cli-callbacks.c:564 #: ../src/ca-cli-callbacks.c:648 ../src/ca-cli-callbacks.c:779 #: ../src/ca-cli-callbacks.c:902 ../src/ca-cli-callbacks.c:931 #: ../src/ca-cli-callbacks.c:997 ../src/ca-cli-callbacks.c:1024 #: ../src/ca-cli-callbacks.c:1052 ../src/ca-cli-callbacks.c:1067 #: ../src/ca-cli-callbacks.c:1369 ../src/ca-cli-callbacks.c:1412 #, c-format msgid "Operation cancelled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:451 #, c-format msgid "" "Please enter data corresponding to subject of the new Certification " "Authority:\n" msgstr "" #: ../src/ca-cli-callbacks.c:510 msgid "" "Introduce number of months before expiration of the new certification " "authority" msgstr "" #: ../src/ca-cli-callbacks.c:524 #, c-format msgid "These are the provided new CA properties:\n" msgstr "" #: ../src/ca-cli-callbacks.c:544 #, c-format msgid "Validity\n" msgstr "" #: ../src/ca-cli-callbacks.c:545 ../src/ca-cli-callbacks.c:1160 #, c-format msgid "Validity:\n" msgstr "" #: ../src/ca-cli-callbacks.c:548 ../src/ca-cli-callbacks.c:1163 #, c-format msgid "\tActivated on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:552 ../src/ca-cli-callbacks.c:1167 #, c-format msgid "\tExpires on: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:558 msgid "" "You are about to create a new Certification Authority with these properties." msgstr "" #: ../src/ca-cli-callbacks.c:584 ../src/ca-cli-callbacks.c:632 #: ../src/ca-cli-callbacks.c:1137 msgid "The given certificate id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:591 ../src/ca-cli-callbacks.c:615 #, c-format msgid "Private key extracted successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:608 ../src/ca-cli-callbacks.c:760 #: ../src/ca-cli-callbacks.c:915 ../src/ca-cli-callbacks.c:1193 msgid "The given CSR id. is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:638 msgid "This certificate will be revoked." msgstr "" #: ../src/ca-cli-callbacks.c:644 #, c-format msgid "Certificate revoked.\n" msgstr "" #: ../src/ca-cli-callbacks.c:658 ../src/ca-cli-callbacks.c:1174 #, c-format msgid "Certificate uses:\n" msgstr "" #: ../src/ca-cli-callbacks.c:661 #, c-format msgid "* Certification Authority use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:663 #, c-format msgid "* Certification Authority use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:667 #, c-format msgid "* CRL signing use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:669 #, c-format msgid "* CRL signing use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:673 #, c-format msgid "* Digital Signature use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:675 #, c-format msgid "* Digital Signature use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:679 ../src/ca-cli-callbacks.c:681 #, c-format msgid "* Data Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:685 #, c-format msgid "* Key Encipherment use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:687 #, c-format msgid "* Key Encipherment use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:691 #, c-format msgid "* Non Repudiation use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:693 #, c-format msgid "* Non Repudiation use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:697 #, c-format msgid "* Key Agreement use enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:699 #, c-format msgid "* Key Agreement use disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:702 #, c-format msgid "Certificate purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:705 #, c-format msgid "* Email Protection purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:707 #, c-format msgid "* Email Protection purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:711 #, c-format msgid "* Code Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:713 #, c-format msgid "* Code Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:717 #, c-format msgid "* TLS Web Client purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:719 #, c-format msgid "* TLS Web Client purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:723 #, c-format msgid "* TLS Web Server purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:725 #, c-format msgid "* TLS Web Server purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:729 #, c-format msgid "* Time Stamping purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:731 #, c-format msgid "* Time Stamping purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:735 #, c-format msgid "* OCSP Signing purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:737 #, c-format msgid "* OCSP Signing purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:741 #, c-format msgid "* Any purpose enabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:743 #, c-format msgid "* Any purpose disabled.\n" msgstr "" #: ../src/ca-cli-callbacks.c:767 #, c-format msgid "You are about to sign the following Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:769 #, c-format msgid "with the certificate corresponding to the next CA:\n" msgstr "" #: ../src/ca-cli-callbacks.c:772 msgid "" "Introduce number of months before expiration of the new certificate (0 to " "cancel)" msgstr "" #: ../src/ca-cli-callbacks.c:782 #, c-format msgid "" "The certificate will be generated with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:800 ../src/ca-cli-callbacks.c:888 #, c-format msgid "" "The new certificate will be created with the following uses and purposes:\n" msgstr "" #: ../src/ca-cli-callbacks.c:803 msgid "Do you want to change any property of the new certificate? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:806 msgid "* Enable Certification Authority use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:808 #, c-format msgid "* Certification Authority use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:812 msgid "* Enable CRL Signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:814 #, c-format msgid "* CRL signing use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:818 msgid "* Enable Digital Signature use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:820 #, c-format msgid "* Digital Signature use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:824 msgid "Enable Data Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:826 #, c-format msgid "* Data Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:830 msgid "Enable Key Encipherment use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:832 #, c-format msgid "* Key Encipherment use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:836 msgid "Enable Non Repudiation use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:838 #, c-format msgid "* Non Repudiation use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:842 msgid "Enable Key Agreement use? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:844 #, c-format msgid "* Key Agreement use disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:848 msgid "Enable Email Protection purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:850 #, c-format msgid "* Email Protection purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:854 msgid "Enable Code Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:856 #, c-format msgid "* Code Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:860 msgid "Enable TLS Web Client purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:862 #, c-format msgid "* TLS Web Client purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:866 msgid "Enable TLS Web Server purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:868 #, c-format msgid "* TLS Web Server purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:872 msgid "Enable Time Stamping purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:874 #, c-format msgid "* Time Stamping purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:878 msgid "Enable OCSP Signing purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:879 #, c-format msgid "* OCSP Signing purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:883 msgid "Enable any purpose? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:885 #, c-format msgid "* Any purpose disabled by policy\n" msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "" "All the mandatory data for the certificate generation has been gathered." msgstr "" #: ../src/ca-cli-callbacks.c:893 msgid "Do you want to proceed with the signing? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:899 #, c-format msgid "Certificate signed.\n" msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This Certificate Signing Request will be deleted." msgstr "" #: ../src/ca-cli-callbacks.c:921 msgid "This operation cannot be undone. Are you sure? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:927 #, c-format msgid "Certificate Signing Request deleted.\n" msgstr "" #: ../src/ca-cli-callbacks.c:952 #, c-format msgid "CRL generated successfully into file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:969 msgid "The bit-length of the prime number must be whole multiple of 1024" msgstr "" #: ../src/ca-cli-callbacks.c:978 #, c-format msgid "" "Diffie-Hellman parameters created and saved successfully in file '%s'\n" msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Currently, the database is not password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:990 msgid "Do you want to password protect it? [Yes]/No " msgstr "" #: ../src/ca-cli-callbacks.c:991 msgid "" "OK. You need to supply a password for protecting the private keys in the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password:" msgstr "" #: ../src/ca-cli-callbacks.c:994 msgid "Insert password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:995 ../src/ca-cli-callbacks.c:1065 msgid "The introduced passwords are distinct." msgstr "" #: ../src/ca-cli-callbacks.c:1006 #, c-format msgid "Password established successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1013 #, c-format msgid "Nothing done.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Currently, the database IS password-protected." msgstr "" #: ../src/ca-cli-callbacks.c:1017 msgid "Do you want to remove this password protection? Yes/[No] " msgstr "" #: ../src/ca-cli-callbacks.c:1021 #, c-format msgid "" "For removing the password-protection, the current database password\n" "must be supplied.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1022 ../src/ca-cli-callbacks.c:1050 msgid "Please, insert the current database password (Empty to cancel): " msgstr "" #: ../src/ca-cli-callbacks.c:1029 ../src/ca-cli-callbacks.c:1057 msgid "" "The current password you have entered\n" "doesn't match with the actual current database password." msgstr "" #: ../src/ca-cli-callbacks.c:1034 msgid "" "Error while removing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1039 #, c-format msgid "Password removed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1049 #, c-format msgid "" "You must supply the current database password before changing the password.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1061 msgid "" "OK. Now you must supply a new password for protecting the private keys in " "the\n" "database, so nobody else but authorized people can use them. This password\n" "will be asked any time gnoMint will make use of any private key in database." msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password:" msgstr "" #: ../src/ca-cli-callbacks.c:1064 msgid "Insert new password (confirm):" msgstr "" #: ../src/ca-cli-callbacks.c:1073 msgid "" "Error while changing database password. \n" "The operation was cancelled." msgstr "" #: ../src/ca-cli-callbacks.c:1079 #, c-format msgid "Password changed successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1097 msgid "Problem when importing the given file." msgstr "" #: ../src/ca-cli-callbacks.c:1100 #, c-format msgid "File imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1116 #, c-format msgid "Directory imported successfully.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1145 #, c-format msgid "Certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1149 #, c-format msgid "\tSerial number: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1157 #: ../src/ca-cli-callbacks.c:1205 #, c-format msgid "\tDistinguished Name: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1153 ../src/ca-cli-callbacks.c:1154 #: ../src/ca-cli-callbacks.c:1157 ../src/ca-cli-callbacks.c:1158 msgid "None." msgstr "" #: ../src/ca-cli-callbacks.c:1154 ../src/ca-cli-callbacks.c:1158 #: ../src/ca-cli-callbacks.c:1207 #, c-format msgid "\tUnique ID: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1156 #, c-format msgid "Issuer:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1169 #, c-format msgid "Fingerprints:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1170 #, c-format msgid "\tSHA1 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1171 #, c-format msgid "\tMD5 fingerprint: %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1202 #, c-format msgid "Certificate Signing Request:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1275 msgid "Generated certs inherit Country from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1276 msgid "Generated certs inherit State from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1277 msgid "Generated certs inherit Locality from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1278 msgid "Generated certs inherit Organization from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1279 msgid "Generated certs inherit Organizational Unit from CA " msgstr "" #: ../src/ca-cli-callbacks.c:1280 msgid "Country in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1281 msgid "State in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1282 msgid "Locality in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1283 msgid "Organization in generated certs must be the same than in CA " msgstr "" #: ../src/ca-cli-callbacks.c:1284 msgid "Organizational Unit in generated certs must be the same than in CA" msgstr "" #: ../src/ca-cli-callbacks.c:1285 msgid "Maximum number of hours between CRL updates " msgstr "" #: ../src/ca-cli-callbacks.c:1286 msgid "Maximum number of months before expiration of new certs " msgstr "" #: ../src/ca-cli-callbacks.c:1287 msgid "CA use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1288 msgid "CRL Sign use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1289 msgid "Non reputation use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1290 msgid "Digital signature use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1291 msgid "Key encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1292 msgid "Key agreement use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1293 msgid "Data encipherment use enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1294 msgid "TLS web server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1295 msgid "TLS web client purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1296 msgid "Time stamping purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1297 msgid "Code signing server purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1298 msgid "Email protection purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1299 msgid "OCSP signing purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1300 msgid "Any purpose enabled in generated certs " msgstr "" #: ../src/ca-cli-callbacks.c:1314 #, c-format msgid "Showing policies of the following certificate:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1316 #, c-format msgid "" "\n" "Policies:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1318 #, c-format msgid "Id.\tDescription\t\t\t\t\t\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1344 msgid "The given policy id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1356 #, c-format msgid "" "You are about to assign to the policy\n" "'%s' the new value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1360 ../src/ca-cli-callbacks.c:1404 msgid "Are you sure? Yes/[No] : " msgstr "" #: ../src/ca-cli-callbacks.c:1365 #, c-format msgid "Policy set correctly to '%d'.\n" msgstr "" #: ../src/ca-cli-callbacks.c:1379 #, c-format msgid "gnoMint-cli current preferences:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1381 #, c-format msgid "Id.\tName\t\t\tValue\n" msgstr "" #: ../src/ca-cli-callbacks.c:1382 #, c-format msgid "0\tGnome keyring support\t%d\n" msgstr "" #: ../src/ca-cli-callbacks.c:1394 msgid "The given preference id is not valid" msgstr "" #: ../src/ca-cli-callbacks.c:1400 #, c-format msgid "" "You are about to assign to the preference 'Gnome keyring support' the new " "value '%d'." msgstr "" #: ../src/ca-cli-callbacks.c:1422 #, c-format msgid "" "%s version %s\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1423 #, c-format msgid "" "\n" "Authors:\n" "%s\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1424 ../src/ca-cli-callbacks.c:1425 #: ../src/main.c:502 msgid "translator-credits" msgstr "" "Launchpad Contributions:\n" " Ilkka Tuohela https://launchpad.net/~hile" #: ../src/ca-cli-callbacks.c:1425 #, c-format msgid "" "Translators:\n" "%s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1432 msgid "" "THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\n" "APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\n" "HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\n" "OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\n" "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n" "PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\n" "IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\n" "ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n" "\n" "For more information about warranty, see section 15 onwards of the GNU\n" "General Public License. You should have received a copy of the GNU General\n" "Public License along with this program. If not, see\n" ".\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1450 msgid "" "This program is free software: you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation, either version 3 of the License, or\n" "(at your option) any later version.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see .\n" "\n" msgstr "" #: ../src/ca-cli-callbacks.c:1465 #, c-format msgid "%s version %s\n" msgstr "" #: ../src/ca-cli-callbacks.c:1474 #, c-format msgid "Available commands:\n" msgstr "" #: ../src/ca-cli-callbacks.c:1475 #, c-format msgid "===================\n" msgstr "" #: ../src/ca-cli-callbacks.c:1485 #, c-format msgid "Exiting gnomint-cli...\n" msgstr "" #: ../src/ca_creation.c:53 ../src/csr_creation.c:55 msgid "Generating new RSA key pair" msgstr "" #: ../src/ca_creation.c:62 ../src/ca_creation.c:86 ../src/csr_creation.c:64 #: ../src/csr_creation.c:87 msgid "Key generation failed" msgstr "" #: ../src/ca_creation.c:76 ../src/csr_creation.c:77 msgid "Generating new DSA key pair" msgstr "" #: ../src/ca_creation.c:101 msgid "Generating self-signed CA-Root cert" msgstr "" #: ../src/ca_creation.c:109 msgid "Certificate generation failed" msgstr "" #: ../src/ca_creation.c:121 msgid "Creating CA database" msgstr "" #: ../src/ca_creation.c:130 msgid "CA database creation failed" msgstr "" #: ../src/ca_creation.c:144 msgid "CA generated successfully" msgstr "" #: ../src/ca_file.c:196 #, c-format msgid "Error opening filename '%s'" msgstr "" #: ../src/ca_file.c:299 msgid "" "The selected database has been created with a newer version of gnoMint than " "the currently installed." msgstr "" #: ../src/ca_file.c:1311 msgid "Cannot find parent CA in database" msgstr "" #: ../src/ca_file.c:1499 msgid "" "This certificate already exists in the database: cannot insert it twice." msgstr "" #: ../src/ca_file.c:1930 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "or certificate request in the database." msgstr "" #: ../src/ca_file.c:1933 msgid "" "The given file contains a valid private key. However, it has not been " "imported to the database because it doesn't match any key-less certificate " "in the database." msgstr "" #: ../src/certificate_properties.c:356 ../src/tls.c:1054 msgid "Certificate signing" msgstr "" #: ../src/certificate_properties.c:360 msgid "Key encipherment only" msgstr "" #: ../src/certificate_properties.c:362 msgid "Key decipherment only" msgstr "" #: ../src/certificate_properties.c:376 msgid "Version" msgstr "" #: ../src/certificate_properties.c:411 msgid "Serial Number" msgstr "" #: ../src/certificate_properties.c:427 ../src/certificate_properties.c:1060 msgid "Signature" msgstr "" #: ../src/certificate_properties.c:430 ../src/certificate_properties.c:558 #: ../src/certificate_properties.c:561 ../src/certificate_properties.c:1027 msgid "Algorithm" msgstr "" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:594 ../src/certificate_properties.c:622 #: ../src/certificate_properties.c:1030 msgid "Parameters" msgstr "" #: ../src/certificate_properties.c:433 ../src/certificate_properties.c:566 #: ../src/certificate_properties.c:622 ../src/certificate_properties.c:624 #: ../src/certificate_properties.c:635 ../src/certificate_properties.c:644 #: ../src/certificate_properties.c:1031 msgid "(unknown)" msgstr "" #: ../src/certificate_properties.c:465 msgid "Issuer" msgstr "" #: ../src/certificate_properties.c:493 msgid "Validity" msgstr "" #: ../src/certificate_properties.c:496 msgid "Not Before" msgstr "" #: ../src/certificate_properties.c:499 msgid "Not After" msgstr "" #: ../src/certificate_properties.c:555 msgid "Subject Public Key Info" msgstr "" #: ../src/certificate_properties.c:568 msgid "RSA PublicKey" msgstr "" #: ../src/certificate_properties.c:578 msgid "Modulus" msgstr "" #: ../src/certificate_properties.c:584 msgid "Public Exponent" msgstr "" #: ../src/certificate_properties.c:617 msgid "DSA PublicKey" msgstr "" #: ../src/certificate_properties.c:624 msgid "Subject Public Key" msgstr "" #: ../src/certificate_properties.c:635 msgid "Issuer Unique ID" msgstr "" #: ../src/certificate_properties.c:644 msgid "Subject Unique ID" msgstr "" #: ../src/certificate_properties.c:666 ../src/certificate_properties.c:689 #: ../src/certificate_properties.c:758 ../src/certificate_properties.c:862 #: ../src/certificate_properties.c:890 ../src/certificate_properties.c:930 #: ../src/certificate_properties.c:987 ../src/certificate_properties.c:1112 msgid "Value" msgstr "" #: ../src/certificate_properties.c:728 ../src/certificate_properties.c:832 msgid "DNS Name" msgstr "" #: ../src/certificate_properties.c:733 ../src/certificate_properties.c:837 msgid "RFC822 Name" msgstr "" #: ../src/certificate_properties.c:738 ../src/certificate_properties.c:842 msgid "URI" msgstr "" #: ../src/certificate_properties.c:744 msgid "IP" msgstr "" #: ../src/certificate_properties.c:751 ../src/certificate_properties.c:855 msgid "Directory Name" msgstr "" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "TRUE" msgstr "" #: ../src/certificate_properties.c:785 ../src/certificate_properties.c:970 msgid "FALSE" msgstr "" #: ../src/certificate_properties.c:790 msgid "CA" msgstr "" #: ../src/certificate_properties.c:794 msgid "Path Length Constraint" msgstr "" #: ../src/certificate_properties.c:848 msgid "IP Address" msgstr "" #: ../src/certificate_properties.c:963 msgid "Extensions" msgstr "" #: ../src/certificate_properties.c:972 msgid "Critical" msgstr "" #: ../src/certificate_properties.c:1000 msgid "Certificate" msgstr "" #: ../src/certificate_properties.c:1025 msgid "Signature Algorithm" msgstr "" #: ../src/certificate_properties.c:1108 msgid "Name" msgstr "" #: ../src/certificate_properties.c:1124 ../src/tls.c:1070 msgid "TLS WWW Server" msgstr "" #: ../src/certificate_properties.c:1125 msgid "TLS WWW Client" msgstr "" #: ../src/certificate_properties.c:1131 msgid "Subject Directory Attributes" msgstr "" #: ../src/certificate_properties.c:1132 msgid "Subject Key Identifier" msgstr "" #: ../src/certificate_properties.c:1133 msgid "Key Usage" msgstr "" #: ../src/certificate_properties.c:1134 msgid "Private Key Usage Period" msgstr "" #: ../src/certificate_properties.c:1135 msgid "Subject Alternative Name" msgstr "" #: ../src/certificate_properties.c:1136 msgid "Basic Constraints" msgstr "" #: ../src/certificate_properties.c:1137 msgid "Name Constraints" msgstr "" #: ../src/certificate_properties.c:1138 msgid "CRL Distribution Points" msgstr "" #: ../src/certificate_properties.c:1139 msgid "Certificate Policies" msgstr "" #: ../src/certificate_properties.c:1140 msgid "Policy Mappings" msgstr "" #: ../src/certificate_properties.c:1141 msgid "Authority Key Identifier" msgstr "" #: ../src/certificate_properties.c:1142 msgid "Policy Constraints" msgstr "" #: ../src/certificate_properties.c:1143 msgid "Extended Key Usage" msgstr "" #: ../src/certificate_properties.c:1144 msgid "Delta CRL Distribution Point" msgstr "" #: ../src/certificate_properties.c:1145 msgid "Inhibit Any-Policy" msgstr "" #: ../src/creation_process_window.c:79 msgid "CA creation process finished" msgstr "" #: ../src/creation_process_window.c:181 msgid "Creation process cancelled" msgstr "" #: ../src/creation_process_window.c:209 msgid "CSR creation process finished" msgstr "" #: ../src/creation_process_window.c:274 msgid "Creating Certificate Signing Request" msgstr "" #: ../src/crl.c:250 msgid "Export Certificate Revocation List" msgstr "" #: ../src/crl.c:280 msgid "CRL generated successfully" msgstr "" #: ../src/crl.c:309 ../src/crl.c:371 ../src/crl.c:382 msgid "There was an error while exporting CRL." msgstr "" #: ../src/crl.c:320 msgid "There was an error while getting revoked certificates." msgstr "" #: ../src/crl.c:336 ../src/crl.c:355 msgid "There was an error while generating CRL." msgstr "" #: ../src/crl.c:363 msgid "There was an error while writing CRL." msgstr "" #: ../src/csr_creation.c:101 msgid "Generating CSR" msgstr "" #: ../src/csr_creation.c:110 msgid "CSR generation failed" msgstr "" #: ../src/csr_creation.c:121 msgid "Saving CSR in database" msgstr "" #: ../src/csr_creation.c:139 msgid "CSR couldn't be saved" msgstr "" #: ../src/csr_creation.c:150 msgid "CSR generated successfully" msgstr "" #: ../src/csr_properties.c:78 msgid "" "This Certificate Signing Request has its corresponding private key saved " "in a external file." msgstr "" #: ../src/dialog.c:79 #, c-format msgid "" "\n" "The password must have, at least, %d characters\n" msgstr "" #: ../src/dialog.c:103 msgid "List of affirmative answers, separated with #|Yes#yes#Y#y" msgstr "" #: ../src/dialog.c:104 msgid "List of negative answers, separated with #|No#no#N#n" msgstr "" #: ../src/dialog.c:372 msgid "To do. Feature not implemented yet." msgstr "" #: ../src/export.c:40 ../src/export.c:45 ../src/export.c:50 msgid "There was an error while saving Diffie-Hellman parameters." msgstr "" #: ../src/export.c:73 ../src/export.c:124 ../src/export.c:132 #: ../src/export.c:152 ../src/export.c:180 ../src/export.c:188 msgid "There was an error while exporting private key." msgstr "" #: ../src/export.c:91 ../src/export.c:166 msgid "There was an error while getting private key." msgstr "" #: ../src/export.c:100 msgid "There was an error while uncrypting private key." msgstr "" #: ../src/export.c:103 msgid "" "You need to supply a passphrase for protecting the exported private key, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will make use of the private key." msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (8 characters or more):" msgstr "" #: ../src/export.c:106 ../src/export.c:236 msgid "Insert passphrase (confirm):" msgstr "" #: ../src/export.c:107 ../src/export.c:237 msgid "The introduced passphrases are distinct." msgstr "" #: ../src/export.c:110 msgid "Operation cancelled." msgstr "" #: ../src/export.c:118 msgid "There was an error while password-protecting private key." msgstr "" #: ../src/export.c:175 msgid "There was an error while decrypting private key." msgstr "" #: ../src/export.c:213 msgid "Unsupported operation: you cannot generate a PKCS#12 for a CSR." msgstr "" #: ../src/export.c:221 ../src/export.c:230 msgid "" "There was an error while getting the certificate and private key from the " "internal database." msgstr "" #: ../src/export.c:233 msgid "" "You need to supply a passphrase for protecting the exported certificate, so " "nobody else but authorized people can use it. This passphrase will be asked " "by any application that will import the certificate." msgstr "" #: ../src/export.c:255 msgid "There was an error while generating the PKCS#12 package." msgstr "" #: ../src/export.c:269 ../src/export.c:278 msgid "There was an error while exporting the certificate." msgstr "" #: ../src/gnomint-cli.c:56 msgid "- A Certification Authority manager" msgstr "" #: ../src/gnomint-cli.c:59 ../src/main.c:129 #, c-format msgid "Failed to initialize: %s\n" msgstr "" #: ../src/import.c:82 #, c-format msgid "" "The whole selected file, or some of its elements, seems to\n" "be cyphered using a password or passphrase. For importing\n" "the file into gnoMint database, you must provide an \n" "appropiate password.\n" msgstr "" #: ../src/import.c:87 #, c-format msgid "Please introduce password for `%s'" msgstr "" #: ../src/import.c:129 #, c-format msgid "" "Couldn't import the certificate request. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #: ../src/import.c:206 #, c-format msgid "" "Couldn't import the certificate. \n" "The database returned this error: \n" "\n" "'%s'" msgstr "" #. We launch a window for asking the password. #: ../src/import.c:562 ../src/import.c:748 msgid "PKCS#8 crypted private key" msgstr "" #: ../src/import.c:573 ../src/import.c:758 msgid "The given password doesn't match the one used for crypting this part" msgstr "" #: ../src/import.c:667 msgid "Encrypted PKCS#12 bag" msgstr "" #: ../src/import.c:684 msgid "" "The given password doesn't match with the password used for encrypting this " "part." msgstr "" #: ../src/import.c:895 msgid "Couldn't find any supported format in the given file" msgstr "" #: ../src/import.c:908 ../src/import.c:1259 #, c-format msgid "Couldn't open %s file. Check permissions." msgstr "" #: ../src/import.c:935 #, c-format msgid "Couldn't recognize the file %s as a RSA or DSA private key." msgstr "" #: ../src/import.c:951 #, c-format msgid "Private key for %s" msgstr "" #: ../src/import.c:953 #, c-format msgid "Private key %s" msgstr "" #: ../src/import.c:988 msgid "Problem while calling to openssl for decyphering private key." msgstr "" #: ../src/import.c:996 #, c-format msgid "" "OpenSSL has returned the following error while trying to decypher the " "private key:\n" "\n" "%s" msgstr "" #: ../src/import.c:1107 msgid "There was a problem while importing the public CA root certificate" msgstr "" #: ../src/import.c:1121 msgid "CA Root certificate" msgstr "" #: ../src/import.c:1123 msgid "" "There was a problem while importing the private key corresponding to CA root " "certificate" msgstr "" #: ../src/import.c:1133 msgid "There was a problem while opening the directory certs/." msgstr "" #: ../src/import.c:1157 msgid "There was a problem while opening the directory newcerts/." msgstr "" #: ../src/import.c:1184 msgid "There was a problem while opening the directory req." msgstr "" #: ../src/import.c:1210 msgid "There was a problem while opening the directory crl/." msgstr "" #: ../src/import.c:1232 msgid "There was a problem while opening the directory keys/." msgstr "" #: ../src/import.c:1290 msgid "Files in the directory don't belong to any supported CA format." msgstr "" #: ../src/main.c:126 msgid "- A graphical Certification Authority manager" msgstr "" #: ../src/main.c:285 msgid "Create new CA database" msgstr "" #: ../src/main.c:323 #, c-format msgid "" "Problem when creating '%s' CA database:\n" "%s" msgstr "" #: ../src/main.c:336 #, c-format msgid "Problem when opening new '%s' CA database" msgstr "" #: ../src/main.c:357 msgid "Open CA database" msgstr "" #: ../src/main.c:380 ../src/main.c:420 #, c-format msgid "Problem when opening '%s' CA database" msgstr "" #: ../src/main.c:445 msgid "Save CA database as..." msgstr "" #: ../src/main.c:497 msgid "" "gnoMint is a program for creating and managing Certification Authorities, " "and their certificates" msgstr "" #: ../src/main.c:498 msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the GNU General Public License as published by the Free " "Software Foundation; either version 3 of the License, or (at your option) " "any later version.\n" "\n" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for " "more details. \n" "\n" "You should have received a copy of the GNU General Public License along with " "this program; if not, write to the Free Software Foundation, Inc., 51 " "Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA." msgstr "" #: ../src/new_cert.c:329 msgid "" "The policy of this CA obligue the country field of the certificates to be " "the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:335 msgid "" "The policy of this CA obligue the state/province field of the certificates " "to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:341 msgid "" "The policy of this CA obligue the locality/city field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:347 msgid "" "The policy of this CA obligue the organization field of the certificates to " "be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:353 msgid "" "The policy of this CA obligue the organizational unit field of the " "certificates to be the same as the one in the CA cert." msgstr "" #: ../src/new_cert.c:799 msgid "" "The expiration date of the new certificate is after the expiration date of " "the CA certificate.\n" "\n" "According to the current standards, this is not allowed. The new certificate " "will be created with the same expiration date as the CA certificate." msgstr "" #: ../src/new_cert.c:815 msgid "Error while signing CSR." msgstr "" #: ../src/pkey_manage.c:80 #, c-format msgid "" "The file that holds private key for certificate '%s' is password-protected.\n" "\n" "Please, insert the password corresponding to this file." msgstr "" #: ../src/pkey_manage.c:125 #, c-format msgid "" "The file that holds private key for certificate\n" "'%s' is password-protected.\n" "\n" msgstr "" #: ../src/pkey_manage.c:171 msgid "" "The given password doesn't match with the one used while crypting the file." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:187 msgid "" "The file designated in database contains a private key, but it is not the " "private key corresponding to the certificate." msgstr "" #. The file could be opened, but it didn't contain any recognized private key #: ../src/pkey_manage.c:191 msgid "" "The file designated in database doesn't contain any recognized private key." msgstr "" #. The file cannot be opened #: ../src/pkey_manage.c:196 msgid "The file designated in database couldn't be opened." msgstr "" #. The file doesn't exist #: ../src/pkey_manage.c:201 msgid "The file designated in database doesn't exist." msgstr "" #: ../src/pkey_manage.c:760 ../src/pkey_manage.c:811 msgid "The given password doesn't match the one used in the database" msgstr "" #: ../src/pkey_manage.c:798 #, c-format msgid "" "This action requires using one or more private keys saved in the database.\n" msgstr "" #: ../src/pkey_manage.c:799 msgid "Please insert the database password:" msgstr "" #: ../src/tls.c:43 ../src/tls.c:77 #, c-format msgid "Error initializing private key structure." msgstr "" #: ../src/tls.c:49 ../src/tls.c:83 #, c-format msgid "Error creating private key: %d" msgstr "" #: ../src/tls.c:61 ../src/tls.c:95 ../src/tls.c:553 ../src/tls.c:855 #, c-format msgid "Error exporting private key to PEM structure." msgstr "" #: ../src/tls.c:435 #, c-format msgid "Error when initializing certificate structure" msgstr "" #: ../src/tls.c:441 ../src/tls.c:689 #, c-format msgid "Error when setting certificate version" msgstr "" #: ../src/tls.c:451 ../src/tls.c:702 #, c-format msgid "Error when setting certificate serial number" msgstr "" #: ../src/tls.c:460 ../src/tls.c:711 #, c-format msgid "Error when setting activation time" msgstr "" #: ../src/tls.c:465 ../src/tls.c:719 #, c-format msgid "Error when setting expiration time" msgstr "" #: ../src/tls.c:511 ../src/tls.c:768 #, c-format msgid "Error when setting basicConstraint extension" msgstr "" #: ../src/tls.c:516 ../src/tls.c:810 #, c-format msgid "Error when setting keyUsage extension" msgstr "" #: ../src/tls.c:527 ../src/tls.c:784 #, c-format msgid "Error when setting subject key identifier extension" msgstr "" #: ../src/tls.c:531 ../src/tls.c:758 #, c-format msgid "Error when setting authority key identifier extension" msgstr "" #: ../src/tls.c:541 #, c-format msgid "Error when signing self-signed certificate" msgstr "" #: ../src/tls.c:571 #, c-format msgid "Error when initializing csr structure" msgstr "" #: ../src/tls.c:575 #, c-format msgid "Error when setting csr version" msgstr "Virhe asetettaessa CSR-versiota" #: ../src/tls.c:608 #, c-format msgid "Error when signing self-signed csr" msgstr "Virhe allekirjoitettaessa itseallekirjoitettua CSR:ää" #: ../src/tls.c:619 #, c-format msgid "Error exporting CSR to PEM structure." msgstr "Virhe vietäessä CSR:ää PEM-rakenteeseen." #: ../src/tls.c:673 #, c-format msgid "Error when initializing crt structure" msgstr "Virhe alustettaessa CRT-rakennetta" #: ../src/tls.c:681 #, c-format msgid "Error when copying data from CSR to certificate structure" msgstr "Virhe kopioitaessa tietoja CSR:stä varmennerakenteeseen" #: ../src/tls.c:840 #, c-format msgid "Error when signing certificate" msgstr "Virhe allekirjoitettaessa varmennetta" #: ../src/tls.c:1058 msgid "Key encipher only" msgstr "Avain vain salaukseen" #: ../src/tls.c:1060 msgid "Key decipher only" msgstr "Avain vain salauksen purkuun" #: ../src/tls.c:1072 msgid "TLS WWW Client." msgstr "TLS WWW-asiakas" gnomint-1.3.0/gnomint.spec0000664000175000017500000000052412672104243012442 00000000000000Vendor: David Marín Carreño Name: gnomint Version: 1.3.0 Release: 1 %description Certification Authority management made easy. gnoMint is a x509 Certification Authority management tool for GTK/Gnome environments. Summary: Graphical x509 Certification Authority management tool Copyright: GPL URL: @PACKAGE_WEBSITE@ gnomint-1.3.0/missing0000755000175000017500000001533012672052510011510 00000000000000#! /bin/sh # Common wrapper for a few potentially missing GNU programs. scriptversion=2013-10-28.13; # UTC # Copyright (C) 1996-2014 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then echo 1>&2 "Try '$0 --help' for more information" exit 1 fi case $1 in --is-lightweight) # Used by our autoconf macros to check whether the available missing # script is modern enough. exit 0 ;; --run) # Back-compat with the calling convention used by older automake. shift ;; -h|--h|--he|--hel|--help) echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due to PROGRAM being missing or too old. Options: -h, --help display this help and exit -v, --version output version information and exit Supported PROGRAM values: aclocal autoconf autoheader autom4te automake makeinfo bison yacc flex lex help2man Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and 'g' are ignored when checking the name. Send bug reports to ." exit $? ;; -v|--v|--ve|--ver|--vers|--versi|--versio|--version) echo "missing $scriptversion (GNU Automake)" exit $? ;; -*) echo 1>&2 "$0: unknown '$1' option" echo 1>&2 "Try '$0 --help' for more information" exit 1 ;; esac # Run the given program, remember its exit status. "$@"; st=$? # If it succeeded, we are done. test $st -eq 0 && exit 0 # Also exit now if we it failed (or wasn't found), and '--version' was # passed; such an option is passed most likely to detect whether the # program is present and works. case $2 in --version|--help) exit $st;; esac # Exit code 63 means version mismatch. This often happens when the user # tries to use an ancient version of a tool on a file that requires a # minimum version. if test $st -eq 63; then msg="probably too old" elif test $st -eq 127; then # Program was missing. msg="missing on your system" else # Program was found and executed, but failed. Give up. exit $st fi perl_URL=http://www.perl.org/ flex_URL=http://flex.sourceforge.net/ gnu_software_URL=http://www.gnu.org/software program_details () { case $1 in aclocal|automake) echo "The '$1' program is part of the GNU Automake package:" echo "<$gnu_software_URL/automake>" echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" echo "<$gnu_software_URL/autoconf>" echo "<$gnu_software_URL/m4/>" echo "<$perl_URL>" ;; autoconf|autom4te|autoheader) echo "The '$1' program is part of the GNU Autoconf package:" echo "<$gnu_software_URL/autoconf/>" echo "It also requires GNU m4 and Perl in order to run:" echo "<$gnu_software_URL/m4/>" echo "<$perl_URL>" ;; esac } give_advice () { # Normalize program name to check for. normalized_program=`echo "$1" | sed ' s/^gnu-//; t s/^gnu//; t s/^g//; t'` printf '%s\n' "'$1' is $msg." configure_deps="'configure.ac' or m4 files included by 'configure.ac'" case $normalized_program in autoconf*) echo "You should only need it if you modified 'configure.ac'," echo "or m4 files included by it." program_details 'autoconf' ;; autoheader*) echo "You should only need it if you modified 'acconfig.h' or" echo "$configure_deps." program_details 'autoheader' ;; automake*) echo "You should only need it if you modified 'Makefile.am' or" echo "$configure_deps." program_details 'automake' ;; aclocal*) echo "You should only need it if you modified 'acinclude.m4' or" echo "$configure_deps." program_details 'aclocal' ;; autom4te*) echo "You might have modified some maintainer files that require" echo "the 'autom4te' program to be rebuilt." program_details 'autom4te' ;; bison*|yacc*) echo "You should only need it if you modified a '.y' file." echo "You may want to install the GNU Bison package:" echo "<$gnu_software_URL/bison/>" ;; lex*|flex*) echo "You should only need it if you modified a '.l' file." echo "You may want to install the Fast Lexical Analyzer package:" echo "<$flex_URL>" ;; help2man*) echo "You should only need it if you modified a dependency" \ "of a man page." echo "You may want to install the GNU Help2man package:" echo "<$gnu_software_URL/help2man/>" ;; makeinfo*) echo "You should only need it if you modified a '.texi' file, or" echo "any other file indirectly affecting the aspect of the manual." echo "You might want to install the Texinfo package:" echo "<$gnu_software_URL/texinfo/>" echo "The spurious makeinfo call might also be the consequence of" echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" echo "want to install GNU make:" echo "<$gnu_software_URL/make/>" ;; *) echo "You might have modified some files without having the proper" echo "tools for further handling them. Check the 'README' file, it" echo "often tells you about the needed prerequisites for installing" echo "this package. You may also peek at any GNU archive site, in" echo "case some other package contains this missing '$1' program." ;; esac } give_advice "$1" | sed -e '1s/^/WARNING: /' \ -e '2,$s/^/ /' >&2 # Propagate the correct exit status (expected to be 127 for a program # not found, 63 for a program that failed due to version mismatch). exit $st # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: gnomint-1.3.0/m4/0000775000175000017500000000000012672104243010512 500000000000000gnomint-1.3.0/m4/libtool.m40000644000175000017500000106011112672052505012341 00000000000000# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2008, 2009, 2010, 2011 Free Software # Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. m4_define([_LT_COPYING], [dnl # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, # 2006, 2007, 2008, 2009, 2010, 2011 Free Software # Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is part of GNU Libtool. # # GNU Libtool is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation; either version 2 of # the License, or (at your option) any later version. # # As a special exception to the GNU General Public License, # if you distribute this file as part of a program or library that # is built using GNU Libtool, you may include this file under the # same distribution terms that you use for the rest of that program. # # GNU Libtool is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Libtool; see the file COPYING. If not, a copy # can be downloaded from http://www.gnu.org/licenses/gpl.html, or # obtained by writing to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ]) # serial 57 LT_INIT # LT_PREREQ(VERSION) # ------------------ # Complain and exit if this libtool version is less that VERSION. m4_defun([LT_PREREQ], [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, [m4_default([$3], [m4_fatal([Libtool version $1 or higher is required], 63)])], [$2])]) # _LT_CHECK_BUILDDIR # ------------------ # Complain if the absolute build directory name contains unusual characters m4_defun([_LT_CHECK_BUILDDIR], [case `pwd` in *\ * | *\ *) AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; esac ]) # LT_INIT([OPTIONS]) # ------------------ AC_DEFUN([LT_INIT], [AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl AC_BEFORE([$0], [LT_LANG])dnl AC_BEFORE([$0], [LT_OUTPUT])dnl AC_BEFORE([$0], [LTDL_INIT])dnl m4_require([_LT_CHECK_BUILDDIR])dnl dnl Autoconf doesn't catch unexpanded LT_ macros by default: m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 dnl unless we require an AC_DEFUNed macro: AC_REQUIRE([LTOPTIONS_VERSION])dnl AC_REQUIRE([LTSUGAR_VERSION])dnl AC_REQUIRE([LTVERSION_VERSION])dnl AC_REQUIRE([LTOBSOLETE_VERSION])dnl m4_require([_LT_PROG_LTMAIN])dnl _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}]) dnl Parse OPTIONS _LT_SET_OPTIONS([$0], [$1]) # This can be used to rebuild libtool when needed LIBTOOL_DEPS="$ltmain" # Always use our own libtool. LIBTOOL='$(SHELL) $(top_builddir)/libtool' AC_SUBST(LIBTOOL)dnl _LT_SETUP # Only expand once: m4_define([LT_INIT]) ])# LT_INIT # Old names: AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_PROG_LIBTOOL], []) dnl AC_DEFUN([AM_PROG_LIBTOOL], []) # _LT_CC_BASENAME(CC) # ------------------- # Calculate cc_basename. Skip known compiler wrappers and cross-prefix. m4_defun([_LT_CC_BASENAME], [for cc_temp in $1""; do case $cc_temp in compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; \-*) ;; *) break;; esac done cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` ]) # _LT_FILEUTILS_DEFAULTS # ---------------------- # It is okay to use these file commands and assume they have been set # sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'. m4_defun([_LT_FILEUTILS_DEFAULTS], [: ${CP="cp -f"} : ${MV="mv -f"} : ${RM="rm -f"} ])# _LT_FILEUTILS_DEFAULTS # _LT_SETUP # --------- m4_defun([_LT_SETUP], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl _LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl dnl _LT_DECL([], [host_alias], [0], [The host system])dnl _LT_DECL([], [host], [0])dnl _LT_DECL([], [host_os], [0])dnl dnl _LT_DECL([], [build_alias], [0], [The build system])dnl _LT_DECL([], [build], [0])dnl _LT_DECL([], [build_os], [0])dnl dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([LT_PATH_LD])dnl AC_REQUIRE([LT_PATH_NM])dnl dnl AC_REQUIRE([AC_PROG_LN_S])dnl test -z "$LN_S" && LN_S="ln -s" _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl dnl AC_REQUIRE([LT_CMD_MAX_LEN])dnl _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_CHECK_SHELL_FEATURES])dnl m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl m4_require([_LT_CMD_RELOAD])dnl m4_require([_LT_CHECK_MAGIC_METHOD])dnl m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl m4_require([_LT_CMD_OLD_ARCHIVE])dnl m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl m4_require([_LT_WITH_SYSROOT])dnl _LT_CONFIG_LIBTOOL_INIT([ # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes INIT. if test -n "\${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi ]) if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi _LT_CHECK_OBJDIR m4_require([_LT_TAG_COMPILER])dnl case $host_os in aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi ;; esac # Global variables: ofile=libtool can_build_shared=yes # All known linkers require a `.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a with_gnu_ld="$lt_cv_prog_gnu_ld" old_CC="$CC" old_CFLAGS="$CFLAGS" # Set sane defaults for various variables test -z "$CC" && CC=cc test -z "$LTCC" && LTCC=$CC test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o _LT_CC_BASENAME([$compiler]) # Only perform the check for file, if the check method requires it test -z "$MAGIC_CMD" && MAGIC_CMD=file case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then _LT_PATH_MAGIC fi ;; esac # Use C for the default configuration in the libtool script LT_SUPPORTED_TAG([CC]) _LT_LANG_C_CONFIG _LT_LANG_DEFAULT_CONFIG _LT_CONFIG_COMMANDS ])# _LT_SETUP # _LT_PREPARE_SED_QUOTE_VARS # -------------------------- # Define a few sed substitution that help us do robust quoting. m4_defun([_LT_PREPARE_SED_QUOTE_VARS], [# Backslashify metacharacters that are still active within # double-quoted strings. sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' # Same as above, but do not quote variable references. double_quote_subst='s/\([["`\\]]\)/\\\1/g' # Sed substitution to delay expansion of an escaped shell variable in a # double_quote_subst'ed string. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' # Sed substitution to delay expansion of an escaped single quote. delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' # Sed substitution to avoid accidental globbing in evaled expressions no_glob_subst='s/\*/\\\*/g' ]) # _LT_PROG_LTMAIN # --------------- # Note that this code is called both from `configure', and `config.status' # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, # `config.status' has no value for ac_aux_dir unless we are using Automake, # so we pass a copy along to make sure it has a sensible value anyway. m4_defun([_LT_PROG_LTMAIN], [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) ltmain="$ac_aux_dir/ltmain.sh" ])# _LT_PROG_LTMAIN ## ------------------------------------- ## ## Accumulate code for creating libtool. ## ## ------------------------------------- ## # So that we can recreate a full libtool script including additional # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS # in macros and then make a single call at the end using the `libtool' # label. # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) # ---------------------------------------- # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. m4_define([_LT_CONFIG_LIBTOOL_INIT], [m4_ifval([$1], [m4_append([_LT_OUTPUT_LIBTOOL_INIT], [$1 ])])]) # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_INIT]) # _LT_CONFIG_LIBTOOL([COMMANDS]) # ------------------------------ # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. m4_define([_LT_CONFIG_LIBTOOL], [m4_ifval([$1], [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], [$1 ])])]) # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) # ----------------------------------------------------- m4_defun([_LT_CONFIG_SAVE_COMMANDS], [_LT_CONFIG_LIBTOOL([$1]) _LT_CONFIG_LIBTOOL_INIT([$2]) ]) # _LT_FORMAT_COMMENT([COMMENT]) # ----------------------------- # Add leading comment marks to the start of each line, and a trailing # full-stop to the whole comment if one is not present already. m4_define([_LT_FORMAT_COMMENT], [m4_ifval([$1], [ m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) )]) ## ------------------------ ## ## FIXME: Eliminate VARNAME ## ## ------------------------ ## # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) # ------------------------------------------------------------------- # CONFIGNAME is the name given to the value in the libtool script. # VARNAME is the (base) name used in the configure script. # VALUE may be 0, 1 or 2 for a computed quote escaped value based on # VARNAME. Any other value will be used directly. m4_define([_LT_DECL], [lt_if_append_uniq([lt_decl_varnames], [$2], [, ], [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], [m4_ifval([$1], [$1], [$2])]) lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) m4_ifval([$4], [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) lt_dict_add_subkey([lt_decl_dict], [$2], [tagged?], [m4_ifval([$5], [yes], [no])])]) ]) # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) # -------------------------------------------------------- m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) # ------------------------------------------------ m4_define([lt_decl_tag_varnames], [_lt_decl_filter([tagged?], [yes], $@)]) # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) # --------------------------------------------------------- m4_define([_lt_decl_filter], [m4_case([$#], [0], [m4_fatal([$0: too few arguments: $#])], [1], [m4_fatal([$0: too few arguments: $#: $1])], [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], [lt_dict_filter([lt_decl_dict], $@)])[]dnl ]) # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) # -------------------------------------------------- m4_define([lt_decl_quote_varnames], [_lt_decl_filter([value], [1], $@)]) # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) # --------------------------------------------------- m4_define([lt_decl_dquote_varnames], [_lt_decl_filter([value], [2], $@)]) # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) # --------------------------------------------------- m4_define([lt_decl_varnames_tagged], [m4_assert([$# <= 2])dnl _$0(m4_quote(m4_default([$1], [[, ]])), m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) m4_define([_lt_decl_varnames_tagged], [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) # lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) # ------------------------------------------------ m4_define([lt_decl_all_varnames], [_$0(m4_quote(m4_default([$1], [[, ]])), m4_if([$2], [], m4_quote(lt_decl_varnames), m4_quote(m4_shift($@))))[]dnl ]) m4_define([_lt_decl_all_varnames], [lt_join($@, lt_decl_varnames_tagged([$1], lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl ]) # _LT_CONFIG_STATUS_DECLARE([VARNAME]) # ------------------------------------ # Quote a variable value, and forward it to `config.status' so that its # declaration there will have the same value as in `configure'. VARNAME # must have a single quote delimited value for this to work. m4_define([_LT_CONFIG_STATUS_DECLARE], [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`']) # _LT_CONFIG_STATUS_DECLARATIONS # ------------------------------ # We delimit libtool config variables with single quotes, so when # we write them to config.status, we have to be sure to quote all # embedded single quotes properly. In configure, this macro expands # each variable declared with _LT_DECL (and _LT_TAGDECL) into: # # ='`$ECHO "$" | $SED "$delay_single_quote_subst"`' m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) # _LT_LIBTOOL_TAGS # ---------------- # Output comment and list of tags supported by the script m4_defun([_LT_LIBTOOL_TAGS], [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl available_tags="_LT_TAGS"dnl ]) # _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) # ----------------------------------- # Extract the dictionary values for VARNAME (optionally with TAG) and # expand to a commented shell variable setting: # # # Some comment about what VAR is for. # visible_name=$lt_internal_name m4_define([_LT_LIBTOOL_DECLARE], [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [description])))[]dnl m4_pushdef([_libtool_name], m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), [0], [_libtool_name=[$]$1], [1], [_libtool_name=$lt_[]$1], [2], [_libtool_name=$lt_[]$1], [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl ]) # _LT_LIBTOOL_CONFIG_VARS # ----------------------- # Produce commented declarations of non-tagged libtool config variables # suitable for insertion in the LIBTOOL CONFIG section of the `libtool' # script. Tagged libtool config variables (even for the LIBTOOL CONFIG # section) are produced by _LT_LIBTOOL_TAG_VARS. m4_defun([_LT_LIBTOOL_CONFIG_VARS], [m4_foreach([_lt_var], m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) # _LT_LIBTOOL_TAG_VARS(TAG) # ------------------------- m4_define([_LT_LIBTOOL_TAG_VARS], [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) # _LT_TAGVAR(VARNAME, [TAGNAME]) # ------------------------------ m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) # _LT_CONFIG_COMMANDS # ------------------- # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of # variables for single and double quote escaping we saved from calls # to _LT_DECL, we can put quote escaped variables declarations # into `config.status', and then the shell code to quote escape them in # for loops in `config.status'. Finally, any additional code accumulated # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. m4_defun([_LT_CONFIG_COMMANDS], [AC_PROVIDE_IFELSE([LT_OUTPUT], dnl If the libtool generation code has been placed in $CONFIG_LT, dnl instead of duplicating it all over again into config.status, dnl then we will have config.status run $CONFIG_LT later, so it dnl needs to know what name is stored there: [AC_CONFIG_COMMANDS([libtool], [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], dnl If the libtool generation code is destined for config.status, dnl expand the accumulated commands and init code now: [AC_CONFIG_COMMANDS([libtool], [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) ])#_LT_CONFIG_COMMANDS # Initialize. m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], [ # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH sed_quote_subst='$sed_quote_subst' double_quote_subst='$double_quote_subst' delay_variable_subst='$delay_variable_subst' _LT_CONFIG_STATUS_DECLARATIONS LTCC='$LTCC' LTCFLAGS='$LTCFLAGS' compiler='$compiler_DEFAULT' # A function that is used when there is no print builtin or printf. func_fallback_echo () { eval 'cat <<_LTECHO_EOF \$[]1 _LTECHO_EOF' } # Quote evaled strings. for var in lt_decl_all_varnames([[ \ ]], lt_decl_quote_varnames); do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[[\\\\\\\`\\"\\\$]]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done # Double-quote double-evaled strings. for var in lt_decl_all_varnames([[ \ ]], lt_decl_dquote_varnames); do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[[\\\\\\\`\\"\\\$]]*) eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" ;; esac done _LT_OUTPUT_LIBTOOL_INIT ]) # _LT_GENERATED_FILE_INIT(FILE, [COMMENT]) # ------------------------------------ # Generate a child script FILE with all initialization necessary to # reuse the environment learned by the parent script, and make the # file executable. If COMMENT is supplied, it is inserted after the # `#!' sequence but before initialization text begins. After this # macro, additional text can be appended to FILE to form the body of # the child script. The macro ends with non-zero status if the # file could not be fully written (such as if the disk is full). m4_ifdef([AS_INIT_GENERATED], [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])], [m4_defun([_LT_GENERATED_FILE_INIT], [m4_require([AS_PREPARE])]dnl [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl [lt_write_fail=0 cat >$1 <<_ASEOF || lt_write_fail=1 #! $SHELL # Generated by $as_me. $2 SHELL=\${CONFIG_SHELL-$SHELL} export SHELL _ASEOF cat >>$1 <<\_ASEOF || lt_write_fail=1 AS_SHELL_SANITIZE _AS_PREPARE exec AS_MESSAGE_FD>&1 _ASEOF test $lt_write_fail = 0 && chmod +x $1[]dnl m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT # LT_OUTPUT # --------- # This macro allows early generation of the libtool script (before # AC_OUTPUT is called), incase it is used in configure for compilation # tests. AC_DEFUN([LT_OUTPUT], [: ${CONFIG_LT=./config.lt} AC_MSG_NOTICE([creating $CONFIG_LT]) _LT_GENERATED_FILE_INIT(["$CONFIG_LT"], [# Run this file to recreate a libtool stub with the current configuration.]) cat >>"$CONFIG_LT" <<\_LTEOF lt_cl_silent=false exec AS_MESSAGE_LOG_FD>>config.log { echo AS_BOX([Running $as_me.]) } >&AS_MESSAGE_LOG_FD lt_cl_help="\ \`$as_me' creates a local libtool stub from the current configuration, for use in further configure time tests before the real libtool is generated. Usage: $[0] [[OPTIONS]] -h, --help print this help, then exit -V, --version print version number, then exit -q, --quiet do not print progress messages -d, --debug don't remove temporary files Report bugs to ." lt_cl_version="\ m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) configured by $[0], generated by m4_PACKAGE_STRING. Copyright (C) 2011 Free Software Foundation, Inc. This config.lt script is free software; the Free Software Foundation gives unlimited permision to copy, distribute and modify it." while test $[#] != 0 do case $[1] in --version | --v* | -V ) echo "$lt_cl_version"; exit 0 ;; --help | --h* | -h ) echo "$lt_cl_help"; exit 0 ;; --debug | --d* | -d ) debug=: ;; --quiet | --q* | --silent | --s* | -q ) lt_cl_silent=: ;; -*) AC_MSG_ERROR([unrecognized option: $[1] Try \`$[0] --help' for more information.]) ;; *) AC_MSG_ERROR([unrecognized argument: $[1] Try \`$[0] --help' for more information.]) ;; esac shift done if $lt_cl_silent; then exec AS_MESSAGE_FD>/dev/null fi _LTEOF cat >>"$CONFIG_LT" <<_LTEOF _LT_OUTPUT_LIBTOOL_COMMANDS_INIT _LTEOF cat >>"$CONFIG_LT" <<\_LTEOF AC_MSG_NOTICE([creating $ofile]) _LT_OUTPUT_LIBTOOL_COMMANDS AS_EXIT(0) _LTEOF chmod +x "$CONFIG_LT" # configure is writing to config.log, but config.lt does its own redirection, # appending to config.log, which fails on DOS, as config.log is still kept # open by configure. Here we exec the FD to /dev/null, effectively closing # config.log, so it can be properly (re)opened and appended to by config.lt. lt_cl_success=: test "$silent" = yes && lt_config_lt_args="$lt_config_lt_args --quiet" exec AS_MESSAGE_LOG_FD>/dev/null $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false exec AS_MESSAGE_LOG_FD>>config.log $lt_cl_success || AS_EXIT(1) ])# LT_OUTPUT # _LT_CONFIG(TAG) # --------------- # If TAG is the built-in tag, create an initial libtool script with a # default configuration from the untagged config vars. Otherwise add code # to config.status for appending the configuration named by TAG from the # matching tagged config vars. m4_defun([_LT_CONFIG], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl _LT_CONFIG_SAVE_COMMANDS([ m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl m4_if(_LT_TAG, [C], [ # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes. if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi cfgfile="${ofile}T" trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. # Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # _LT_COPYING _LT_LIBTOOL_TAGS # ### BEGIN LIBTOOL CONFIG _LT_LIBTOOL_CONFIG_VARS _LT_LIBTOOL_TAG_VARS # ### END LIBTOOL CONFIG _LT_EOF case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi _LT_EOF ;; esac _LT_PROG_LTMAIN # We use sed instead of cat because bash on DJGPP gets confused if # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? sed '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) _LT_PROG_REPLACE_SHELLFNS mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" ], [cat <<_LT_EOF >> "$ofile" dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded dnl in a comment (ie after a #). # ### BEGIN LIBTOOL TAG CONFIG: $1 _LT_LIBTOOL_TAG_VARS(_LT_TAG) # ### END LIBTOOL TAG CONFIG: $1 _LT_EOF ])dnl /m4_if ], [m4_if([$1], [], [ PACKAGE='$PACKAGE' VERSION='$VERSION' TIMESTAMP='$TIMESTAMP' RM='$RM' ofile='$ofile'], []) ])dnl /_LT_CONFIG_SAVE_COMMANDS ])# _LT_CONFIG # LT_SUPPORTED_TAG(TAG) # --------------------- # Trace this macro to discover what tags are supported by the libtool # --tag option, using: # autoconf --trace 'LT_SUPPORTED_TAG:$1' AC_DEFUN([LT_SUPPORTED_TAG], []) # C support is built-in for now m4_define([_LT_LANG_C_enabled], []) m4_define([_LT_TAGS], []) # LT_LANG(LANG) # ------------- # Enable libtool support for the given language if not already enabled. AC_DEFUN([LT_LANG], [AC_BEFORE([$0], [LT_OUTPUT])dnl m4_case([$1], [C], [_LT_LANG(C)], [C++], [_LT_LANG(CXX)], [Go], [_LT_LANG(GO)], [Java], [_LT_LANG(GCJ)], [Fortran 77], [_LT_LANG(F77)], [Fortran], [_LT_LANG(FC)], [Windows Resource], [_LT_LANG(RC)], [m4_ifdef([_LT_LANG_]$1[_CONFIG], [_LT_LANG($1)], [m4_fatal([$0: unsupported language: "$1"])])])dnl ])# LT_LANG # _LT_LANG(LANGNAME) # ------------------ m4_defun([_LT_LANG], [m4_ifdef([_LT_LANG_]$1[_enabled], [], [LT_SUPPORTED_TAG([$1])dnl m4_append([_LT_TAGS], [$1 ])dnl m4_define([_LT_LANG_]$1[_enabled], [])dnl _LT_LANG_$1_CONFIG($1)])dnl ])# _LT_LANG m4_ifndef([AC_PROG_GO], [ ############################################################ # NOTE: This macro has been submitted for inclusion into # # GNU Autoconf as AC_PROG_GO. When it is available in # # a released version of Autoconf we should remove this # # macro and use it instead. # ############################################################ m4_defun([AC_PROG_GO], [AC_LANG_PUSH(Go)dnl AC_ARG_VAR([GOC], [Go compiler command])dnl AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl _AC_ARG_VAR_LDFLAGS()dnl AC_CHECK_TOOL(GOC, gccgo) if test -z "$GOC"; then if test -n "$ac_tool_prefix"; then AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo]) fi fi if test -z "$GOC"; then AC_CHECK_PROG(GOC, gccgo, gccgo, false) fi ])#m4_defun ])#m4_ifndef # _LT_LANG_DEFAULT_CONFIG # ----------------------- m4_defun([_LT_LANG_DEFAULT_CONFIG], [AC_PROVIDE_IFELSE([AC_PROG_CXX], [LT_LANG(CXX)], [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) AC_PROVIDE_IFELSE([AC_PROG_F77], [LT_LANG(F77)], [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) AC_PROVIDE_IFELSE([AC_PROG_FC], [LT_LANG(FC)], [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal dnl pulling things in needlessly. AC_PROVIDE_IFELSE([AC_PROG_GCJ], [LT_LANG(GCJ)], [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], [LT_LANG(GCJ)], [AC_PROVIDE_IFELSE([LT_PROG_GCJ], [LT_LANG(GCJ)], [m4_ifdef([AC_PROG_GCJ], [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) m4_ifdef([A][M_PROG_GCJ], [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) m4_ifdef([LT_PROG_GCJ], [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) AC_PROVIDE_IFELSE([AC_PROG_GO], [LT_LANG(GO)], [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])]) AC_PROVIDE_IFELSE([LT_PROG_RC], [LT_LANG(RC)], [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) ])# _LT_LANG_DEFAULT_CONFIG # Obsolete macros: AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_CXX], []) dnl AC_DEFUN([AC_LIBTOOL_F77], []) dnl AC_DEFUN([AC_LIBTOOL_FC], []) dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) dnl AC_DEFUN([AC_LIBTOOL_RC], []) # _LT_TAG_COMPILER # ---------------- m4_defun([_LT_TAG_COMPILER], [AC_REQUIRE([AC_PROG_CC])dnl _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl # If no C compiler was specified, use CC. LTCC=${LTCC-"$CC"} # If no C compiler flags were specified, use CFLAGS. LTCFLAGS=${LTCFLAGS-"$CFLAGS"} # Allow CC to be a program name with arguments. compiler=$CC ])# _LT_TAG_COMPILER # _LT_COMPILER_BOILERPLATE # ------------------------ # Check for compiler boilerplate output or warnings with # the simple compiler test code. m4_defun([_LT_COMPILER_BOILERPLATE], [m4_require([_LT_DECL_SED])dnl ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" >conftest.$ac_ext eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_compiler_boilerplate=`cat conftest.err` $RM conftest* ])# _LT_COMPILER_BOILERPLATE # _LT_LINKER_BOILERPLATE # ---------------------- # Check for linker boilerplate output or warnings with # the simple link test code. m4_defun([_LT_LINKER_BOILERPLATE], [m4_require([_LT_DECL_SED])dnl ac_outfile=conftest.$ac_objext echo "$lt_simple_link_test_code" >conftest.$ac_ext eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err _lt_linker_boilerplate=`cat conftest.err` $RM -r conftest* ])# _LT_LINKER_BOILERPLATE # _LT_REQUIRED_DARWIN_CHECKS # ------------------------- m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ case $host_os in rhapsody* | darwin*) AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) AC_CHECK_TOOL([LIPO], [lipo], [:]) AC_CHECK_TOOL([OTOOL], [otool], [:]) AC_CHECK_TOOL([OTOOL64], [otool64], [:]) _LT_DECL([], [DSYMUTIL], [1], [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) _LT_DECL([], [NMEDIT], [1], [Tool to change global to local symbols on Mac OS X]) _LT_DECL([], [LIPO], [1], [Tool to manipulate fat objects and archives on Mac OS X]) _LT_DECL([], [OTOOL], [1], [ldd/readelf like tool for Mach-O binaries on Mac OS X]) _LT_DECL([], [OTOOL64], [1], [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], [lt_cv_apple_cc_single_mod=no if test -z "${LT_MULTI_MODULE}"; then # By default we will add the -single_module flag. You can override # by either setting the environment variable LT_MULTI_MODULE # non-empty at configure time, or by adding -multi_module to the # link flags. rm -rf libconftest.dylib* echo "int foo(void){return 1;}" > conftest.c echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err _lt_result=$? # If there is a non-empty error log, and "single_module" # appears in it, assume the flag caused a linker warning if test -s conftest.err && $GREP single_module conftest.err; then cat conftest.err >&AS_MESSAGE_LOG_FD # Otherwise, if the output was created with a 0 exit code from # the compiler, it worked. elif test -f libconftest.dylib && test $_lt_result -eq 0; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&AS_MESSAGE_LOG_FD fi rm -rf libconftest.dylib* rm -f conftest.* fi]) AC_CACHE_CHECK([for -exported_symbols_list linker flag], [lt_cv_ld_exported_symbols_list], [lt_cv_ld_exported_symbols_list=no save_LDFLAGS=$LDFLAGS echo "_main" > conftest.sym LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], [lt_cv_ld_exported_symbols_list=yes], [lt_cv_ld_exported_symbols_list=no]) LDFLAGS="$save_LDFLAGS" ]) AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load], [lt_cv_ld_force_load=no cat > conftest.c << _LT_EOF int forced_loaded() { return 2;} _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD cat > conftest.c << _LT_EOF int main() { return 0;} _LT_EOF echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err _lt_result=$? if test -s conftest.err && $GREP force_load conftest.err; then cat conftest.err >&AS_MESSAGE_LOG_FD elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then lt_cv_ld_force_load=yes else cat conftest.err >&AS_MESSAGE_LOG_FD fi rm -f conftest.err libconftest.a conftest conftest.c rm -rf conftest.dSYM ]) case $host_os in rhapsody* | darwin1.[[012]]) _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; 10.[[012]]*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; 10.*) _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; esac ;; esac if test "$lt_cv_apple_cc_single_mod" = "yes"; then _lt_dar_single_mod='$single_module' fi if test "$lt_cv_ld_exported_symbols_list" = "yes"; then _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' else _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' fi if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= fi ;; esac ]) # _LT_DARWIN_LINKER_FEATURES([TAG]) # --------------------------------- # Checks for linker and compiler features on darwin m4_defun([_LT_DARWIN_LINKER_FEATURES], [ m4_require([_LT_REQUIRED_DARWIN_CHECKS]) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported if test "$lt_cv_ld_force_load" = "yes"; then _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes], [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes]) else _LT_TAGVAR(whole_archive_flag_spec, $1)='' fi _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined" case $cc_basename in ifort*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac if test "$_lt_dar_can_shared" = "yes"; then output_verbose_link_cmd=func_echo_all _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" m4_if([$1], [CXX], [ if test "$lt_cv_apple_cc_single_mod" != "yes"; then _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}" _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}" fi ],[]) else _LT_TAGVAR(ld_shlibs, $1)=no fi ]) # _LT_SYS_MODULE_PATH_AIX([TAGNAME]) # ---------------------------------- # Links a minimal program and checks the executable # for the system default hardcoded library path. In most cases, # this is /usr/lib:/lib, but when the MPI compilers are used # the location of the communication and MPI libs are included too. # If we don't find anything, use the default library path according # to the aix ld manual. # Store the results from the different compilers for each TAGNAME. # Allow to override them for all tags through lt_cv_aix_libpath. m4_defun([_LT_SYS_MODULE_PATH_AIX], [m4_require([_LT_DECL_SED])dnl if test "${lt_cv_aix_libpath+set}" = set; then aix_libpath=$lt_cv_aix_libpath else AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])], [AC_LINK_IFELSE([AC_LANG_PROGRAM],[ lt_aix_libpath_sed='[ /Import File Strings/,/^$/ { /^0/ { s/^0 *\([^ ]*\) *$/\1/ p } }]' _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` # Check for a 64-bit object if we didn't find anything. if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` fi],[]) if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib" fi ]) aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1]) fi ])# _LT_SYS_MODULE_PATH_AIX # _LT_SHELL_INIT(ARG) # ------------------- m4_define([_LT_SHELL_INIT], [m4_divert_text([M4SH-INIT], [$1 ])])# _LT_SHELL_INIT # _LT_PROG_ECHO_BACKSLASH # ----------------------- # Find how we can fake an echo command that does not interpret backslash. # In particular, with Autoconf 2.60 or later we add some code to the start # of the generated configure script which will find a shell with a builtin # printf (which we can use as an echo command). m4_defun([_LT_PROG_ECHO_BACKSLASH], [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO AC_MSG_CHECKING([how to print strings]) # Test print first, because it will be a builtin if present. if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='print -r --' elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then ECHO='printf %s\n' else # Use this function as a fallback that always works. func_fallback_echo () { eval 'cat <<_LTECHO_EOF $[]1 _LTECHO_EOF' } ECHO='func_fallback_echo' fi # func_echo_all arg... # Invoke $ECHO with all args, space-separated. func_echo_all () { $ECHO "$*" } case "$ECHO" in printf*) AC_MSG_RESULT([printf]) ;; print*) AC_MSG_RESULT([print -r]) ;; *) AC_MSG_RESULT([cat]) ;; esac m4_ifdef([_AS_DETECT_SUGGESTED], [_AS_DETECT_SUGGESTED([ test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || ( ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO PATH=/empty FPATH=/empty; export PATH FPATH test "X`printf %s $ECHO`" = "X$ECHO" \ || test "X`print -r -- $ECHO`" = "X$ECHO" )])]) _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) ])# _LT_PROG_ECHO_BACKSLASH # _LT_WITH_SYSROOT # ---------------- AC_DEFUN([_LT_WITH_SYSROOT], [AC_MSG_CHECKING([for sysroot]) AC_ARG_WITH([sysroot], [ --with-sysroot[=DIR] Search for dependent libraries within DIR (or the compiler's sysroot if not specified).], [], [with_sysroot=no]) dnl lt_sysroot will always be passed unquoted. We quote it here dnl in case the user passed a directory name. lt_sysroot= case ${with_sysroot} in #( yes) if test "$GCC" = yes; then lt_sysroot=`$CC --print-sysroot 2>/dev/null` fi ;; #( /*) lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` ;; #( no|'') ;; #( *) AC_MSG_RESULT([${with_sysroot}]) AC_MSG_ERROR([The sysroot must be an absolute path.]) ;; esac AC_MSG_RESULT([${lt_sysroot:-no}]) _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl [dependent libraries, and in which our libraries should be installed.])]) # _LT_ENABLE_LOCK # --------------- m4_defun([_LT_ENABLE_LOCK], [AC_ARG_ENABLE([libtool-lock], [AS_HELP_STRING([--disable-libtool-lock], [avoid locking (might break parallel builds)])]) test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE="32" ;; *ELF-64*) HPUX_IA64_MODE="64" ;; esac fi rm -rf conftest* ;; *-*-irix6*) # Find out which ABI we are using. echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then if test "$lt_cv_prog_gnu_ld" = yes; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; *N32*) LD="${LD-ld} -melf32bmipn32" ;; *64-bit*) LD="${LD-ld} -melf64bmip" ;; esac else case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; *N32*) LD="${LD-ld} -n32" ;; *64-bit*) LD="${LD-ld} -64" ;; esac fi fi rm -rf conftest* ;; x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) case `/usr/bin/file conftest.o` in *x86-64*) LD="${LD-ld} -m elf32_x86_64" ;; *) LD="${LD-ld} -m elf_i386" ;; esac ;; powerpc64le-*) LD="${LD-ld} -m elf32lppclinux" ;; powerpc64-*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) LD="${LD-ld} -m elf_s390" ;; sparc64-*linux*) LD="${LD-ld} -m elf32_sparc" ;; esac ;; *64-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_x86_64_fbsd" ;; x86_64-*linux*) LD="${LD-ld} -m elf_x86_64" ;; powerpcle-*) LD="${LD-ld} -m elf64lppc" ;; powerpc-*) LD="${LD-ld} -m elf64ppc" ;; s390*-*linux*|s390*-*tpf*) LD="${LD-ld} -m elf64_s390" ;; sparc*-*linux*) LD="${LD-ld} -m elf64_sparc" ;; esac ;; esac fi rm -rf conftest* ;; *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, [AC_LANG_PUSH(C) AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) AC_LANG_POP]) if test x"$lt_cv_cc_needs_belf" != x"yes"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS="$SAVE_CFLAGS" fi ;; *-*solaris*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) case $host in i?86-*-solaris*) LD="${LD-ld} -m elf_x86_64" ;; sparc*-*-solaris*) LD="${LD-ld} -m elf64_sparc" ;; esac # GNU ld 2.21 introduced _sol2 emulations. Use them if available. if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then LD="${LD-ld}_sol2" fi ;; *) if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then LD="${LD-ld} -64" fi ;; esac ;; esac fi rm -rf conftest* ;; esac need_locks="$enable_libtool_lock" ])# _LT_ENABLE_LOCK # _LT_PROG_AR # ----------- m4_defun([_LT_PROG_AR], [AC_CHECK_TOOLS(AR, [ar], false) : ${AR=ar} : ${AR_FLAGS=cru} _LT_DECL([], [AR], [1], [The archiver]) _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive]) AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], [lt_cv_ar_at_file=no AC_COMPILE_IFELSE([AC_LANG_PROGRAM], [echo conftest.$ac_objext > conftest.lst lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD' AC_TRY_EVAL([lt_ar_try]) if test "$ac_status" -eq 0; then # Ensure the archiver fails upon bogus file names. rm -f conftest.$ac_objext libconftest.a AC_TRY_EVAL([lt_ar_try]) if test "$ac_status" -ne 0; then lt_cv_ar_at_file=@ fi fi rm -f conftest.* libconftest.a ]) ]) if test "x$lt_cv_ar_at_file" = xno; then archiver_list_spec= else archiver_list_spec=$lt_cv_ar_at_file fi _LT_DECL([], [archiver_list_spec], [1], [How to feed a file listing to the archiver]) ])# _LT_PROG_AR # _LT_CMD_OLD_ARCHIVE # ------------------- m4_defun([_LT_CMD_OLD_ARCHIVE], [_LT_PROG_AR AC_CHECK_TOOL(STRIP, strip, :) test -z "$STRIP" && STRIP=: _LT_DECL([], [STRIP], [1], [A symbol stripping program]) AC_CHECK_TOOL(RANLIB, ranlib, :) test -z "$RANLIB" && RANLIB=: _LT_DECL([], [RANLIB], [1], [Commands used to install an old-style archive]) # Determine commands to create old-style static archives. old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' old_postinstall_cmds='chmod 644 $oldlib' old_postuninstall_cmds= if test -n "$RANLIB"; then case $host_os in openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" ;; *) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" ;; esac old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" fi case $host_os in darwin*) lock_old_archive_extraction=yes ;; *) lock_old_archive_extraction=no ;; esac _LT_DECL([], [old_postinstall_cmds], [2]) _LT_DECL([], [old_postuninstall_cmds], [2]) _LT_TAGDECL([], [old_archive_cmds], [2], [Commands used to build an old-style archive]) _LT_DECL([], [lock_old_archive_extraction], [0], [Whether to use a lock for old archive extraction]) ])# _LT_CMD_OLD_ARCHIVE # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) # ---------------------------------------------------------------- # Check whether the given compiler option works AC_DEFUN([_LT_COMPILER_OPTION], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_SED])dnl AC_CACHE_CHECK([$1], [$2], [$2=no m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="$3" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. # The option is referenced via a variable to avoid confusing sed. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&AS_MESSAGE_LOG_FD echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then $2=yes fi fi $RM conftest* ]) if test x"[$]$2" = xyes; then m4_if([$5], , :, [$5]) else m4_if([$6], , :, [$6]) fi ])# _LT_COMPILER_OPTION # Old name: AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, # [ACTION-SUCCESS], [ACTION-FAILURE]) # ---------------------------------------------------- # Check whether the given linker option works AC_DEFUN([_LT_LINKER_OPTION], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_SED])dnl AC_CACHE_CHECK([$1], [$2], [$2=no save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $3" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then # The linker can only warn and ignore the option if not recognized # So say no if there are warnings if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&AS_MESSAGE_LOG_FD $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then $2=yes fi else $2=yes fi fi $RM -r conftest* LDFLAGS="$save_LDFLAGS" ]) if test x"[$]$2" = xyes; then m4_if([$4], , :, [$4]) else m4_if([$5], , :, [$5]) fi ])# _LT_LINKER_OPTION # Old name: AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) # LT_CMD_MAX_LEN #--------------- AC_DEFUN([LT_CMD_MAX_LEN], [AC_REQUIRE([AC_CANONICAL_HOST])dnl # find the maximum length of command line arguments AC_MSG_CHECKING([the maximum length of command line arguments]) AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl i=0 teststring="ABCD" case $build_os in msdosdjgpp*) # On DJGPP, this test can blow up pretty badly due to problems in libc # (any single argument exceeding 2000 bytes causes a buffer overrun # during glob expansion). Even if it were fixed, the result of this # check would be larger than it should be. lt_cv_sys_max_cmd_len=12288; # 12K is about right ;; gnu*) # Under GNU Hurd, this test is not required because there is # no limit to the length of command line arguments. # Libtool will interpret -1 as no limit whatsoever lt_cv_sys_max_cmd_len=-1; ;; cygwin* | mingw* | cegcc*) # On Win9x/ME, this test blows up -- it succeeds, but takes # about 5 minutes as the teststring grows exponentially. # Worse, since 9x/ME are not pre-emptively multitasking, # you end up with a "frozen" computer, even though with patience # the test eventually succeeds (with a max line length of 256k). # Instead, let's just punt: use the minimum linelength reported by # all of the supported platforms: 8192 (on NT/2K/XP). lt_cv_sys_max_cmd_len=8192; ;; mint*) # On MiNT this can take a long time and run out of memory. lt_cv_sys_max_cmd_len=8192; ;; amigaos*) # On AmigaOS with pdksh, this test takes hours, literally. # So we just punt and use a minimum line length of 8192. lt_cv_sys_max_cmd_len=8192; ;; netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` elif test -x /usr/sbin/sysctl; then lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` else lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs fi # And add a safety zone lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` ;; interix*) # We know the value 262144 and hardcode it with a safety zone (like BSD) lt_cv_sys_max_cmd_len=196608 ;; os2*) # The test takes a long time on OS/2. lt_cv_sys_max_cmd_len=8192 ;; osf*) # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not # nice to cause kernel panics so lets avoid the loop below. # First set a reasonable default. lt_cv_sys_max_cmd_len=16384 # if test -x /sbin/sysconfig; then case `/sbin/sysconfig -q proc exec_disable_arg_limit` in *1*) lt_cv_sys_max_cmd_len=-1 ;; esac fi ;; sco3.2v5*) lt_cv_sys_max_cmd_len=102400 ;; sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` else lt_cv_sys_max_cmd_len=32768 fi ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` if test -n "$lt_cv_sys_max_cmd_len" && \ test undefined != "$lt_cv_sys_max_cmd_len"; then lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` else # Make teststring a little bigger before we do anything with it. # a 1K string should be a reasonable start. for i in 1 2 3 4 5 6 7 8 ; do teststring=$teststring$teststring done SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \ = "X$teststring$teststring"; } >/dev/null 2>&1 && test $i != 17 # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring done # Only check the string length outside the loop. lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` teststring= # Add a significant safety factor because C++ compilers can tack on # massive amounts of additional arguments before passing them to the # linker. It appears as though 1/2 is a usable value. lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` fi ;; esac ]) if test -n $lt_cv_sys_max_cmd_len ; then AC_MSG_RESULT($lt_cv_sys_max_cmd_len) else AC_MSG_RESULT(none) fi max_cmd_len=$lt_cv_sys_max_cmd_len _LT_DECL([], [max_cmd_len], [0], [What is the maximum length of a command?]) ])# LT_CMD_MAX_LEN # Old name: AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) # _LT_HEADER_DLFCN # ---------------- m4_defun([_LT_HEADER_DLFCN], [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl ])# _LT_HEADER_DLFCN # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) # ---------------------------------------------------------------- m4_defun([_LT_TRY_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl if test "$cross_compiling" = yes; then : [$4] else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF [#line $LINENO "configure" #include "confdefs.h" #if HAVE_DLFCN_H #include #endif #include #ifdef RTLD_GLOBAL # define LT_DLGLOBAL RTLD_GLOBAL #else # ifdef DL_GLOBAL # define LT_DLGLOBAL DL_GLOBAL # else # define LT_DLGLOBAL 0 # endif #endif /* We may have to define LT_DLLAZY_OR_NOW in the command line if we find out it does not work in some platform. */ #ifndef LT_DLLAZY_OR_NOW # ifdef RTLD_LAZY # define LT_DLLAZY_OR_NOW RTLD_LAZY # else # ifdef DL_LAZY # define LT_DLLAZY_OR_NOW DL_LAZY # else # ifdef RTLD_NOW # define LT_DLLAZY_OR_NOW RTLD_NOW # else # ifdef DL_NOW # define LT_DLLAZY_OR_NOW DL_NOW # else # define LT_DLLAZY_OR_NOW 0 # endif # endif # endif # endif #endif /* When -fvisbility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord () __attribute__((visibility("default"))); #endif int fnord () { return 42; } int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); int status = $lt_dlunknown; if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; else { if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; else puts (dlerror ()); } /* dlclose (self); */ } else puts (dlerror ()); return status; }] _LT_EOF if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null lt_status=$? case x$lt_status in x$lt_dlno_uscore) $1 ;; x$lt_dlneed_uscore) $2 ;; x$lt_dlunknown|x*) $3 ;; esac else : # compilation failed $3 fi fi rm -fr conftest* ])# _LT_TRY_DLOPEN_SELF # LT_SYS_DLOPEN_SELF # ------------------ AC_DEFUN([LT_SYS_DLOPEN_SELF], [m4_require([_LT_HEADER_DLFCN])dnl if test "x$enable_dlopen" != xyes; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown else lt_cv_dlopen=no lt_cv_dlopen_libs= case $host_os in beos*) lt_cv_dlopen="load_add_on" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) lt_cv_dlopen="LoadLibrary" lt_cv_dlopen_libs= ;; cygwin*) lt_cv_dlopen="dlopen" lt_cv_dlopen_libs= ;; darwin*) # if libdl is installed we need to link against it AC_CHECK_LIB([dl], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ lt_cv_dlopen="dyld" lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ]) ;; *) AC_CHECK_FUNC([shl_load], [lt_cv_dlopen="shl_load"], [AC_CHECK_LIB([dld], [shl_load], [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"], [AC_CHECK_FUNC([dlopen], [lt_cv_dlopen="dlopen"], [AC_CHECK_LIB([dl], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], [AC_CHECK_LIB([svld], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], [AC_CHECK_LIB([dld], [dld_link], [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"]) ]) ]) ]) ]) ]) ;; esac if test "x$lt_cv_dlopen" != xno; then enable_dlopen=yes else enable_dlopen=no fi case $lt_cv_dlopen in dlopen) save_CPPFLAGS="$CPPFLAGS" test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" save_LDFLAGS="$LDFLAGS" wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" save_LIBS="$LIBS" LIBS="$lt_cv_dlopen_libs $LIBS" AC_CACHE_CHECK([whether a program can dlopen itself], lt_cv_dlopen_self, [dnl _LT_TRY_DLOPEN_SELF( lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) ]) if test "x$lt_cv_dlopen_self" = xyes; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" AC_CACHE_CHECK([whether a statically linked program can dlopen itself], lt_cv_dlopen_self_static, [dnl _LT_TRY_DLOPEN_SELF( lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) ]) fi CPPFLAGS="$save_CPPFLAGS" LDFLAGS="$save_LDFLAGS" LIBS="$save_LIBS" ;; esac case $lt_cv_dlopen_self in yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; *) enable_dlopen_self=unknown ;; esac case $lt_cv_dlopen_self_static in yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; *) enable_dlopen_self_static=unknown ;; esac fi _LT_DECL([dlopen_support], [enable_dlopen], [0], [Whether dlopen is supported]) _LT_DECL([dlopen_self], [enable_dlopen_self], [0], [Whether dlopen of programs is supported]) _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], [Whether dlopen of statically linked programs is supported]) ])# LT_SYS_DLOPEN_SELF # Old name: AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) # _LT_COMPILER_C_O([TAGNAME]) # --------------------------- # Check to see if options -c and -o are simultaneously supported by compiler. # This macro does not hard code the compiler like AC_PROG_CC_C_O. m4_defun([_LT_COMPILER_C_O], [m4_require([_LT_DECL_SED])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_TAG_COMPILER])dnl AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no $RM -r conftest 2>/dev/null mkdir conftest cd conftest mkdir out echo "$lt_simple_compile_test_code" > conftest.$ac_ext lt_compiler_flag="-o out/conftest2.$ac_objext" # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins # with a dollar sign (not a hyphen), so the echo should work correctly. lt_compile=`echo "$ac_compile" | $SED \ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&AS_MESSAGE_LOG_FD echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes fi fi chmod u+w . 2>&AS_MESSAGE_LOG_FD $RM conftest* # SGI C++ compiler will create directory out/ii_files/ for # template instantiation test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files $RM out/* && rmdir out cd .. $RM -r conftest $RM conftest* ]) _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], [Does compiler simultaneously support -c and -o options?]) ])# _LT_COMPILER_C_O # _LT_COMPILER_FILE_LOCKS([TAGNAME]) # ---------------------------------- # Check to see if we can do hard links to lock some files if needed m4_defun([_LT_COMPILER_FILE_LOCKS], [m4_require([_LT_ENABLE_LOCK])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl _LT_COMPILER_C_O([$1]) hard_links="nottested" if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user AC_MSG_CHECKING([if we can lock with hard links]) hard_links=yes $RM conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no AC_MSG_RESULT([$hard_links]) if test "$hard_links" = no; then AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) need_locks=warn fi else need_locks=no fi _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) ])# _LT_COMPILER_FILE_LOCKS # _LT_CHECK_OBJDIR # ---------------- m4_defun([_LT_CHECK_OBJDIR], [AC_CACHE_CHECK([for objdir], [lt_cv_objdir], [rm -f .libs 2>/dev/null mkdir .libs 2>/dev/null if test -d .libs; then lt_cv_objdir=.libs else # MS-DOS does not allow filenames that begin with a dot. lt_cv_objdir=_libs fi rmdir .libs 2>/dev/null]) objdir=$lt_cv_objdir _LT_DECL([], [objdir], [0], [The name of the directory that contains temporary libtool files])dnl m4_pattern_allow([LT_OBJDIR])dnl AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/", [Define to the sub-directory in which libtool stores uninstalled libraries.]) ])# _LT_CHECK_OBJDIR # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) # -------------------------------------- # Check hardcoding attributes. m4_defun([_LT_LINKER_HARDCODE_LIBPATH], [AC_MSG_CHECKING([how to hardcode library paths into programs]) _LT_TAGVAR(hardcode_action, $1)= if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || test -n "$_LT_TAGVAR(runpath_var, $1)" || test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then # We can hardcode non-existent directories. if test "$_LT_TAGVAR(hardcode_direct, $1)" != no && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no && test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then # Linking always hardcodes the temporary library directory. _LT_TAGVAR(hardcode_action, $1)=relink else # We can link without hardcoding, and we can hardcode nonexisting dirs. _LT_TAGVAR(hardcode_action, $1)=immediate fi else # We cannot hardcode anything, or else we can only hardcode existing # directories. _LT_TAGVAR(hardcode_action, $1)=unsupported fi AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) if test "$_LT_TAGVAR(hardcode_action, $1)" = relink || test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then # Fast installation is not supported enable_fast_install=no elif test "$shlibpath_overrides_runpath" = yes || test "$enable_shared" = no; then # Fast installation is not necessary enable_fast_install=needless fi _LT_TAGDECL([], [hardcode_action], [0], [How to hardcode a shared library path into an executable]) ])# _LT_LINKER_HARDCODE_LIBPATH # _LT_CMD_STRIPLIB # ---------------- m4_defun([_LT_CMD_STRIPLIB], [m4_require([_LT_DECL_EGREP]) striplib= old_striplib= AC_MSG_CHECKING([whether stripping libraries is possible]) if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" AC_MSG_RESULT([yes]) else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" old_striplib="$STRIP -S" AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) fi ;; *) AC_MSG_RESULT([no]) ;; esac fi _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) _LT_DECL([], [striplib], [1]) ])# _LT_CMD_STRIPLIB # _LT_SYS_DYNAMIC_LINKER([TAG]) # ----------------------------- # PORTME Fill in your ld.so characteristics m4_defun([_LT_SYS_DYNAMIC_LINKER], [AC_REQUIRE([AC_CANONICAL_HOST])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_OBJDUMP])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_CHECK_SHELL_FEATURES])dnl AC_MSG_CHECKING([dynamic linker characteristics]) m4_if([$1], [], [ if test "$GCC" = yes; then case $host_os in darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; *) lt_awk_arg="/^libraries:/" ;; esac case $host_os in mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;; *) lt_sed_strip_eq="s,=/,/,g" ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` case $lt_search_path_spec in *\;*) # if the path contains ";" then we assume it to be the separator # otherwise default to the standard path separator (i.e. ":") - it is # assumed that no part of a normal pathname contains ";" but that should # okay in the real world where ";" in dirpaths is itself problematic. lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` ;; *) lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` ;; esac # Ok, now we have the path, separated by spaces, we can step through it # and add multilib dir if necessary. lt_tmp_lt_search_path_spec= lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` for lt_sys_path in $lt_search_path_spec; do if test -d "$lt_sys_path/$lt_multi_os_dir"; then lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" else test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' BEGIN {RS=" "; FS="/|\n";} { lt_foo=""; lt_count=0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { lt_foo="/" $lt_i lt_foo; } else { lt_count--; } } } } if (lt_foo != "") { lt_freq[[lt_foo]]++; } if (lt_freq[[lt_foo]] == 1) { print lt_foo; } }'` # AWK program above erroneously prepends '/' to C:/dos/paths # for these hosts. case $host_os in mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ $SED 's,/\([[A-Za-z]]:\),\1,g'` ;; esac sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` else sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" fi]) library_names_spec= libname_spec='lib$name' soname_spec= shrext_cmds=".so" postinstall_cmds= postuninstall_cmds= finish_cmds= finish_eval= shlibpath_var= shlibpath_overrides_runpath=unknown version_type=none dynamic_linker="$host_os ld.so" sys_lib_dlsearch_path_spec="/lib /usr/lib" need_lib_prefix=unknown hardcode_into_libs=no # when you set need_version to no, make sure it does not cause -set_version # flags to be left without arguments need_version=unknown case $host_os in aix3*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. soname_spec='${libname}${release}${shared_ext}$major' ;; aix[[4-9]]*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no hardcode_into_libs=yes if test "$host_cpu" = ia64; then # AIX 5 supports IA64 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with # the line `#! .'. This would cause the generated library to # depend on `.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[[01]] | aix4.[[01]].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac # AIX (on Power*) has no versioning support, so currently we can not hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. if test "$aix_use_runtimelinking" = yes; then # If using run time linking (on AIX 4.2 or later) use lib.so # instead of lib.a to let people know that these are not # typical AIX shared libraries. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' else # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. library_names_spec='${libname}${release}.a $libname.a' soname_spec='${libname}${release}${shared_ext}$major' fi shlibpath_var=LIBPATH fi ;; amigaos*) case $host_cpu in powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) library_names_spec='${libname}${shared_ext}' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; bsdi[[45]]*) version_type=linux # correct to gnu/linux during the next big refactor need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" # the default ld.so.conf also contains /usr/contrib/lib and # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow # libtool to hard-code these into programs ;; cygwin* | mingw* | pw32* | cegcc*) version_type=windows shrext_cmds=".dll" need_version=no need_lib_prefix=no case $GCC,$cc_basename in yes,*) # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \${file}`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ chmod a+x \$dldir/$dlname~ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; fi' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' ;; esac dynamic_linker='Win32 ld.exe' ;; *,cl*) # Native MSVC libname_spec='$name' soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' library_names_spec='${libname}.dll.lib' case $build_os in mingw*) sys_lib_search_path_spec= lt_save_ifs=$IFS IFS=';' for lt_path in $LIB do IFS=$lt_save_ifs # Let DOS variable expansion print the short 8.3 style file name. lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" done IFS=$lt_save_ifs # Convert to MSYS style. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` ;; cygwin*) # Convert to unix form, then to dos form, then back to unix form # but this time dos style (no spaces!) so that the unix form looks # like /cygdrive/c/PROGRA~1:/cygdr... sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` ;; *) sys_lib_search_path_spec="$LIB" if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then # It is most probably a Windows format PATH. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` else sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` fi # FIXME: find the short name or the path components, as spaces are # common. (e.g. "Program Files" -> "PROGRA~1") ;; esac # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \${file}`~ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname' postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ dlpath=$dir/\$dldll~ $RM \$dlpath' shlibpath_overrides_runpath=yes dynamic_linker='Win32 link.exe' ;; *) # Assume MSVC wrapper library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' dynamic_linker='Win32 ld.exe' ;; esac # FIXME: first we should search . and the directory the executable is in shlibpath_var=PATH ;; darwin* | rhapsody*) dynamic_linker="$host_os dyld" version_type=darwin need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' soname_spec='${libname}${release}${major}$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' ;; dgux*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then objformat=`/usr/bin/objformat` else case $host_os in freebsd[[23]].*) objformat=aout ;; *) objformat=elf ;; esac fi version_type=freebsd-$objformat case $version_type in freebsd-elf*) library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' need_version=no need_lib_prefix=no ;; freebsd-*) library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' need_version=yes ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in freebsd2.*) shlibpath_overrides_runpath=yes ;; freebsd3.[[01]]* | freebsdelf3.[[01]]*) shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; *) # from 4.6 on, and DragonFly shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; esac ;; haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no dynamic_linker="$host_os runtime_loader" library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LIBRARY_PATH shlibpath_overrides_runpath=yes sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; hpux9* | hpux10* | hpux11*) # Give a soname corresponding to the major version so that dld.sl refuses to # link against other versions. version_type=sunos need_lib_prefix=no need_version=no case $host_cpu in ia64*) shrext_cmds='.so' hardcode_into_libs=yes dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' if test "X$HPUX_IA64_MODE" = X32; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" fi sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' hardcode_into_libs=yes dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; *) shrext_cmds='.sl' dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555, ... postinstall_cmds='chmod 555 $lib' # or fails outright, so override atomically: install_override_mode=555 ;; interix[[3-9]]*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; irix5* | irix6* | nonstopux*) case $host_os in nonstopux*) version_type=nonstopux ;; *) if test "$lt_cv_prog_gnu_ld" = yes; then version_type=linux # correct to gnu/linux during the next big refactor else version_type=irix fi ;; esac need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= ;; *) case $LD in # libtool.m4 will add one of these switches to LD *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= libmagic=32-bit;; *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 libmagic=64-bit;; *) libsuff= shlibsuff= libmagic=never-match;; esac ;; esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" hardcode_into_libs=yes ;; # No shared lib support for Linux oldld, aout, or coff. linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no # Some binutils ld are patched to set DT_RUNPATH AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath], [lt_cv_shlibpath_overrides_runpath=no save_LDFLAGS=$LDFLAGS save_libdir=$libdir eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], [lt_cv_shlibpath_overrides_runpath=yes])]) LDFLAGS=$save_LDFLAGS libdir=$save_libdir ]) shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath # This implies no fast_install, which is unacceptable. # Some rework will be needed to allow for fast_install # before this can be enabled. hardcode_into_libs=yes # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on # powerpc, because MkLinux only supported shared libraries with the # GNU dynamic linker. Since this was broken with cross compilers, # most powerpc-linux boxes support dynamic linking these days and # people can always --disable-shared, the test was removed, and we # assume the GNU/Linux dynamic linker is in use. dynamic_linker='GNU/Linux ld.so' ;; netbsdelf*-gnu) version_type=linux need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='NetBSD ld.elf_so' ;; netbsd*) version_type=sunos need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes ;; newsos6) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; *nto* | *qnx*) version_type=qnx need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='ldqnx.so' ;; openbsd*) version_type=sunos sys_lib_dlsearch_path_spec="/usr/lib" need_lib_prefix=no # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. case $host_os in openbsd3.3 | openbsd3.3.*) need_version=yes ;; *) need_version=no ;; esac library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then case $host_os in openbsd2.[[89]] | openbsd2.[[89]].*) shlibpath_overrides_runpath=no ;; *) shlibpath_overrides_runpath=yes ;; esac else shlibpath_overrides_runpath=yes fi ;; os2*) libname_spec='$name' shrext_cmds=".dll" need_lib_prefix=no library_names_spec='$libname${shared_ext} $libname.a' dynamic_linker='OS/2 ld.exe' shlibpath_var=LIBPATH ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no soname_spec='${libname}${release}${shared_ext}$major' library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" ;; rdos*) dynamic_linker=no ;; solaris*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes # ldd complains unless libraries are executable postinstall_cmds='chmod +x $lib' ;; sunos4*) version_type=sunos library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes if test "$with_gnu_ld" = yes; then need_lib_prefix=no fi need_version=yes ;; sysv4 | sysv4.3*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH case $host_vendor in sni) shlibpath_overrides_runpath=no need_lib_prefix=no runpath_var=LD_RUN_PATH ;; siemens) need_lib_prefix=no ;; motorola) need_lib_prefix=no need_version=no shlibpath_overrides_runpath=no sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' ;; esac ;; sysv4*MP*) if test -d /usr/nec ;then version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' soname_spec='$libname${shared_ext}.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) version_type=freebsd-elf need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes if test "$with_gnu_ld" = yes; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' case $host_os in sco3.2v5*) sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" ;; esac fi sys_lib_dlsearch_path_spec='/usr/lib' ;; tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes ;; uts4*) version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH ;; *) dynamic_linker=no ;; esac AC_MSG_RESULT([$dynamic_linker]) test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" fi if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" fi _LT_DECL([], [variables_saved_for_relink], [1], [Variables whose values should be saved in libtool wrapper scripts and restored at link time]) _LT_DECL([], [need_lib_prefix], [0], [Do we need the "lib" prefix for modules?]) _LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) _LT_DECL([], [version_type], [0], [Library versioning type]) _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) _LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) _LT_DECL([], [shlibpath_overrides_runpath], [0], [Is shlibpath searched before the hard-coded library search path?]) _LT_DECL([], [libname_spec], [1], [Format of library name prefix]) _LT_DECL([], [library_names_spec], [1], [[List of archive names. First name is the real one, the rest are links. The last name is the one that the linker finds with -lNAME]]) _LT_DECL([], [soname_spec], [1], [[The coded name of the library, if different from the real name]]) _LT_DECL([], [install_override_mode], [1], [Permission mode override for installation of shared libraries]) _LT_DECL([], [postinstall_cmds], [2], [Command to use after installation of a shared archive]) _LT_DECL([], [postuninstall_cmds], [2], [Command to use after uninstallation of a shared archive]) _LT_DECL([], [finish_cmds], [2], [Commands used to finish a libtool library installation in a directory]) _LT_DECL([], [finish_eval], [1], [[As "finish_cmds", except a single script fragment to be evaled but not shown]]) _LT_DECL([], [hardcode_into_libs], [0], [Whether we should hardcode library paths into libraries]) _LT_DECL([], [sys_lib_search_path_spec], [2], [Compile-time system search path for libraries]) _LT_DECL([], [sys_lib_dlsearch_path_spec], [2], [Run-time system search path for libraries]) ])# _LT_SYS_DYNAMIC_LINKER # _LT_PATH_TOOL_PREFIX(TOOL) # -------------------------- # find a file program which can recognize shared library AC_DEFUN([_LT_PATH_TOOL_PREFIX], [m4_require([_LT_DECL_EGREP])dnl AC_MSG_CHECKING([for $1]) AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, [case $MAGIC_CMD in [[\\/*] | ?:[\\/]*]) lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. ;; *) lt_save_MAGIC_CMD="$MAGIC_CMD" lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR dnl $ac_dummy forces splitting on constant user-supplied paths. dnl POSIX.2 word splitting is done only on the output of word expansions, dnl not every word. This closes a longstanding sh security hole. ac_dummy="m4_if([$2], , $PATH, [$2])" for ac_dir in $ac_dummy; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$1; then lt_cv_path_MAGIC_CMD="$ac_dir/$1" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : else cat <<_LT_EOF 1>&2 *** Warning: the command libtool uses to detect shared libraries, *** $file_magic_cmd, produces output that libtool cannot recognize. *** The result is that libtool may fail to recognize shared libraries *** as such. This will affect the creation of libtool libraries that *** depend on shared libraries, but programs linked with such libtool *** libraries will work regardless of this problem. Nevertheless, you *** may want to report the problem to your system manager and/or to *** bug-libtool@gnu.org _LT_EOF fi ;; esac fi break fi done IFS="$lt_save_ifs" MAGIC_CMD="$lt_save_MAGIC_CMD" ;; esac]) MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then AC_MSG_RESULT($MAGIC_CMD) else AC_MSG_RESULT(no) fi _LT_DECL([], [MAGIC_CMD], [0], [Used to examine libraries when file_magic_cmd begins with "file"])dnl ])# _LT_PATH_TOOL_PREFIX # Old name: AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) # _LT_PATH_MAGIC # -------------- # find a file program which can recognize a shared library m4_defun([_LT_PATH_MAGIC], [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) else MAGIC_CMD=: fi fi ])# _LT_PATH_MAGIC # LT_PATH_LD # ---------- # find the pathname to the GNU or non-GNU linker AC_DEFUN([LT_PATH_LD], [AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_PROG_ECHO_BACKSLASH])dnl AC_ARG_WITH([gnu-ld], [AS_HELP_STRING([--with-gnu-ld], [assume the C compiler uses GNU ld @<:@default=no@:>@])], [test "$withval" = no || with_gnu_ld=yes], [with_gnu_ld=no])dnl ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. AC_MSG_CHECKING([for ld used by $CC]) case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; esac case $ac_prog in # Accept absolute paths. [[\\/]]* | ?:[[\\/]]*) re_direlt='/[[^/]][[^/]]*/\.\./' # Canonicalize the pathname of ld ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done test -z "$LD" && LD="$ac_prog" ;; "") # If it fails, then pretend we aren't using GCC. ac_prog=ld ;; *) # If it is relative, then search for the first ld in PATH. with_gnu_ld=unknown ;; esac elif test "$with_gnu_ld" = yes; then AC_MSG_CHECKING([for GNU ld]) else AC_MSG_CHECKING([for non-GNU ld]) fi AC_CACHE_VAL(lt_cv_path_LD, [if test -z "$LD"; then lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then lt_cv_path_LD="$ac_dir/$ac_prog" # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 &1 /dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else # Keep this pattern in sync with the one in func_win32_libid. lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; cegcc*) # use the weaker test based on 'objdump'. See mingw*. lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' lt_cv_file_magic_cmd='$OBJDUMP -f' ;; darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac else lt_cv_deplibs_check_method=pass_all fi ;; haiku*) lt_cv_deplibs_check_method=pass_all ;; hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so ;; hppa*64*) [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]'] lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl ;; *) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library' lt_cv_file_magic_test_file=/usr/lib/libc.sl ;; esac ;; interix[[3-9]]*) # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' ;; irix5* | irix6* | nonstopux*) case $LD in *-32|*"-32 ") libmagic=32-bit;; *-n32|*"-n32 ") libmagic=N32;; *-64|*"-64 ") libmagic=64-bit;; *) libmagic=never-match;; esac lt_cv_deplibs_check_method=pass_all ;; # This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' fi ;; newos6*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; *nto* | *qnx*) lt_cv_deplibs_check_method=pass_all ;; openbsd*) if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' fi ;; osf3* | osf4* | osf5*) lt_cv_deplibs_check_method=pass_all ;; rdos*) lt_cv_deplibs_check_method=pass_all ;; solaris*) lt_cv_deplibs_check_method=pass_all ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) lt_cv_deplibs_check_method=pass_all ;; sysv4 | sysv4.3*) case $host_vendor in motorola) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` ;; ncr) lt_cv_deplibs_check_method=pass_all ;; sequent) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; sni) lt_cv_file_magic_cmd='/bin/file' lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" lt_cv_file_magic_test_file=/lib/libc.so ;; siemens) lt_cv_deplibs_check_method=pass_all ;; pc) lt_cv_deplibs_check_method=pass_all ;; esac ;; tpf*) lt_cv_deplibs_check_method=pass_all ;; esac ]) file_magic_glob= want_nocaseglob=no if test "$build" = "$host"; then case $host_os in mingw* | pw32*) if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then want_nocaseglob=yes else file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"` fi ;; esac fi file_magic_cmd=$lt_cv_file_magic_cmd deplibs_check_method=$lt_cv_deplibs_check_method test -z "$deplibs_check_method" && deplibs_check_method=unknown _LT_DECL([], [deplibs_check_method], [1], [Method to check whether dependent libraries are shared objects]) _LT_DECL([], [file_magic_cmd], [1], [Command to use when deplibs_check_method = "file_magic"]) _LT_DECL([], [file_magic_glob], [1], [How to find potential files when deplibs_check_method = "file_magic"]) _LT_DECL([], [want_nocaseglob], [1], [Find potential files using nocaseglob when deplibs_check_method = "file_magic"]) ])# _LT_CHECK_MAGIC_METHOD # LT_PATH_NM # ---------- # find the pathname to a BSD- or MS-compatible name lister AC_DEFUN([LT_PATH_NM], [AC_REQUIRE([AC_PROG_CC])dnl AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, [if test -n "$NM"; then # Let the user override the test. lt_cv_path_NM="$NM" else lt_nm_to_check="${ac_tool_prefix}nm" if test -n "$ac_tool_prefix" && test "$build" = "$host"; then lt_nm_to_check="$lt_nm_to_check nm" fi for lt_tmp_nm in $lt_nm_to_check; do lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do IFS="$lt_save_ifs" test -z "$ac_dir" && ac_dir=. tmp_nm="$ac_dir/$lt_tmp_nm" if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then # Check to see if the nm accepts a BSD-compat flag. # Adding the `sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored # Tru64's nm complains that /dev/null is an invalid object file case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in */dev/null* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but continue # so that we can try to find one that supports BSD flags ;; esac ;; esac fi done IFS="$lt_save_ifs" done : ${lt_cv_path_NM=no} fi]) if test "$lt_cv_path_NM" != "no"; then NM="$lt_cv_path_NM" else # Didn't find any BSD compatible name lister, look for dumpbin. if test -n "$DUMPBIN"; then : # Let the user override the test. else AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols" ;; *) DUMPBIN=: ;; esac fi AC_SUBST([DUMPBIN]) if test "$DUMPBIN" != ":"; then NM="$DUMPBIN" fi fi test -z "$NM" && NM=nm AC_SUBST([NM]) _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], [lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&AS_MESSAGE_LOG_FD (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&AS_MESSAGE_LOG_FD (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD) cat conftest.out >&AS_MESSAGE_LOG_FD if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" fi rm -f conftest*]) ])# LT_PATH_NM # Old names: AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_PROG_NM], []) dnl AC_DEFUN([AC_PROG_NM], []) # _LT_CHECK_SHAREDLIB_FROM_LINKLIB # -------------------------------- # how to determine the name of the shared library # associated with a specific link library. # -- PORTME fill in with the dynamic library characteristics m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB], [m4_require([_LT_DECL_EGREP]) m4_require([_LT_DECL_OBJDUMP]) m4_require([_LT_DECL_DLLTOOL]) AC_CACHE_CHECK([how to associate runtime and link libraries], lt_cv_sharedlib_from_linklib_cmd, [lt_cv_sharedlib_from_linklib_cmd='unknown' case $host_os in cygwin* | mingw* | pw32* | cegcc*) # two different shell functions defined in ltmain.sh # decide which to use based on capabilities of $DLLTOOL case `$DLLTOOL --help 2>&1` in *--identify-strict*) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib ;; *) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback ;; esac ;; *) # fallback: assume linklib IS sharedlib lt_cv_sharedlib_from_linklib_cmd="$ECHO" ;; esac ]) sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO _LT_DECL([], [sharedlib_from_linklib_cmd], [1], [Command to associate shared and link libraries]) ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB # _LT_PATH_MANIFEST_TOOL # ---------------------- # locate the manifest tool m4_defun([_LT_PATH_MANIFEST_TOOL], [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :) test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool], [lt_cv_path_mainfest_tool=no echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out cat conftest.err >&AS_MESSAGE_LOG_FD if $GREP 'Manifest Tool' conftest.out > /dev/null; then lt_cv_path_mainfest_tool=yes fi rm -f conftest*]) if test "x$lt_cv_path_mainfest_tool" != xyes; then MANIFEST_TOOL=: fi _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl ])# _LT_PATH_MANIFEST_TOOL # LT_LIB_M # -------- # check for math library AC_DEFUN([LT_LIB_M], [AC_REQUIRE([AC_CANONICAL_HOST])dnl LIBM= case $host in *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*) # These system don't have libm, or don't need it ;; *-ncr-sysv4.3*) AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") ;; *) AC_CHECK_LIB(m, cos, LIBM="-lm") ;; esac AC_SUBST([LIBM]) ])# LT_LIB_M # Old name: AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_CHECK_LIBM], []) # _LT_COMPILER_NO_RTTI([TAGNAME]) # ------------------------------- m4_defun([_LT_COMPILER_NO_RTTI], [m4_require([_LT_TAG_COMPILER])dnl _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= if test "$GCC" = yes; then case $cc_basename in nvcc*) _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;; *) _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;; esac _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], lt_cv_prog_compiler_rtti_exceptions, [-fno-rtti -fno-exceptions], [], [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) fi _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], [Compiler flag to turn off builtin functions]) ])# _LT_COMPILER_NO_RTTI # _LT_CMD_GLOBAL_SYMBOLS # ---------------------- m4_defun([_LT_CMD_GLOBAL_SYMBOLS], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([LT_PATH_NM])dnl AC_REQUIRE([LT_PATH_LD])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_TAG_COMPILER])dnl # Check for command to grab the raw symbol name followed by C symbol from nm. AC_MSG_CHECKING([command to parse $NM output from $compiler object]) AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [ # These are sane defaults that work on at least a few old systems. # [They come from Ultrix. What could be older than Ultrix?!! ;)] # Character class describing NM global symbol codes. symcode='[[BCDEGRST]]' # Regexp to match symbols that can be accessed directly from C. sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' # Define system-specific variables. case $host_os in aix*) symcode='[[BCDT]]' ;; cygwin* | mingw* | pw32* | cegcc*) symcode='[[ABCDGISTW]]' ;; hpux*) if test "$host_cpu" = ia64; then symcode='[[ABCDEGRST]]' fi ;; irix* | nonstopux*) symcode='[[BCDEGRST]]' ;; osf*) symcode='[[BCDEGQRST]]' ;; solaris*) symcode='[[BDRT]]' ;; sco3.2v5*) symcode='[[DT]]' ;; sysv4.2uw2*) symcode='[[DT]]' ;; sysv5* | sco5v6* | unixware* | OpenUNIX*) symcode='[[ABDT]]' ;; sysv4) symcode='[[DFNSTU]]' ;; esac # If we're using GNU nm, then use its standard symbol codes. case `$NM -V 2>&1` in *GNU* | *'with BFD'*) symcode='[[ABCDGIRSTW]]' ;; esac # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'" lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'" # Handle CRLF in mingw tool chain opt_cr= case $build_os in mingw*) opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp ;; esac # Try without a prefix underscore, then with it. for ac_symprfx in "" "_"; do # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. symxfrm="\\1 $ac_symprfx\\2 \\2" # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function # and D for any global variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK ['"\ " {last_section=section; section=\$ 3};"\ " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ " {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ " {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ " s[1]~/^[@?]/{print s[1], s[1]; next};"\ " s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx]" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" # Check to see that the pipe works correctly. pipe_works=no rm -f conftest* cat > conftest.$ac_ext <<_LT_EOF #ifdef __cplusplus extern "C" { #endif char nm_test_var; void nm_test_func(void); void nm_test_func(void){} #ifdef __cplusplus } #endif int main(){nm_test_var='a';nm_test_func();return(0);} _LT_EOF if AC_TRY_EVAL(ac_compile); then # Now try to grab the symbols. nlist=conftest.nm if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" else rm -f "$nlist"T fi # Make sure that we snagged all the symbols we need. if $GREP ' nm_test_var$' "$nlist" >/dev/null; then if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ #if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) /* DATA imports from DLLs on WIN32 con't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT@&t@_DLSYM_CONST #elif defined(__osf__) /* This system does not cope well with relocations in const data. */ # define LT@&t@_DLSYM_CONST #else # define LT@&t@_DLSYM_CONST const #endif #ifdef __cplusplus extern "C" { #endif _LT_EOF # Now generate the symbol file. eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' cat <<_LT_EOF >> conftest.$ac_ext /* The mapping between symbol names and symbols. */ LT@&t@_DLSYM_CONST struct { const char *name; void *address; } lt__PROGRAM__LTX_preloaded_symbols[[]] = { { "@PROGRAM@", (void *) 0 }, _LT_EOF $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; /* This works around a problem in FreeBSD linker */ #ifdef FREEBSD_WORKAROUND static const void *lt_preloaded_setup() { return lt__PROGRAM__LTX_preloaded_symbols; } #endif #ifdef __cplusplus } #endif _LT_EOF # Now try linking the two files. mv conftest.$ac_objext conftstm.$ac_objext lt_globsym_save_LIBS=$LIBS lt_globsym_save_CFLAGS=$CFLAGS LIBS="conftstm.$ac_objext" CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then pipe_works=yes fi LIBS=$lt_globsym_save_LIBS CFLAGS=$lt_globsym_save_CFLAGS else echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD fi else echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD fi else echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD fi else echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD cat conftest.$ac_ext >&5 fi rm -rf conftest* conftst* # Do not use the global_symbol_pipe unless it works. if test "$pipe_works" = yes; then break else lt_cv_sys_global_symbol_pipe= fi done ]) if test -z "$lt_cv_sys_global_symbol_pipe"; then lt_cv_sys_global_symbol_to_cdecl= fi if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then AC_MSG_RESULT(failed) else AC_MSG_RESULT(ok) fi # Response file support. if test "$lt_cv_nm_interface" = "MS dumpbin"; then nm_file_list_spec='@' elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then nm_file_list_spec='@' fi _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], [Take the output of nm and produce a listing of raw symbols and C names]) _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], [Transform the output of nm in a proper C declaration]) _LT_DECL([global_symbol_to_c_name_address], [lt_cv_sys_global_symbol_to_c_name_address], [1], [Transform the output of nm in a C name address pair]) _LT_DECL([global_symbol_to_c_name_address_lib_prefix], [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], [Transform the output of nm in a C name address pair when lib prefix is needed]) _LT_DECL([], [nm_file_list_spec], [1], [Specify filename containing input files for $NM]) ]) # _LT_CMD_GLOBAL_SYMBOLS # _LT_COMPILER_PIC([TAGNAME]) # --------------------------- m4_defun([_LT_COMPILER_PIC], [m4_require([_LT_TAG_COMPILER])dnl _LT_TAGVAR(lt_prog_compiler_wl, $1)= _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)= m4_if([$1], [CXX], [ # C++ specific cases for pic, static, wl, etc. if test "$GXX" = yes; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the `-m68020' flag to GCC prevents building anything better, # like `-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | os2* | pw32* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' ;; *djgpp*) # DJGPP does not support shared libraries at all _LT_TAGVAR(lt_prog_compiler_pic, $1)= ;; haiku*) # PIC is the default for Haiku. # The "-static" flag exists, but is broken. _LT_TAGVAR(lt_prog_compiler_static, $1)= ;; interix[[3-9]]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic fi ;; hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag # sets the default TLS model and affects inlining. case $host_cpu in hppa*64*) ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac else case $host_os in aix[[4-9]]*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' fi ;; chorus*) case $cc_basename in cxch68*) # Green Hills C++ Compiler # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" ;; esac ;; mingw* | cygwin* | os2* | pw32* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; dgux*) case $cc_basename in ec++*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' ;; ghcx*) # Green Hills C++ Compiler _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; *) ;; esac ;; freebsd* | dragonfly*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' if test "$host_cpu" != ia64; then _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' fi ;; aCC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' ;; esac ;; *) ;; esac ;; interix*) # This is c89, which is MS Visual C++ (no shared libs) # Anyone wants to do a port? ;; irix5* | irix6* | nonstopux*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' # CC pic flag -KPIC is the default. ;; *) ;; esac ;; linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # KAI C++ Compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; ecpc* ) # old Intel C++ for x86_64 which still supported -KPIC. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; icpc* ) # Intel C++, used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; pgCC* | pgcpp*) # Portland Group C++ compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; cxx*) # Compaq C++ # Make sure the PIC flag is empty. It appears that all Alpha # Linux and Compaq Tru64 Unix objects are PIC. _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL 8.0, 9.0 on PPC and BlueGene _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' ;; esac ;; esac ;; lynxos*) ;; m88k*) ;; mvs*) case $cc_basename in cxx*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' ;; *) ;; esac ;; netbsd* | netbsdelf*-gnu) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; osf3* | osf4* | osf5*) case $cc_basename in KCC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' ;; RCC*) # Rational C++ 2.4.1 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; cxx*) # Digital/Compaq C++ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # Make sure the PIC flag is empty. It appears that all Alpha # Linux and Compaq Tru64 Unix objects are PIC. _LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; *) ;; esac ;; psos*) ;; solaris*) case $cc_basename in CC* | sunCC*) # Sun C++ 4.2, 5.x and Centerline C++ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' ;; gcx*) # Green Hills C++ Compiler _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' ;; *) ;; esac ;; sunos4*) case $cc_basename in CC*) # Sun C++ 4.x _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; lcc*) # Lucid _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' ;; *) ;; esac ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) case $cc_basename in CC*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; esac ;; tandem*) case $cc_basename in NCC*) # NonStop-UX NCC 3.20 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' ;; *) ;; esac ;; vxworks*) ;; *) _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; esac fi ], [ if test "$GCC" = yes; then _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' case $host_os in aix*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but # adding the `-m68020' flag to GCC prevents building anything better, # like `-m68040'. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' ;; esac ;; beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; darwin* | rhapsody*) # PIC is the default on this platform # Common symbols not allowed in MH_DYLIB files _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' ;; haiku*) # PIC is the default for Haiku. # The "-static" flag exists, but is broken. _LT_TAGVAR(lt_prog_compiler_static, $1)= ;; hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag # sets the default TLS model and affects inlining. case $host_cpu in hppa*64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac ;; interix[[3-9]]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. ;; msdosdjgpp*) # Just because we use GCC doesn't mean we suddenly get shared libraries # on systems that don't support them. _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no enable_shared=no ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic fi ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ;; esac case $cc_basename in nvcc*) # Cuda Compiler Driver 2.2 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker ' if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)" fi ;; esac else # PORTME Check for flag to pass linker flags through the system compiler. case $host_os in aix*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' else _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' fi ;; mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). m4_if([$1], [GCJ], [], [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) ;; hpux9* | hpux10* | hpux11*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but # not for PA HP-UX. case $host_cpu in hppa*64*|ia64*) # +Z the default ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # PIC (with -KPIC) is the default. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in # old Intel for x86_64 which still supported -KPIC. ecc*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; # Lahey Fortran 8.1. lf95*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' ;; nagfor*) # NAG Fortran compiler _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; ccc*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # All Alpha code is PIC. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; xl* | bgxl* | bgf* | mpixl*) # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) # Sun Fortran 8.3 passes all unrecognized flags to the linker _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='' ;; *Sun\ F* | *Sun*Fortran*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' ;; *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' ;; *Intel*\ [[CF]]*Compiler*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; *Portland\ Group*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; esac ;; esac ;; newsos6) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; *nto* | *qnx*) # QNX uses GNU C++, but need to define -shared option too, otherwise # it will coredump. _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' ;; osf3* | osf4* | osf5*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' # All OSF/1 code is PIC. _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; rdos*) _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' ;; solaris*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' case $cc_basename in f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; *) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; esac ;; sunos4*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; sysv4 | sysv4.2uw2* | sysv4.3*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; sysv4*MP*) if test -d /usr/nec ;then _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' fi ;; sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; unicos*) _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; uts4*) _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; *) _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no ;; esac fi ]) case $host_os in # For platforms which do not support PIC, -DPIC is meaningless: *djgpp*) _LT_TAGVAR(lt_prog_compiler_pic, $1)= ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" ;; esac AC_CACHE_CHECK([for $compiler option to produce PIC], [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)], [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1) # # Check to make sure the PIC flag actually works. # if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in "" | " "*) ;; *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; esac], [_LT_TAGVAR(lt_prog_compiler_pic, $1)= _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) fi _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], [Additional compiler flags for building library objects]) _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], [How to pass a linker flag through the compiler]) # # Check to make sure the static flag actually works. # wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), $lt_tmp_static_flag, [], [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], [Compiler flag to prevent dynamic linking]) ])# _LT_COMPILER_PIC # _LT_LINKER_SHLIBS([TAGNAME]) # ---------------------------- # See if the linker supports building shared libraries. m4_defun([_LT_LINKER_SHLIBS], [AC_REQUIRE([LT_PATH_LD])dnl AC_REQUIRE([LT_PATH_NM])dnl m4_require([_LT_PATH_MANIFEST_TOOL])dnl m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl m4_require([_LT_TAG_COMPILER])dnl AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) m4_if([$1], [CXX], [ _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] case $host_os in aix[[4-9]]*) # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm # Also, AIX nm treats weak defined symbols like other global defined # symbols, whereas GNU nm marks them as "W". if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi ;; pw32*) _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" ;; cygwin* | mingw* | cegcc*) case $cc_basename in cl*) _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] ;; esac ;; linux* | k*bsd*-gnu | gnu*) _LT_TAGVAR(link_all_deplibs, $1)=no ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; esac ], [ runpath_var= _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_cmds, $1)= _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(compiler_needs_object, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(old_archive_from_new_cmds, $1)= _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= _LT_TAGVAR(thread_safe_flag_spec, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= # include_expsyms should be a list of space-separated symbols to be *always* # included in the symbol list _LT_TAGVAR(include_expsyms, $1)= # exclude_expsyms can be an extended regexp of symbols to exclude # it will be wrapped by ` (' and `)$', so one must not match beginning or # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', # as well as any symbol that contains `d'. _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out # platforms (ab)use it in PIC code, but their linkers get confused if # the symbol is explicitly referenced. Since portable code cannot # rely on this symbol name, it's probably fine to never include it in # preloaded symbol tables. # Exclude shared library initialization/finalization symbols. dnl Note also adjust exclude_expsyms for C++ above. extract_expsyms_cmds= case $host_os in cygwin* | mingw* | pw32* | cegcc*) # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++. if test "$GCC" != yes; then with_gnu_ld=no fi ;; interix*) # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; openbsd*) with_gnu_ld=no ;; linux* | k*bsd*-gnu | gnu*) _LT_TAGVAR(link_all_deplibs, $1)=no ;; esac _LT_TAGVAR(ld_shlibs, $1)=yes # On some targets, GNU ld is compatible enough with the native linker # that we're better off using the native interface for both. lt_use_gnu_ld_interface=no if test "$with_gnu_ld" = yes; then case $host_os in aix*) # The AIX port of GNU ld has always aspired to compatibility # with the native linker. However, as the warning in the GNU ld # block says, versions before 2.19.5* couldn't really create working # shared libraries, regardless of the interface used. case `$LD -v 2>&1` in *\ \(GNU\ Binutils\)\ 2.19.5*) ;; *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;; *\ \(GNU\ Binutils\)\ [[3-9]]*) ;; *) lt_use_gnu_ld_interface=yes ;; esac ;; *) lt_use_gnu_ld_interface=yes ;; esac fi if test "$lt_use_gnu_ld_interface" = yes; then # If archive_cmds runs LD, not CC, wlarc should be empty wlarc='${wl}' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' # ancient GNU ld didn't support --whole-archive et. al. if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi supports_anon_versioning=no case `$LD -v 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... *\ 2.11.*) ;; # other 2.11 versions *) supports_anon_versioning=yes ;; esac # See if GNU ld supports shared libraries. case $host_os in aix[[3-9]]*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: the GNU linker, at least up to release 2.19, is reported *** to be unable to reliably create shared libraries on AIX. *** Therefore, libtool is disabling shared libraries support. If you *** really care for shared libraries, you may want to install binutils *** 2.20 or above, or modify your PATH so that a non-GNU linker is found. *** You will then need to restart the configuration process. _LT_EOF fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='' ;; m68k) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; cygwin* | mingw* | pw32* | cegcc*) # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, # as there is no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file (1st line # is EXPORTS), use it as is; otherwise, prepend... _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; haiku*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(link_all_deplibs, $1)=yes ;; interix[[3-9]]*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) tmp_diet=no if test "$host_os" = linux-dietlibc; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ && test "$tmp_diet" = no then tmp_addflag=' $pic_flag' tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group f77 and f90 compilers _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 tmp_addflag=' -i_dynamic -nofor_main' ;; ifc* | ifort*) # Intel Fortran compiler tmp_addflag=' -nofor_main' ;; lf95*) # Lahey Fortran 8.1 _LT_TAGVAR(whole_archive_flag_spec, $1)= tmp_sharedflag='--shared' ;; xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; nvcc*) # Cuda Compiler Driver 2.2 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 tmp_sharedflag='-G' ;; esac _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' if test "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi case $cc_basename in xlf* | bgf* | bgxlf* | mpixlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' fi ;; solaris*) if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: The releases 2.8.* of the GNU linker cannot reliably *** create shared libraries on Solaris systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.9.1 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) case `$LD -v 2>&1` in *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) _LT_TAGVAR(ld_shlibs, $1)=no cat <<_LT_EOF 1>&2 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify *** your PATH or compiler configuration so that the native linker is *** used, and then restart. _LT_EOF ;; *) # For security reasons, it is highly recommended that you always # use absolute paths for naming shared libraries, and exclude the # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; sunos4*) _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' wlarc= _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then runpath_var= _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= fi else # PORTME fill in a description of your system's linker (not GNU ld) case $host_os in aix3*) _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. _LT_TAGVAR(hardcode_minus_L, $1)=yes if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. _LT_TAGVAR(hardcode_direct, $1)=unsupported fi ;; aix[[4-9]]*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm # Also, AIX nm treats weak defined symbols like other global # defined symbols, whereas GNU nm marks them as "W". if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then aix_use_runtimelinking=yes break fi done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. _LT_TAGVAR(archive_cmds, $1)='' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' if test "$GCC" = yes; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 _LT_TAGVAR(hardcode_direct, $1)=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)= fi ;; esac shared_flag='-shared' if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi _LT_TAGVAR(link_all_deplibs, $1)=no else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to export. _LT_TAGVAR(always_export_symbols, $1)=yes if test "$aix_use_runtimelinking" = yes; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. _LT_TAGVAR(allow_undefined_flag, $1)='-berok' # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$1]) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$1]) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' if test "$with_gnu_ld" = yes; then # We only use this code for GNU lds that support --whole-archive. _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' fi _LT_TAGVAR(archive_cmds_need_lc, $1)=yes # This is similar to how AIX traditionally builds its shared libraries. _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; amigaos*) case $host_cpu in powerpc) # see comment about AmigaOS4 .so support _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='' ;; m68k) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac ;; bsdi[[45]]*) _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic ;; cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in cl*) # Native MSVC _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes _LT_TAGVAR(file_list_spec, $1)='@' # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=".dll" # FIXME: Setting linknames here is a bad hack. _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; else sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; fi~ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' # Don't use ranlib _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ lt_tool_outputfile="@TOOL_OUTPUT@"~ case $lt_outputfile in *.exe|*.EXE) ;; *) lt_outputfile="$lt_outputfile.exe" lt_tool_outputfile="$lt_tool_outputfile.exe" ;; esac~ if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; $RM "$lt_outputfile.manifest"; fi' ;; *) # Assume MSVC wrapper _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=".dll" # FIXME: Setting linknames here is a bad hack. _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' # The linker will automatically build a .lib file if we build a DLL. _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' # FIXME: Should let the user specify the lib program. _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes ;; esac ;; darwin* | rhapsody*) _LT_DARWIN_LINKER_FEATURES($1) ;; dgux*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor # support. Future versions do this automatically, but an explicit c++rt0.o # does not break anything, and helps significantly (at the cost of a little # extra space). freebsd2.2*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; # Unfortunately, older versions of FreeBSD 2 do not have this feature. freebsd2.*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. freebsd* | dragonfly*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; hpux9*) if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_direct, $1)=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' ;; hpux10*) if test "$GCC" = yes && test "$with_gnu_ld" = no; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi if test "$with_gnu_ld" = no; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes fi ;; hpux11*) if test "$GCC" = yes && test "$with_gnu_ld" = no; then case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) m4_if($1, [], [ # Older versions of the 11.00 compiler do not understand -b yet # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) _LT_LINKER_OPTION([if $CC understands -b], _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b], [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])], [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags']) ;; esac fi if test "$with_gnu_ld" = no; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in hppa*64*|ia64*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. _LT_TAGVAR(hardcode_minus_L, $1)=yes ;; esac fi ;; irix5* | irix6* | nonstopux*) if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. # This should be the same for all languages, so no per-tag cache variable. AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol], [lt_cv_irix_exported_symbol], [save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" AC_LINK_IFELSE( [AC_LANG_SOURCE( [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], [C++], [[int foo (void) { return 0; }]], [Fortran 77], [[ subroutine foo end]], [Fortran], [[ subroutine foo end]])])], [lt_cv_irix_exported_symbol=yes], [lt_cv_irix_exported_symbol=no]) LDFLAGS="$save_LDFLAGS"]) if test "$lt_cv_irix_exported_symbol" = yes; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' fi else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(inherit_rpath, $1)=yes _LT_TAGVAR(link_all_deplibs, $1)=yes ;; netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; newsos6) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *nto* | *qnx*) ;; openbsd*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' else case $host_os in openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' ;; esac fi else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; os2*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' ;; osf3*) if test "$GCC" = yes; then _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' else _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: ;; osf4* | osf5*) # as osf3* with the addition of -msym flag if test "$GCC" = yes; then _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' else _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' fi _LT_TAGVAR(archive_cmds_need_lc, $1)='no' _LT_TAGVAR(hardcode_libdir_separator, $1)=: ;; solaris*) _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' if test "$GCC" = yes; then wlarc='${wl}' _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' else case `$CC -V 2>&1` in *"Compilers 5.0"*) wlarc='' _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' ;; *) wlarc='${wl}' _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' ;; esac fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) # The compiler driver will combine and reorder linker options, # but understands `-z linker_flag'. GCC discards it without `$wl', # but is careful enough not to reorder. # Supported since Solaris 2.6 (maybe 2.5.1?) if test "$GCC" = yes; then _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' else _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' fi ;; esac _LT_TAGVAR(link_all_deplibs, $1)=yes ;; sunos4*) if test "x$host_vendor" = xsequent; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; sysv4) case $host_vendor in sni) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? ;; siemens) ## LD is ld it makes a PLAMLIB ## CC just makes a GrossModule. _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' _LT_TAGVAR(hardcode_direct, $1)=no ;; motorola) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie ;; esac runpath_var='LD_RUN_PATH' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; sysv4.3*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' ;; sysv4*MP*) if test -d /usr/nec; then _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var=LD_RUN_PATH hardcode_runpath_var=yes _LT_TAGVAR(ld_shlibs, $1)=yes fi ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' runpath_var='LD_RUN_PATH' if test "$GCC" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; uts4*) _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(ld_shlibs, $1)=no ;; esac if test x$host_vendor = xsni; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym' ;; esac fi fi ]) AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl _LT_DECL([], [extract_expsyms_cmds], [2], [The commands to extract the exported symbol list from a shared archive]) # # Do we need to explicitly link libc? # case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in x|xyes) # Assume -lc should be added _LT_TAGVAR(archive_cmds_need_lc, $1)=yes if test "$enable_shared" = yes && test "$GCC" = yes; then case $_LT_TAGVAR(archive_cmds, $1) in *'~'*) # FIXME: we may have to deal with multi-command sequences. ;; '$CC '*) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. AC_CACHE_CHECK([whether -lc should be explicitly linked in], [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1), [$RM conftest* echo "$lt_simple_compile_test_code" > conftest.$ac_ext if AC_TRY_EVAL(ac_compile) 2>conftest.err; then soname=conftest lib=conftest libobjs=conftest.$ac_objext deplibs= wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) compiler_flags=-v linker_flags=-v verstring= output_objdir=. libname=conftest lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) _LT_TAGVAR(allow_undefined_flag, $1)= if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) then lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no else lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes fi _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag else cat conftest.err 1>&5 fi $RM conftest* ]) _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1) ;; esac fi ;; esac _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], [Whether or not to add -lc for building shared libraries]) _LT_TAGDECL([allow_libtool_libs_with_static_runtimes], [enable_shared_with_static_runtimes], [0], [Whether or not to disallow shared libs when runtime libs are static]) _LT_TAGDECL([], [export_dynamic_flag_spec], [1], [Compiler flag to allow reflexive dlopens]) _LT_TAGDECL([], [whole_archive_flag_spec], [1], [Compiler flag to generate shared objects directly from archives]) _LT_TAGDECL([], [compiler_needs_object], [1], [Whether the compiler copes with passing no objects directly]) _LT_TAGDECL([], [old_archive_from_new_cmds], [2], [Create an old-style archive from a shared archive]) _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], [Create a temporary old-style archive to link instead of a shared archive]) _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) _LT_TAGDECL([], [archive_expsym_cmds], [2]) _LT_TAGDECL([], [module_cmds], [2], [Commands used to build a loadable module if different from building a shared archive.]) _LT_TAGDECL([], [module_expsym_cmds], [2]) _LT_TAGDECL([], [with_gnu_ld], [1], [Whether we are building with GNU ld or not]) _LT_TAGDECL([], [allow_undefined_flag], [1], [Flag that allows shared libraries with undefined symbols to be built]) _LT_TAGDECL([], [no_undefined_flag], [1], [Flag that enforces no undefined symbols]) _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], [Flag to hardcode $libdir into a binary during linking. This must work even if $libdir does not exist]) _LT_TAGDECL([], [hardcode_libdir_separator], [1], [Whether we need a single "-rpath" flag with a separated argument]) _LT_TAGDECL([], [hardcode_direct], [0], [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_direct_absolute], [0], [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the resulting binary and the resulting library dependency is "absolute", i.e impossible to change by setting ${shlibpath_var} if the library is relocated]) _LT_TAGDECL([], [hardcode_minus_L], [0], [Set to "yes" if using the -LDIR flag during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_shlibpath_var], [0], [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into the resulting binary]) _LT_TAGDECL([], [hardcode_automatic], [0], [Set to "yes" if building a shared library automatically hardcodes DIR into the library and all subsequent libraries and executables linked against it]) _LT_TAGDECL([], [inherit_rpath], [0], [Set to yes if linker adds runtime paths of dependent libraries to runtime path list]) _LT_TAGDECL([], [link_all_deplibs], [0], [Whether libtool must link a program against all its dependency libraries]) _LT_TAGDECL([], [always_export_symbols], [0], [Set to "yes" if exported symbols are required]) _LT_TAGDECL([], [export_symbols_cmds], [2], [The commands to list exported symbols]) _LT_TAGDECL([], [exclude_expsyms], [1], [Symbols that should not be listed in the preloaded symbols]) _LT_TAGDECL([], [include_expsyms], [1], [Symbols that must always be exported]) _LT_TAGDECL([], [prelink_cmds], [2], [Commands necessary for linking programs (against libraries) with templates]) _LT_TAGDECL([], [postlink_cmds], [2], [Commands necessary for finishing linking programs]) _LT_TAGDECL([], [file_list_spec], [1], [Specify filename containing input files]) dnl FIXME: Not yet implemented dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], dnl [Compiler flag to generate thread safe objects]) ])# _LT_LINKER_SHLIBS # _LT_LANG_C_CONFIG([TAG]) # ------------------------ # Ensure that the configuration variables for a C compiler are suitably # defined. These variables are subsequently used by _LT_CONFIG to write # the compiler configuration to `libtool'. m4_defun([_LT_LANG_C_CONFIG], [m4_require([_LT_DECL_EGREP])dnl lt_save_CC="$CC" AC_LANG_PUSH(C) # Source file extension for C test sources. ac_ext=c # Object file extension for compiled C test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(){return(0);}' _LT_TAG_COMPILER # Save the default compiler, since it gets overwritten when the other # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. compiler_DEFAULT=$CC # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... if test -n "$compiler"; then _LT_COMPILER_NO_RTTI($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) LT_SYS_DLOPEN_SELF _LT_CMD_STRIPLIB # Report which library types will actually be built AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_CONFIG($1) fi AC_LANG_POP CC="$lt_save_CC" ])# _LT_LANG_C_CONFIG # _LT_LANG_CXX_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for a C++ compiler are suitably # defined. These variables are subsequently used by _LT_CONFIG to write # the compiler configuration to `libtool'. m4_defun([_LT_LANG_CXX_CONFIG], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl m4_require([_LT_DECL_EGREP])dnl m4_require([_LT_PATH_MANIFEST_TOOL])dnl if test -n "$CXX" && ( test "X$CXX" != "Xno" && ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || (test "X$CXX" != "Xg++"))) ; then AC_PROG_CXXCPP else _lt_caught_CXX_error=yes fi AC_LANG_PUSH(C++) _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(compiler_needs_object, $1)=no _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for C++ test sources. ac_ext=cpp # Object file extension for compiled C++ test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the CXX compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test "$_lt_caught_CXX_error" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="int some_variable = 0;" # Code to be used in simple link tests lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_CFLAGS=$CFLAGS lt_save_LD=$LD lt_save_GCC=$GCC GCC=$GXX lt_save_with_gnu_ld=$with_gnu_ld lt_save_path_LD=$lt_cv_path_LD if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx else $as_unset lt_cv_prog_gnu_ld fi if test -n "${lt_cv_path_LDCXX+set}"; then lt_cv_path_LD=$lt_cv_path_LDCXX else $as_unset lt_cv_path_LD fi test -z "${LDCXX+set}" || LD=$LDCXX CC=${CXX-"c++"} CFLAGS=$CXXFLAGS compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) if test -n "$compiler"; then # We don't want -fno-exception when compiling C++ code, so set the # no_builtin_flag separately if test "$GXX" = yes; then _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' else _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= fi if test "$GXX" = yes; then # Set up default GNU C++ configuration LT_PATH_LD # Check if GNU C++ uses GNU ld as the underlying linker, since the # archiving commands below assume that GNU ld is being used. if test "$with_gnu_ld" = yes; then _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' # If archive_cmds runs LD, not CC, wlarc should be empty # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to # investigate it a little bit more. (MM) wlarc='${wl}' # ancient GNU ld didn't support --whole-archive et. al. if eval "`$CC -print-prog-name=ld` --help 2>&1" | $GREP 'no-whole-archive' > /dev/null; then _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' else _LT_TAGVAR(whole_archive_flag_spec, $1)= fi else with_gnu_ld=no wlarc= # A generic and very simple default shared library creation # command for GNU C++ for the case where it uses the native # linker, instead of GNU ld. If possible, this setting should # overridden to take advantage of the native linker features on # the platform it is being used on. _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' fi # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else GXX=no with_gnu_ld=no wlarc= fi # PORTME: fill in a description of your system's C++ link characteristics AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) _LT_TAGVAR(ld_shlibs, $1)=yes case $host_os in aix3*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aix[[4-9]]*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' no_entry_flag="" else aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) for ld_flag in $LDFLAGS; do case $ld_flag in *-brtl*) aix_use_runtimelinking=yes break ;; esac done ;; esac exp_sym_flag='-bexport' no_entry_flag='-bnoentry' fi # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. _LT_TAGVAR(archive_cmds, $1)='' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(file_list_spec, $1)='${wl}-f,' if test "$GXX" = yes; then case $host_os in aix4.[[012]]|aix4.[[012]].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then # We have reworked collect2 : else # We have old collect2 _LT_TAGVAR(hardcode_direct, $1)=unsupported # It fails to find uninstalled libraries when the uninstalled # path is not listed in the libpath. Setting hardcode_minus_L # to unsupported forces relinking _LT_TAGVAR(hardcode_minus_L, $1)=yes _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)= fi esac shared_flag='-shared' if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi else # not using gcc if test "$host_cpu" = ia64; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else if test "$aix_use_runtimelinking" = yes; then shared_flag='${wl}-G' else shared_flag='${wl}-bM:SRE' fi fi fi _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to # export. _LT_TAGVAR(always_export_symbols, $1)=yes if test "$aix_use_runtimelinking" = yes; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. _LT_TAGVAR(allow_undefined_flag, $1)='-berok' # Determine the default libpath from the value encoded in an empty # executable. _LT_SYS_MODULE_PATH_AIX([$1]) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. _LT_SYS_MODULE_PATH_AIX([$1]) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' if test "$with_gnu_ld" = yes; then # We only use this code for GNU lds that support --whole-archive. _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' fi _LT_TAGVAR(archive_cmds_need_lc, $1)=yes # This is similar to how AIX traditionally builds its shared # libraries. _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' fi fi ;; beos*) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; chorus*) case $cc_basename in *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; cygwin* | mingw* | pw32* | cegcc*) case $GXX,$cc_basename in ,cl* | no,cl*) # Native MSVC # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes _LT_TAGVAR(file_list_spec, $1)='@' # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. shrext_cmds=".dll" # FIXME: Setting linknames here is a bad hack. _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; else $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; fi~ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes # Don't use ranlib _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ lt_tool_outputfile="@TOOL_OUTPUT@"~ case $lt_outputfile in *.exe|*.EXE) ;; *) lt_outputfile="$lt_outputfile.exe" lt_tool_outputfile="$lt_tool_outputfile.exe" ;; esac~ func_to_tool_file "$lt_outputfile"~ if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; $RM "$lt_outputfile.manifest"; fi' ;; *) # g++ # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, # as there is no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' # If the export-symbols file already is a .def file (1st line # is EXPORTS), use it as is; otherwise, prepend... _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then cp $export_symbols $output_objdir/$soname.def; else echo EXPORTS > $output_objdir/$soname.def; cat $export_symbols >> $output_objdir/$soname.def; fi~ $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; darwin* | rhapsody*) _LT_DARWIN_LINKER_FEATURES($1) ;; dgux*) case $cc_basename in ec++*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; ghcx*) # Green Hills C++ Compiler # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; freebsd2.*) # C++ shared libraries reported to be fairly broken before # switch to ELF _LT_TAGVAR(ld_shlibs, $1)=no ;; freebsd-elf*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; freebsd* | dragonfly*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_TAGVAR(ld_shlibs, $1)=yes ;; haiku*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(link_all_deplibs, $1)=yes ;; hpux9*) _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, # but as the default # location of the library. case $cc_basename in CC*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aCC*) _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test "$GXX" = yes; then _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; hpux10*|hpux11*) if test $with_gnu_ld = no; then _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: case $host_cpu in hppa*64*|ia64*) ;; *) _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' ;; esac fi case $host_cpu in hppa*64*|ia64*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no ;; *) _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, # but as the default # location of the library. ;; esac case $cc_basename in CC*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; aCC*) case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test "$GXX" = yes; then if test $with_gnu_ld = no; then case $host_cpu in hppa*64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac fi else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; interix[[3-9]]*) _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; irix5* | irix6*) case $cc_basename in CC*) # SGI C++ _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' # Archives containing C++ object files must be created using # "CC -ar", where "CC" is the IRIX C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' ;; *) if test "$GXX" = yes; then if test "$with_gnu_ld" = no; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib' fi fi _LT_TAGVAR(link_all_deplibs, $1)=yes ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: _LT_TAGVAR(inherit_rpath, $1)=yes ;; linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' # Archives containing C++ object files must be created using # "CC -Bstatic", where "CC" is the KAI C++ compiler. _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; icpc* | ecpc* ) # Intel C++ with_gnu_ld=yes # version 8.0 and above of icpc choke on multiply defined symbols # if we add $predep_objects and $postdep_objects, however 7.1 and # earlier do not add the objects themselves. case `$CC -V 2>&1` in *"Version 7."*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' ;; *) # Version 8.0 or newer tmp_idyn= case $host_cpu in ia64*) tmp_idyn=' -i_dynamic';; esac _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' ;; esac _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' ;; pgCC* | pgcpp*) # Portland Group C++ compiler case `$CC -V` in *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*) _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ $RANLIB $oldlib' _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' ;; *) # Version 6 and above use weak symbols _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' ;; cxx*) # Compaq C++ _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' runpath_var=LD_RUN_PATH _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' ;; xl* | mpixl* | bgxl*) # IBM XL 8.0 on PPC, with GNU ld _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' if test "x$supports_anon_versioning" = xyes; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi ;; *) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes # Not sure whether something based on # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 # would be better. output_verbose_link_cmd='func_echo_all' # Archives containing C++ object files must be created using # "CC -xar", where "CC" is the Sun C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' ;; esac ;; esac ;; lynxos*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; m88k*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; mvs*) case $cc_basename in cxx*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' wlarc= _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no fi # Workaround some broken pre-1.5 toolchains output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' ;; *nto* | *qnx*) _LT_TAGVAR(ld_shlibs, $1)=yes ;; openbsd2*) # C++ shared libraries are fairly broken _LT_TAGVAR(ld_shlibs, $1)=no ;; openbsd*) if test -f /usr/libexec/ld.so; then _LT_TAGVAR(hardcode_direct, $1)=yes _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=yes _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib' _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' fi output_verbose_link_cmd=func_echo_all else _LT_TAGVAR(ld_shlibs, $1)=no fi ;; osf3* | osf4* | osf5*) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler # KCC will only create a shared library if the output file # ends with ".so" (or ".sl" for HP-UX), so rename the library # to its proper name (with version) after linking. _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Archives containing C++ object files must be created using # the KAI C++ compiler. case $host in osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; esac ;; RCC*) # Rational C++ 2.4.1 # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; cxx*) case $host in osf3*) _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' ;; *) _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ echo "-hidden">> $lib.exp~ $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~ $RM $lib.exp' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' ;; esac _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. # # There doesn't appear to be a way to prevent this compiler from # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test "$GXX" = yes && test "$with_gnu_ld" = no; then _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' case $host in osf3*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' ;; esac _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=: # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no fi ;; esac ;; psos*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; sunos4*) case $cc_basename in CC*) # Sun C++ 4.x # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; lcc*) # Lucid # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; solaris*) case $cc_basename in CC* | sunCC*) # Sun C++ 4.2, 5.x and Centerline C++ _LT_TAGVAR(archive_cmds_need_lc,$1)=yes _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_shlibpath_var, $1)=no case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) # The compiler driver will combine and reorder linker options, # but understands `-z linker_flag'. # Supported since Solaris 2.6 (maybe 2.5.1?) _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; esac _LT_TAGVAR(link_all_deplibs, $1)=yes output_verbose_link_cmd='func_echo_all' # Archives containing C++ object files must be created using # "CC -xar", where "CC" is the Sun C++ compiler. This is # necessary to make sure instantiated templates are included # in the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' ;; gcx*) # Green Hills C++ Compiler _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' # The C++ compiler must be used to create the archive. _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' ;; *) # GNU C++ compiler with Solaris linker if test "$GXX" = yes && test "$with_gnu_ld" = no; then _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' if $CC --version | $GREP -v '^2\.7' > /dev/null; then _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else # g++ 2.7 appears to require `-G' NOT `-shared' on this # platform. _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' case $host_os in solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; *) _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' ;; esac fi ;; esac ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no runpath_var='LD_RUN_PATH' case $cc_basename in CC*) _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; sysv5* | sco3.2v5* | sco5v6*) # Note: We can NOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text' _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs' _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(hardcode_shlibpath_var, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir' _LT_TAGVAR(hardcode_libdir_separator, $1)=':' _LT_TAGVAR(link_all_deplibs, $1)=yes _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' runpath_var='LD_RUN_PATH' case $cc_basename in CC*) _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~ '"$_LT_TAGVAR(old_archive_cmds, $1)" _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~ '"$_LT_TAGVAR(reload_cmds, $1)" ;; *) _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' ;; esac ;; tandem*) case $cc_basename in NCC*) # NonStop-UX NCC 3.20 # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac ;; vxworks*) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; *) # FIXME: insert proper C++ library support _LT_TAGVAR(ld_shlibs, $1)=no ;; esac AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no _LT_TAGVAR(GCC, $1)="$GXX" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_SYS_HIDDEN_LIBDEPS($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS LDCXX=$LD LD=$lt_save_LD GCC=$lt_save_GCC with_gnu_ld=$lt_save_with_gnu_ld lt_cv_path_LDCXX=$lt_cv_path_LD lt_cv_path_LD=$lt_save_path_LD lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld fi # test "$_lt_caught_CXX_error" != yes AC_LANG_POP ])# _LT_LANG_CXX_CONFIG # _LT_FUNC_STRIPNAME_CNF # ---------------------- # func_stripname_cnf prefix suffix name # strip PREFIX and SUFFIX off of NAME. # PREFIX and SUFFIX must not contain globbing or regex special # characters, hashes, percent signs, but SUFFIX may contain a leading # dot (in which case that matches only a dot). # # This function is identical to the (non-XSI) version of func_stripname, # except this one can be used by m4 code that may be executed by configure, # rather than the libtool script. m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl AC_REQUIRE([_LT_DECL_SED]) AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH]) func_stripname_cnf () { case ${2} in .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; esac } # func_stripname_cnf ])# _LT_FUNC_STRIPNAME_CNF # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) # --------------------------------- # Figure out "hidden" library dependencies from verbose # compiler output when linking a shared library. # Parse the compiler output and extract the necessary # objects, libraries and library flags. m4_defun([_LT_SYS_HIDDEN_LIBDEPS], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl # Dependencies to place before and after the object being linked: _LT_TAGVAR(predep_objects, $1)= _LT_TAGVAR(postdep_objects, $1)= _LT_TAGVAR(predeps, $1)= _LT_TAGVAR(postdeps, $1)= _LT_TAGVAR(compiler_lib_search_path, $1)= dnl we can't use the lt_simple_compile_test_code here, dnl because it contains code intended for an executable, dnl not a library. It's possible we should let each dnl tag define a new lt_????_link_test_code variable, dnl but it's only used here... m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF int a; void foo (void) { a = 0; } _LT_EOF ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF class Foo { public: Foo (void) { a = 0; } private: int a; }; _LT_EOF ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF subroutine foo implicit none integer*4 a a=0 return end _LT_EOF ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF subroutine foo implicit none integer a a=0 return end _LT_EOF ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF public class foo { private int a; public void bar (void) { a = 0; } }; _LT_EOF ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF package foo func foo() { } _LT_EOF ]) _lt_libdeps_save_CFLAGS=$CFLAGS case "$CC $CFLAGS " in #( *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; esac dnl Parse the compiler output and extract the necessary dnl objects, libraries and library flags. if AC_TRY_EVAL(ac_compile); then # Parse the compiler output and extract the necessary # objects, libraries and library flags. # Sentinel used to keep track of whether or not we are before # the conftest object file. pre_test_object_deps_done=no for p in `eval "$output_verbose_link_cmd"`; do case ${prev}${p} in -L* | -R* | -l*) # Some compilers place space between "-{L,R}" and the path. # Remove the space. if test $p = "-L" || test $p = "-R"; then prev=$p continue fi # Expand the sysroot to ease extracting the directories later. if test -z "$prev"; then case $p in -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; esac fi case $p in =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; esac if test "$pre_test_object_deps_done" = no; then case ${prev} in -L | -R) # Internal compiler library paths should come after those # provided the user. The postdeps already come after the # user supplied libs so there is no need to process them. if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" else _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" fi ;; # The "-l" case would never come before the object being # linked, so don't bother handling this case. esac else if test -z "$_LT_TAGVAR(postdeps, $1)"; then _LT_TAGVAR(postdeps, $1)="${prev}${p}" else _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}" fi fi prev= ;; *.lto.$objext) ;; # Ignore GCC LTO objects *.$objext) # This assumes that the test object file only shows up # once in the compiler output. if test "$p" = "conftest.$objext"; then pre_test_object_deps_done=yes continue fi if test "$pre_test_object_deps_done" = no; then if test -z "$_LT_TAGVAR(predep_objects, $1)"; then _LT_TAGVAR(predep_objects, $1)="$p" else _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" fi else if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then _LT_TAGVAR(postdep_objects, $1)="$p" else _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" fi fi ;; *) ;; # Ignore the rest. esac done # Clean up. rm -f a.out a.exe else echo "libtool.m4: error: problem compiling $1 test program" fi $RM -f confest.$objext CFLAGS=$_lt_libdeps_save_CFLAGS # PORTME: override above test on systems where it is broken m4_if([$1], [CXX], [case $host_os in interix[[3-9]]*) # Interix 3.5 installs completely hosed .la files for C++, so rather than # hack all around it, let's just trust "g++" to DTRT. _LT_TAGVAR(predep_objects,$1)= _LT_TAGVAR(postdep_objects,$1)= _LT_TAGVAR(postdeps,$1)= ;; linux*) case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C++ 5.9 # The more standards-conforming stlport4 library is # incompatible with the Cstd library. Avoid specifying # it if it's in CXXFLAGS. Ignore libCrun as # -library=stlport4 depends on it. case " $CXX $CXXFLAGS " in *" -library=stlport4 "*) solaris_use_stlport4=yes ;; esac if test "$solaris_use_stlport4" != yes; then _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' fi ;; esac ;; solaris*) case $cc_basename in CC* | sunCC*) # The more standards-conforming stlport4 library is # incompatible with the Cstd library. Avoid specifying # it if it's in CXXFLAGS. Ignore libCrun as # -library=stlport4 depends on it. case " $CXX $CXXFLAGS " in *" -library=stlport4 "*) solaris_use_stlport4=yes ;; esac # Adding this requires a known-good setup of shared libraries for # Sun compiler versions before 5.6, else PIC objects from an old # archive will be linked into the output, leading to subtle bugs. if test "$solaris_use_stlport4" != yes; then _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' fi ;; esac ;; esac ]) case " $_LT_TAGVAR(postdeps, $1) " in *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; esac _LT_TAGVAR(compiler_lib_search_dirs, $1)= if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'` fi _LT_TAGDECL([], [compiler_lib_search_dirs], [1], [The directories searched by this compiler when creating a shared library]) _LT_TAGDECL([], [predep_objects], [1], [Dependencies to place before and after the objects being linked to create a shared library]) _LT_TAGDECL([], [postdep_objects], [1]) _LT_TAGDECL([], [predeps], [1]) _LT_TAGDECL([], [postdeps], [1]) _LT_TAGDECL([], [compiler_lib_search_path], [1], [The library search path used internally by the compiler when linking a shared library]) ])# _LT_SYS_HIDDEN_LIBDEPS # _LT_LANG_F77_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for a Fortran 77 compiler are # suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_F77_CONFIG], [AC_LANG_PUSH(Fortran 77) if test -z "$F77" || test "X$F77" = "Xno"; then _lt_disable_F77=yes fi _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for f77 test sources. ac_ext=f # Object file extension for compiled f77 test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the F77 compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test "$_lt_disable_F77" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t return end " # Code to be used in simple link tests lt_simple_link_test_code="\ program t end " # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC lt_save_CFLAGS=$CFLAGS CC=${F77-"f77"} CFLAGS=$FFLAGS compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) GCC=$G77 if test -n "$compiler"; then AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_TAGVAR(GCC, $1)="$G77" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" GCC=$lt_save_GCC CC="$lt_save_CC" CFLAGS="$lt_save_CFLAGS" fi # test "$_lt_disable_F77" != yes AC_LANG_POP ])# _LT_LANG_F77_CONFIG # _LT_LANG_FC_CONFIG([TAG]) # ------------------------- # Ensure that the configuration variables for a Fortran compiler are # suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_FC_CONFIG], [AC_LANG_PUSH(Fortran) if test -z "$FC" || test "X$FC" = "Xno"; then _lt_disable_FC=yes fi _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(allow_undefined_flag, $1)= _LT_TAGVAR(always_export_symbols, $1)=no _LT_TAGVAR(archive_expsym_cmds, $1)= _LT_TAGVAR(export_dynamic_flag_spec, $1)= _LT_TAGVAR(hardcode_direct, $1)=no _LT_TAGVAR(hardcode_direct_absolute, $1)=no _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= _LT_TAGVAR(hardcode_libdir_separator, $1)= _LT_TAGVAR(hardcode_minus_L, $1)=no _LT_TAGVAR(hardcode_automatic, $1)=no _LT_TAGVAR(inherit_rpath, $1)=no _LT_TAGVAR(module_cmds, $1)= _LT_TAGVAR(module_expsym_cmds, $1)= _LT_TAGVAR(link_all_deplibs, $1)=unknown _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_cmds _LT_TAGVAR(no_undefined_flag, $1)= _LT_TAGVAR(whole_archive_flag_spec, $1)= _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no # Source file extension for fc test sources. ac_ext=${ac_fc_srcext-f} # Object file extension for compiled fc test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # No sense in running all these tests if we already determined that # the FC compiler isn't working. Some variables (like enable_shared) # are currently assumed to apply to all compilers on this platform, # and will be corrupted by setting them based on a non-working compiler. if test "$_lt_disable_FC" != yes; then # Code to be used in simple compile tests lt_simple_compile_test_code="\ subroutine t return end " # Code to be used in simple link tests lt_simple_link_test_code="\ program t end " # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_GCC=$GCC lt_save_CFLAGS=$CFLAGS CC=${FC-"f95"} CFLAGS=$FCFLAGS compiler=$CC GCC=$ac_cv_fc_compiler_gnu _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) if test -n "$compiler"; then AC_MSG_CHECKING([if libtool supports shared libraries]) AC_MSG_RESULT([$can_build_shared]) AC_MSG_CHECKING([whether to build shared libraries]) test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) test "$enable_shared" = yes && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' fi ;; aix[[4-9]]*) if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then test "$enable_shared" = yes && enable_static=no fi ;; esac AC_MSG_RESULT([$enable_shared]) AC_MSG_CHECKING([whether to build static libraries]) # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes AC_MSG_RESULT([$enable_static]) _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu" _LT_TAGVAR(LD, $1)="$LD" ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... _LT_SYS_HIDDEN_LIBDEPS($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_SYS_DYNAMIC_LINKER($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi # test -n "$compiler" GCC=$lt_save_GCC CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS fi # test "$_lt_disable_FC" != yes AC_LANG_POP ])# _LT_LANG_FC_CONFIG # _LT_LANG_GCJ_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for the GNU Java Compiler compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_GCJ_CONFIG], [AC_REQUIRE([LT_PROG_GCJ])dnl AC_LANG_SAVE # Source file extension for Java test sources. ac_ext=java # Object file extension for compiled Java test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="class foo {}" # Code to be used in simple link tests lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_CFLAGS=$CFLAGS lt_save_GCC=$GCC GCC=yes CC=${GCJ-"gcj"} CFLAGS=$GCJFLAGS compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_TAGVAR(LD, $1)="$LD" _LT_CC_BASENAME([$compiler]) # GCJ did not exist at the time GCC didn't implicitly link libc in. _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_cmds ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... if test -n "$compiler"; then _LT_COMPILER_NO_RTTI($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi AC_LANG_RESTORE GCC=$lt_save_GCC CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS ])# _LT_LANG_GCJ_CONFIG # _LT_LANG_GO_CONFIG([TAG]) # -------------------------- # Ensure that the configuration variables for the GNU Go compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_GO_CONFIG], [AC_REQUIRE([LT_PROG_GO])dnl AC_LANG_SAVE # Source file extension for Go test sources. ac_ext=go # Object file extension for compiled Go test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code="package main; func main() { }" # Code to be used in simple link tests lt_simple_link_test_code='package main; func main() { }' # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC=$CC lt_save_CFLAGS=$CFLAGS lt_save_GCC=$GCC GCC=yes CC=${GOC-"gccgo"} CFLAGS=$GOFLAGS compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_TAGVAR(LD, $1)="$LD" _LT_CC_BASENAME([$compiler]) # Go did not exist at the time GCC didn't implicitly link libc in. _LT_TAGVAR(archive_cmds_need_lc, $1)=no _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds _LT_TAGVAR(reload_flag, $1)=$reload_flag _LT_TAGVAR(reload_cmds, $1)=$reload_cmds ## CAVEAT EMPTOR: ## There is no encapsulation within the following macros, do not change ## the running order or otherwise move them around unless you know exactly ## what you are doing... if test -n "$compiler"; then _LT_COMPILER_NO_RTTI($1) _LT_COMPILER_PIC($1) _LT_COMPILER_C_O($1) _LT_COMPILER_FILE_LOCKS($1) _LT_LINKER_SHLIBS($1) _LT_LINKER_HARDCODE_LIBPATH($1) _LT_CONFIG($1) fi AC_LANG_RESTORE GCC=$lt_save_GCC CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS ])# _LT_LANG_GO_CONFIG # _LT_LANG_RC_CONFIG([TAG]) # ------------------------- # Ensure that the configuration variables for the Windows resource compiler # are suitably defined. These variables are subsequently used by _LT_CONFIG # to write the compiler configuration to `libtool'. m4_defun([_LT_LANG_RC_CONFIG], [AC_REQUIRE([LT_PROG_RC])dnl AC_LANG_SAVE # Source file extension for RC test sources. ac_ext=rc # Object file extension for compiled RC test sources. objext=o _LT_TAGVAR(objext, $1)=$objext # Code to be used in simple compile tests lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' # Code to be used in simple link tests lt_simple_link_test_code="$lt_simple_compile_test_code" # ltmain only uses $CC for tagged configurations so make sure $CC is set. _LT_TAG_COMPILER # save warnings/boilerplate of simple test code _LT_COMPILER_BOILERPLATE _LT_LINKER_BOILERPLATE # Allow CC to be a program name with arguments. lt_save_CC="$CC" lt_save_CFLAGS=$CFLAGS lt_save_GCC=$GCC GCC= CC=${RC-"windres"} CFLAGS= compiler=$CC _LT_TAGVAR(compiler, $1)=$CC _LT_CC_BASENAME([$compiler]) _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes if test -n "$compiler"; then : _LT_CONFIG($1) fi GCC=$lt_save_GCC AC_LANG_RESTORE CC=$lt_save_CC CFLAGS=$lt_save_CFLAGS ])# _LT_LANG_RC_CONFIG # LT_PROG_GCJ # ----------- AC_DEFUN([LT_PROG_GCJ], [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], [AC_CHECK_TOOL(GCJ, gcj,) test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" AC_SUBST(GCJFLAGS)])])[]dnl ]) # Old name: AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_GCJ], []) # LT_PROG_GO # ---------- AC_DEFUN([LT_PROG_GO], [AC_CHECK_TOOL(GOC, gccgo,) ]) # LT_PROG_RC # ---------- AC_DEFUN([LT_PROG_RC], [AC_CHECK_TOOL(RC, windres,) ]) # Old name: AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_RC], []) # _LT_DECL_EGREP # -------------- # If we don't have a new enough Autoconf to choose the best grep # available, choose the one first in the user's PATH. m4_defun([_LT_DECL_EGREP], [AC_REQUIRE([AC_PROG_EGREP])dnl AC_REQUIRE([AC_PROG_FGREP])dnl test -z "$GREP" && GREP=grep _LT_DECL([], [GREP], [1], [A grep program that handles long lines]) _LT_DECL([], [EGREP], [1], [An ERE matcher]) _LT_DECL([], [FGREP], [1], [A literal string matcher]) dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too AC_SUBST([GREP]) ]) # _LT_DECL_OBJDUMP # -------------- # If we don't have a new enough Autoconf to choose the best objdump # available, choose the one first in the user's PATH. m4_defun([_LT_DECL_OBJDUMP], [AC_CHECK_TOOL(OBJDUMP, objdump, false) test -z "$OBJDUMP" && OBJDUMP=objdump _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) AC_SUBST([OBJDUMP]) ]) # _LT_DECL_DLLTOOL # ---------------- # Ensure DLLTOOL variable is set. m4_defun([_LT_DECL_DLLTOOL], [AC_CHECK_TOOL(DLLTOOL, dlltool, false) test -z "$DLLTOOL" && DLLTOOL=dlltool _LT_DECL([], [DLLTOOL], [1], [DLL creation program]) AC_SUBST([DLLTOOL]) ]) # _LT_DECL_SED # ------------ # Check for a fully-functional sed program, that truncates # as few characters as possible. Prefer GNU sed if found. m4_defun([_LT_DECL_SED], [AC_PROG_SED test -z "$SED" && SED=sed Xsed="$SED -e 1s/^X//" _LT_DECL([], [SED], [1], [A sed program that does not truncate output]) _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], [Sed that helps us avoid accidentally triggering echo(1) options like -n]) ])# _LT_DECL_SED m4_ifndef([AC_PROG_SED], [ ############################################################ # NOTE: This macro has been submitted for inclusion into # # GNU Autoconf as AC_PROG_SED. When it is available in # # a released version of Autoconf we should remove this # # macro and use it instead. # ############################################################ m4_defun([AC_PROG_SED], [AC_MSG_CHECKING([for a sed that does not truncate output]) AC_CACHE_VAL(lt_cv_path_SED, [# Loop through the user's path and test for sed and gsed. # Then use that list of sed's as ones to test for truncation. as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for lt_ac_prog in sed gsed; do for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" fi done done done IFS=$as_save_IFS lt_ac_max=0 lt_ac_count=0 # Add /usr/xpg4/bin/sed as it is typically found on Solaris # along with /bin/sed that truncates output. for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do test ! -f $lt_ac_sed && continue cat /dev/null > conftest.in lt_ac_count=0 echo $ECHO_N "0123456789$ECHO_C" >conftest.in # Check for GNU sed and select it if it is found. if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then lt_cv_path_SED=$lt_ac_sed break fi while true; do cat conftest.in conftest.in >conftest.tmp mv conftest.tmp conftest.in cp conftest.in conftest.nl echo >>conftest.nl $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break cmp -s conftest.out conftest.nl || break # 10000 chars as input seems more than enough test $lt_ac_count -gt 10 && break lt_ac_count=`expr $lt_ac_count + 1` if test $lt_ac_count -gt $lt_ac_max; then lt_ac_max=$lt_ac_count lt_cv_path_SED=$lt_ac_sed fi done done ]) SED=$lt_cv_path_SED AC_SUBST([SED]) AC_MSG_RESULT([$SED]) ])#AC_PROG_SED ])#m4_ifndef # Old name: AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([LT_AC_PROG_SED], []) # _LT_CHECK_SHELL_FEATURES # ------------------------ # Find out whether the shell is Bourne or XSI compatible, # or has some other useful features. m4_defun([_LT_CHECK_SHELL_FEATURES], [AC_MSG_CHECKING([whether the shell understands some XSI constructs]) # Try some XSI features xsi_shell=no ( _lt_dummy="a/b/c" test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \ = c,a/b,b/c, \ && eval 'test $(( 1 + 1 )) -eq 2 \ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ && xsi_shell=yes AC_MSG_RESULT([$xsi_shell]) _LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell']) AC_MSG_CHECKING([whether the shell understands "+="]) lt_shell_append=no ( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \ >/dev/null 2>&1 \ && lt_shell_append=yes AC_MSG_RESULT([$lt_shell_append]) _LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append']) if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else lt_unset=false fi _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl # test EBCDIC or ASCII case `echo X|tr X '\101'` in A) # ASCII based system # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr lt_SP2NL='tr \040 \012' lt_NL2SP='tr \015\012 \040\040' ;; *) # EBCDIC based system lt_SP2NL='tr \100 \n' lt_NL2SP='tr \r\n \100\100' ;; esac _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl ])# _LT_CHECK_SHELL_FEATURES # _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY) # ------------------------------------------------------ # In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and # '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY. m4_defun([_LT_PROG_FUNCTION_REPLACE], [dnl { sed -e '/^$1 ()$/,/^} # $1 /c\ $1 ()\ {\ m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1]) } # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: ]) # _LT_PROG_REPLACE_SHELLFNS # ------------------------- # Replace existing portable implementations of several shell functions with # equivalent extended shell implementations where those features are available.. m4_defun([_LT_PROG_REPLACE_SHELLFNS], [if test x"$xsi_shell" = xyes; then _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac]) _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl func_basename_result="${1##*/}"]) _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl case ${1} in */*) func_dirname_result="${1%/*}${2}" ;; * ) func_dirname_result="${3}" ;; esac func_basename_result="${1##*/}"]) _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are # positional parameters, so assign one to ordinary parameter first. func_stripname_result=${3} func_stripname_result=${func_stripname_result#"${1}"} func_stripname_result=${func_stripname_result%"${2}"}]) _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl func_split_long_opt_name=${1%%=*} func_split_long_opt_arg=${1#*=}]) _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl func_split_short_opt_arg=${1#??} func_split_short_opt_name=${1%"$func_split_short_opt_arg"}]) _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl case ${1} in *.lo) func_lo2o_result=${1%.lo}.${objext} ;; *) func_lo2o_result=${1} ;; esac]) _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo]) _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))]) _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}]) fi if test x"$lt_shell_append" = xyes; then _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"]) _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl func_quote_for_eval "${2}" dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \ eval "${1}+=\\\\ \\$func_quote_for_eval_result"]) # Save a `func_append' function call where possible by direct use of '+=' sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: else # Save a `func_append' function call even when '+=' is not available sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ && mv -f "$cfgfile.tmp" "$cfgfile" \ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") test 0 -eq $? || _lt_function_replace_fail=: fi if test x"$_lt_function_replace_fail" = x":"; then AC_MSG_WARN([Unable to substitute extended shell functions in $ofile]) fi ]) # _LT_PATH_CONVERSION_FUNCTIONS # ----------------------------- # Determine which file name conversion functions should be used by # func_to_host_file (and, implicitly, by func_to_host_path). These are needed # for certain cross-compile configurations and native mingw. m4_defun([_LT_PATH_CONVERSION_FUNCTIONS], [AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl AC_MSG_CHECKING([how to convert $build file names to $host format]) AC_CACHE_VAL(lt_cv_to_host_file_cmd, [case $host in *-*-mingw* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 ;; esac ;; *-*-cygwin* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin ;; *-*-cygwin* ) lt_cv_to_host_file_cmd=func_convert_file_noop ;; * ) # otherwise, assume *nix lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin ;; esac ;; * ) # unhandled hosts (and "normal" native builds) lt_cv_to_host_file_cmd=func_convert_file_noop ;; esac ]) to_host_file_cmd=$lt_cv_to_host_file_cmd AC_MSG_RESULT([$lt_cv_to_host_file_cmd]) _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd], [0], [convert $build file names to $host format])dnl AC_MSG_CHECKING([how to convert $build file names to toolchain format]) AC_CACHE_VAL(lt_cv_to_tool_file_cmd, [#assume ordinary cross tools, or native build. lt_cv_to_tool_file_cmd=func_convert_file_noop case $host in *-*-mingw* ) case $build in *-*-mingw* ) # actually msys lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 ;; esac ;; esac ]) to_tool_file_cmd=$lt_cv_to_tool_file_cmd AC_MSG_RESULT([$lt_cv_to_tool_file_cmd]) _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], [0], [convert $build files to toolchain format])dnl ])# _LT_PATH_CONVERSION_FUNCTIONS gnomint-1.3.0/m4/lt~obsolete.m40000644000175000017500000001375612672052505013263 00000000000000# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- # # Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004. # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 5 lt~obsolete.m4 # These exist entirely to fool aclocal when bootstrapping libtool. # # In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN) # which have later been changed to m4_define as they aren't part of the # exported API, or moved to Autoconf or Automake where they belong. # # The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN # in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us # using a macro with the same name in our local m4/libtool.m4 it'll # pull the old libtool.m4 in (it doesn't see our shiny new m4_define # and doesn't know about Autoconf macros at all.) # # So we provide this file, which has a silly filename so it's always # included after everything else. This provides aclocal with the # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything # because those macros already exist, or will be overwritten later. # We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. # # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. # Yes, that means every name once taken will need to remain here until # we give up compatibility with versions before 1.7, at which point # we need to keep only those names which we still refer to. # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])]) m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])]) m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])]) m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])]) m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])]) m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])]) m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])]) gnomint-1.3.0/m4/ltoptions.m40000644000175000017500000003007312672052505012733 00000000000000# Helper functions for option handling. -*- Autoconf -*- # # Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation, # Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 7 ltoptions.m4 # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) # ------------------------------------------ m4_define([_LT_MANGLE_OPTION], [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) # --------------------------------------- # Set option OPTION-NAME for macro MACRO-NAME, and if there is a # matching handler defined, dispatch to it. Other OPTION-NAMEs are # saved as a flag. m4_define([_LT_SET_OPTION], [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), _LT_MANGLE_DEFUN([$1], [$2]), [m4_warning([Unknown $1 option `$2'])])[]dnl ]) # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) # ------------------------------------------------------------ # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. m4_define([_LT_IF_OPTION], [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) # ------------------------------------------------------- # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME # are set. m4_define([_LT_UNLESS_OPTIONS], [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), [m4_define([$0_found])])])[]dnl m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 ])[]dnl ]) # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) # ---------------------------------------- # OPTION-LIST is a space-separated list of Libtool options associated # with MACRO-NAME. If any OPTION has a matching handler declared with # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about # the unknown option and exit. m4_defun([_LT_SET_OPTIONS], [# Set options m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), [_LT_SET_OPTION([$1], _LT_Option)]) m4_if([$1],[LT_INIT],[ dnl dnl Simply set some default values (i.e off) if boolean options were not dnl specified: _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no ]) _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no ]) dnl dnl If no reference was made to various pairs of opposing options, then dnl we run the default mode handler for the pair. For example, if neither dnl `shared' nor `disable-shared' was passed, we enable building of shared dnl archives by default: _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], [_LT_ENABLE_FAST_INSTALL]) ]) ])# _LT_SET_OPTIONS ## --------------------------------- ## ## Macros to handle LT_INIT options. ## ## --------------------------------- ## # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) # ----------------------------------------- m4_define([_LT_MANGLE_DEFUN], [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) # ----------------------------------------------- m4_define([LT_OPTION_DEFINE], [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl ])# LT_OPTION_DEFINE # dlopen # ------ LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes ]) AU_DEFUN([AC_LIBTOOL_DLOPEN], [_LT_SET_OPTION([LT_INIT], [dlopen]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `dlopen' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) # win32-dll # --------- # Declare package support for building win32 dll's. LT_OPTION_DEFINE([LT_INIT], [win32-dll], [enable_win32_dll=yes case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) AC_CHECK_TOOL(AS, as, false) AC_CHECK_TOOL(DLLTOOL, dlltool, false) AC_CHECK_TOOL(OBJDUMP, objdump, false) ;; esac test -z "$AS" && AS=as _LT_DECL([], [AS], [1], [Assembler program])dnl test -z "$DLLTOOL" && DLLTOOL=dlltool _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl test -z "$OBJDUMP" && OBJDUMP=objdump _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl ])# win32-dll AU_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_REQUIRE([AC_CANONICAL_HOST])dnl _LT_SET_OPTION([LT_INIT], [win32-dll]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `win32-dll' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) # _LT_ENABLE_SHARED([DEFAULT]) # ---------------------------- # implement the --enable-shared flag, and supports the `shared' and # `disable-shared' LT_INIT options. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. m4_define([_LT_ENABLE_SHARED], [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([shared], [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_shared=yes ;; no) enable_shared=no ;; *) enable_shared=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_shared=yes fi done IFS="$lt_save_ifs" ;; esac], [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) _LT_DECL([build_libtool_libs], [enable_shared], [0], [Whether or not to build shared libraries]) ])# _LT_ENABLE_SHARED LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) # Old names: AC_DEFUN([AC_ENABLE_SHARED], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) ]) AC_DEFUN([AC_DISABLE_SHARED], [_LT_SET_OPTION([LT_INIT], [disable-shared]) ]) AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_ENABLE_SHARED], []) dnl AC_DEFUN([AM_DISABLE_SHARED], []) # _LT_ENABLE_STATIC([DEFAULT]) # ---------------------------- # implement the --enable-static flag, and support the `static' and # `disable-static' LT_INIT options. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. m4_define([_LT_ENABLE_STATIC], [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([static], [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_static=yes ;; no) enable_static=no ;; *) enable_static=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_static=yes fi done IFS="$lt_save_ifs" ;; esac], [enable_static=]_LT_ENABLE_STATIC_DEFAULT) _LT_DECL([build_old_libs], [enable_static], [0], [Whether or not to build static libraries]) ])# _LT_ENABLE_STATIC LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) # Old names: AC_DEFUN([AC_ENABLE_STATIC], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) ]) AC_DEFUN([AC_DISABLE_STATIC], [_LT_SET_OPTION([LT_INIT], [disable-static]) ]) AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AM_ENABLE_STATIC], []) dnl AC_DEFUN([AM_DISABLE_STATIC], []) # _LT_ENABLE_FAST_INSTALL([DEFAULT]) # ---------------------------------- # implement the --enable-fast-install flag, and support the `fast-install' # and `disable-fast-install' LT_INIT options. # DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. m4_define([_LT_ENABLE_FAST_INSTALL], [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl AC_ARG_ENABLE([fast-install], [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], [p=${PACKAGE-default} case $enableval in yes) enable_fast_install=yes ;; no) enable_fast_install=no ;; *) enable_fast_install=no # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for pkg in $enableval; do IFS="$lt_save_ifs" if test "X$pkg" = "X$p"; then enable_fast_install=yes fi done IFS="$lt_save_ifs" ;; esac], [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) _LT_DECL([fast_install], [enable_fast_install], [0], [Whether or not to optimize for fast installation])dnl ])# _LT_ENABLE_FAST_INSTALL LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) # Old names: AU_DEFUN([AC_ENABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `fast-install' option into LT_INIT's first parameter.]) ]) AU_DEFUN([AC_DISABLE_FAST_INSTALL], [_LT_SET_OPTION([LT_INIT], [disable-fast-install]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `disable-fast-install' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) # _LT_WITH_PIC([MODE]) # -------------------- # implement the --with-pic flag, and support the `pic-only' and `no-pic' # LT_INIT options. # MODE is either `yes' or `no'. If omitted, it defaults to `both'. m4_define([_LT_WITH_PIC], [AC_ARG_WITH([pic], [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@], [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], [lt_p=${PACKAGE-default} case $withval in yes|no) pic_mode=$withval ;; *) pic_mode=default # Look at the argument we got. We use all the common list separators. lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," for lt_pkg in $withval; do IFS="$lt_save_ifs" if test "X$lt_pkg" = "X$lt_p"; then pic_mode=yes fi done IFS="$lt_save_ifs" ;; esac], [pic_mode=default]) test -z "$pic_mode" && pic_mode=m4_default([$1], [default]) _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl ])# _LT_WITH_PIC LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) # Old name: AU_DEFUN([AC_LIBTOOL_PICMODE], [_LT_SET_OPTION([LT_INIT], [pic-only]) AC_DIAGNOSE([obsolete], [$0: Remove this warning and the call to _LT_SET_OPTION when you put the `pic-only' option into LT_INIT's first parameter.]) ]) dnl aclocal-1.4 backwards compatibility: dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) ## ----------------- ## ## LTDL_INIT Options ## ## ----------------- ## m4_define([_LTDL_MODE], []) LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], [m4_define([_LTDL_MODE], [nonrecursive])]) LT_OPTION_DEFINE([LTDL_INIT], [recursive], [m4_define([_LTDL_MODE], [recursive])]) LT_OPTION_DEFINE([LTDL_INIT], [subproject], [m4_define([_LTDL_MODE], [subproject])]) m4_define([_LTDL_TYPE], []) LT_OPTION_DEFINE([LTDL_INIT], [installable], [m4_define([_LTDL_TYPE], [installable])]) LT_OPTION_DEFINE([LTDL_INIT], [convenience], [m4_define([_LTDL_TYPE], [convenience])]) gnomint-1.3.0/m4/ltversion.m40000644000175000017500000000126212672052505012723 00000000000000# ltversion.m4 -- version numbers -*- Autoconf -*- # # Copyright (C) 2004 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # @configure_input@ # serial 3337 ltversion.m4 # This file is part of GNU Libtool m4_define([LT_PACKAGE_VERSION], [2.4.2]) m4_define([LT_PACKAGE_REVISION], [1.3337]) AC_DEFUN([LTVERSION_VERSION], [macro_version='2.4.2' macro_revision='1.3337' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) gnomint-1.3.0/m4/isc-posix.m40000664000175000017500000000170612672052326012622 00000000000000# isc-posix.m4 serial 2 (gettext-0.11.2) dnl Copyright (C) 1995-2002 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. # This file is not needed with autoconf-2.53 and newer. Remove it in 2005. # This test replaces the one in autoconf. # Currently this macro should have the same name as the autoconf macro # because gettext's gettext.m4 (distributed in the automake package) # still uses it. Otherwise, the use in gettext.m4 makes autoheader # give these diagnostics: # configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX # configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX undefine([AC_ISC_POSIX]) AC_DEFUN([AC_ISC_POSIX], [ dnl This test replaces the obsolescent AC_ISC_POSIX kludge. AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"]) ] ) gnomint-1.3.0/m4/ltsugar.m40000644000175000017500000001042412672052505012357 00000000000000# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # # Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives # unlimited permission to copy and/or distribute it, with or without # modifications, as long as this notice is preserved. # serial 6 ltsugar.m4 # This is to help aclocal find these macros, as it can't see m4_define. AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) # lt_join(SEP, ARG1, [ARG2...]) # ----------------------------- # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their # associated separator. # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier # versions in m4sugar had bugs. m4_define([lt_join], [m4_if([$#], [1], [], [$#], [2], [[$2]], [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) m4_define([_lt_join], [m4_if([$#$2], [2], [], [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) # lt_car(LIST) # lt_cdr(LIST) # ------------ # Manipulate m4 lists. # These macros are necessary as long as will still need to support # Autoconf-2.59 which quotes differently. m4_define([lt_car], [[$1]]) m4_define([lt_cdr], [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], [$#], 1, [], [m4_dquote(m4_shift($@))])]) m4_define([lt_unquote], $1) # lt_append(MACRO-NAME, STRING, [SEPARATOR]) # ------------------------------------------ # Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'. # Note that neither SEPARATOR nor STRING are expanded; they are appended # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). # No SEPARATOR is output if MACRO-NAME was previously undefined (different # than defined and empty). # # This macro is needed until we can rely on Autoconf 2.62, since earlier # versions of m4sugar mistakenly expanded SEPARATOR but not STRING. m4_define([lt_append], [m4_define([$1], m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) # ---------------------------------------------------------- # Produce a SEP delimited list of all paired combinations of elements of # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list # has the form PREFIXmINFIXSUFFIXn. # Needed until we can rely on m4_combine added in Autoconf 2.62. m4_define([lt_combine], [m4_if(m4_eval([$# > 3]), [1], [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl [[m4_foreach([_Lt_prefix], [$2], [m4_foreach([_Lt_suffix], ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) # ----------------------------------------------------------------------- # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. m4_define([lt_if_append_uniq], [m4_ifdef([$1], [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], [lt_append([$1], [$2], [$3])$4], [$5])], [lt_append([$1], [$2], [$3])$4])]) # lt_dict_add(DICT, KEY, VALUE) # ----------------------------- m4_define([lt_dict_add], [m4_define([$1($2)], [$3])]) # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) # -------------------------------------------- m4_define([lt_dict_add_subkey], [m4_define([$1($2:$3)], [$4])]) # lt_dict_fetch(DICT, KEY, [SUBKEY]) # ---------------------------------- m4_define([lt_dict_fetch], [m4_ifval([$3], m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) # ----------------------------------------------------------------- m4_define([lt_if_dict_fetch], [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], [$5], [$6])]) # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) # -------------------------------------------------------------- m4_define([lt_dict_filter], [m4_if([$5], [], [], [lt_join(m4_quote(m4_default([$4], [[, ]])), lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl ]) gnomint-1.3.0/m4/intltool.m40000664000175000017500000002636112672103073012550 00000000000000## intltool.m4 - Configure intltool for the target system. -*-Shell-script-*- ## Copyright (C) 2001 Eazel, Inc. ## Author: Maciej Stachowiak ## Kenneth Christiansen ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by ## the Free Software Foundation; either version 2 of the License, or ## (at your option) any later version. ## ## This program is distributed in the hope that it will be useful, but ## WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ## General Public License for more details. ## ## You should have received a copy of the GNU General Public License ## along with this program; if not, write to the Free Software ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ## ## As a special exception to the GNU General Public License, if you ## distribute this file as part of a program that contains a ## configuration script generated by Autoconf, you may include it under ## the same distribution terms that you use for the rest of that program. dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml]) # serial 42 IT_PROG_INTLTOOL AC_DEFUN([IT_PROG_INTLTOOL], [ AC_PREREQ([2.50])dnl AC_REQUIRE([AM_NLS])dnl case "$am__api_version" in 1.[01234]) AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool]) ;; *) ;; esac INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` if test -n "$1"; then AC_MSG_CHECKING([for intltool >= $1]) AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found]) test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.]) fi AC_PATH_PROG(INTLTOOL_UPDATE, [intltool-update]) AC_PATH_PROG(INTLTOOL_MERGE, [intltool-merge]) AC_PATH_PROG(INTLTOOL_EXTRACT, [intltool-extract]) if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then AC_MSG_ERROR([The intltool scripts were not found. Please install intltool.]) fi if test -z "$AM_DEFAULT_VERBOSITY"; then AM_DEFAULT_VERBOSITY=1 fi AC_SUBST([AM_DEFAULT_VERBOSITY]) INTLTOOL_V_MERGE='$(INTLTOOL__v_MERGE_$(V))' INTLTOOL__v_MERGE_='$(INTLTOOL__v_MERGE_$(AM_DEFAULT_VERBOSITY))' INTLTOOL__v_MERGE_0='@echo " ITMRG " [$]@;' AC_SUBST(INTLTOOL_V_MERGE) AC_SUBST(INTLTOOL__v_MERGE_) AC_SUBST(INTLTOOL__v_MERGE_0) INTLTOOL_V_MERGE_OPTIONS='$(intltool__v_merge_options_$(V))' intltool__v_merge_options_='$(intltool__v_merge_options_$(AM_DEFAULT_VERBOSITY))' intltool__v_merge_options_0='-q' AC_SUBST(INTLTOOL_V_MERGE_OPTIONS) AC_SUBST(intltool__v_merge_options_) AC_SUBST(intltool__v_merge_options_0) INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -p $(top_srcdir)/po $< [$]@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' if test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge 5000; then INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u --no-translations $< [$]@' else INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)_it_tmp_dir=tmp.intltool.[$][$]RANDOM && mkdir [$][$]_it_tmp_dir && LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u [$][$]_it_tmp_dir $< [$]@ && rmdir [$][$]_it_tmp_dir' fi INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' _IT_SUBST(INTLTOOL_DESKTOP_RULE) _IT_SUBST(INTLTOOL_DIRECTORY_RULE) _IT_SUBST(INTLTOOL_KEYS_RULE) _IT_SUBST(INTLTOOL_PROP_RULE) _IT_SUBST(INTLTOOL_OAF_RULE) _IT_SUBST(INTLTOOL_PONG_RULE) _IT_SUBST(INTLTOOL_SERVER_RULE) _IT_SUBST(INTLTOOL_SHEET_RULE) _IT_SUBST(INTLTOOL_SOUNDLIST_RULE) _IT_SUBST(INTLTOOL_UI_RULE) _IT_SUBST(INTLTOOL_XAM_RULE) _IT_SUBST(INTLTOOL_KBD_RULE) _IT_SUBST(INTLTOOL_XML_RULE) _IT_SUBST(INTLTOOL_XML_NOMERGE_RULE) _IT_SUBST(INTLTOOL_CAVES_RULE) _IT_SUBST(INTLTOOL_SCHEMAS_RULE) _IT_SUBST(INTLTOOL_THEME_RULE) _IT_SUBST(INTLTOOL_SERVICE_RULE) _IT_SUBST(INTLTOOL_POLICY_RULE) # Check the gettext tools to make sure they are GNU AC_PATH_PROG(XGETTEXT, xgettext) AC_PATH_PROG(MSGMERGE, msgmerge) AC_PATH_PROG(MSGFMT, msgfmt) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) fi AC_PATH_PROG(INTLTOOL_PERL, perl) if test -z "$INTLTOOL_PERL"; then AC_MSG_ERROR([perl not found]) fi AC_MSG_CHECKING([for perl >= 5.8.1]) $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 if test $? -ne 0; then AC_MSG_ERROR([perl 5.8.1 is required for intltool]) else IT_PERL_VERSION=`$INTLTOOL_PERL -e "printf '%vd', $^V"` AC_MSG_RESULT([$IT_PERL_VERSION]) fi if test "x$2" != "xno-xml"; then AC_MSG_CHECKING([for XML::Parser]) if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then AC_MSG_RESULT([ok]) else AC_MSG_ERROR([XML::Parser perl module is required for intltool]) fi fi # Substitute ALL_LINGUAS so we can use it in po/Makefile AC_SUBST(ALL_LINGUAS) IT_PO_SUBDIR([po]) ]) # IT_PO_SUBDIR(DIRNAME) # --------------------- # All po subdirs have to be declared with this macro; the subdir "po" is # declared by IT_PROG_INTLTOOL. # AC_DEFUN([IT_PO_SUBDIR], [AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS. dnl dnl The following CONFIG_COMMANDS should be executed at the very end dnl of config.status. AC_CONFIG_COMMANDS_PRE([ AC_CONFIG_COMMANDS([$1/stamp-it], [ if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" > /dev/null ]; then AC_MSG_ERROR([$1/Makefile.in.in was not created by intltoolize.]) fi rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp" >"$1/stamp-it.tmp" [sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES" ] [sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r $1/POTFILES } ' "$1/Makefile.in" >"$1/Makefile"] rm -f "$1/Makefile.tmp" mv "$1/stamp-it.tmp" "$1/stamp-it" ]) ])dnl ]) # _IT_SUBST(VARIABLE) # ------------------- # Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST # AC_DEFUN([_IT_SUBST], [ AC_SUBST([$1]) m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])]) ] ) # deprecated macros AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL]) # A hint is needed for aclocal from Automake <= 1.9.4: # AC_DEFUN([AC_PROG_INTLTOOL], ...)