| 1514 } |
1515 } |
| 1515 |
1516 |
| 1516 static GtkWidget * |
1517 static GtkWidget * |
| 1517 create_certificate_field(PurpleRequestField *field) |
1518 create_certificate_field(PurpleRequestField *field) |
| 1518 { |
1519 { |
| 1519 PurpleCertificate *cert; |
1520 GTlsCertificate *cert; |
| 1520 #ifdef ENABLE_GCR |
1521 #ifdef ENABLE_GCR |
| |
1522 GByteArray *der = NULL; |
| 1521 GcrCertificateBasicsWidget *cert_widget; |
1523 GcrCertificateBasicsWidget *cert_widget; |
| 1522 GByteArray *der; |
|
| 1523 GcrCertificate *gcrt; |
1524 GcrCertificate *gcrt; |
| 1524 #else |
1525 #else |
| |
1526 PurpleTlsCertificateInfo *info; |
| 1525 GtkWidget *cert_label; |
1527 GtkWidget *cert_label; |
| 1526 char *str; |
1528 char *str; |
| 1527 char *escaped; |
1529 char *escaped; |
| 1528 #endif |
1530 #endif |
| 1529 |
1531 |
| 1530 cert = purple_request_field_certificate_get_value(field); |
1532 cert = purple_request_field_certificate_get_value(field); |
| 1531 |
1533 |
| 1532 #ifdef ENABLE_GCR |
1534 #ifdef ENABLE_GCR |
| 1533 der = purple_certificate_get_der_data(cert); |
1535 g_object_get(cert, "certificate", &der, NULL); |
| 1534 g_return_val_if_fail(der, NULL); |
1536 g_return_val_if_fail(der, NULL); |
| 1535 |
1537 |
| 1536 gcrt = gcr_simple_certificate_new(der->data, der->len); |
1538 gcrt = gcr_simple_certificate_new(der->data, der->len); |
| 1537 g_return_val_if_fail(gcrt, NULL); |
1539 g_return_val_if_fail(gcrt, NULL); |
| 1538 |
1540 |
| 1541 g_byte_array_free(der, TRUE); |
1543 g_byte_array_free(der, TRUE); |
| 1542 g_object_unref(G_OBJECT(gcrt)); |
1544 g_object_unref(G_OBJECT(gcrt)); |
| 1543 |
1545 |
| 1544 return GTK_WIDGET(cert_widget); |
1546 return GTK_WIDGET(cert_widget); |
| 1545 #else |
1547 #else |
| 1546 str = purple_certificate_get_display_string(cert); |
1548 info = purple_tls_certificate_get_info(cert); |
| |
1549 str = purple_tls_certificate_info_get_display_string(info); |
| |
1550 purple_tls_certificate_info_free(info); |
| |
1551 |
| 1547 escaped = g_markup_escape_text(str, -1); |
1552 escaped = g_markup_escape_text(str, -1); |
| 1548 |
1553 |
| 1549 cert_label = gtk_label_new(NULL); |
1554 cert_label = gtk_label_new(NULL); |
| 1550 gtk_label_set_markup(GTK_LABEL(cert_label), escaped); |
1555 gtk_label_set_markup(GTK_LABEL(cert_label), escaped); |
| 1551 gtk_label_set_line_wrap(GTK_LABEL(cert_label), TRUE); |
1556 gtk_label_set_line_wrap(GTK_LABEL(cert_label), TRUE); |