pidgin/gtkrequest.c

branch
purple-ssl-to-gio
changeset 37625
7ae437591e5e
parent 37422
07dcc28b6039
child 37632
4879ef4db7cf
equal deleted inserted replaced
37624:a61e614c743d 37625:7ae437591e5e
21 #include "internal.h" 21 #include "internal.h"
22 #include "pidgin.h" 22 #include "pidgin.h"
23 23
24 #include "debug.h" 24 #include "debug.h"
25 #include "prefs.h" 25 #include "prefs.h"
26 #include "tls-certificate.h"
26 #include "util.h" 27 #include "util.h"
27 28
28 #include "gtkwebview.h" 29 #include "gtkwebview.h"
29 #include "gtkrequest.h" 30 #include "gtkrequest.h"
30 #include "gtkutils.h" 31 #include "gtkutils.h"
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);

mercurial