1 /* 2 * This file is part of gtkD. 3 * 4 * gtkD is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License 6 * as published by the Free Software Foundation; either version 3 7 * of the License, or (at your option) any later version, with 8 * some exceptions, please read the COPYING file. 9 * 10 * gtkD is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public License 16 * along with gtkD; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA 18 */ 19 20 // generated automatically - do not change 21 // find conversion definition on APILookup.txt 22 // implement new conversion functionalities on the wrap.utils pakage 23 24 25 module gio.DtlsClientConnectionIF; 26 27 private import gio.DatagramBasedIF; 28 private import gio.SocketConnectable; 29 private import gio.SocketConnectableIF; 30 private import glib.ConstructionException; 31 private import glib.ErrorG; 32 private import glib.GException; 33 private import glib.ListG; 34 private import gobject.ObjectG; 35 private import gtkc.gio; 36 public import gtkc.giotypes; 37 38 39 /** 40 * #GDtlsClientConnection is the client-side subclass of 41 * #GDtlsConnection, representing a client-side DTLS connection. 42 * 43 * Since: 2.48 44 */ 45 public interface DtlsClientConnectionIF{ 46 /** Get the main Gtk struct */ 47 public GDtlsClientConnection* getDtlsClientConnectionStruct(bool transferOwnership = false); 48 49 /** the main Gtk struct as a void* */ 50 protected void* getStruct(); 51 52 53 /** 54 * Gets the list of distinguished names of the Certificate Authorities 55 * that the server will accept certificates from. This will be set 56 * during the TLS handshake if the server requests a certificate. 57 * Otherwise, it will be %NULL. 58 * 59 * Each item in the list is a #GByteArray which contains the complete 60 * subject DN of the certificate authority. 61 * 62 * Returns: the list of 63 * CA DNs. You should unref each element with g_byte_array_unref() and then 64 * the free the list with g_list_free(). 65 * 66 * Since: 2.48 67 */ 68 public ListG getAcceptedCas(); 69 70 /** 71 * Gets @conn's expected server identity 72 * 73 * Returns: a #GSocketConnectable describing the 74 * expected server identity, or %NULL if the expected identity is not 75 * known. 76 * 77 * Since: 2.48 78 */ 79 public SocketConnectableIF getServerIdentity(); 80 81 /** 82 * Gets @conn's validation flags 83 * 84 * Returns: the validation flags 85 * 86 * Since: 2.48 87 */ 88 public GTlsCertificateFlags getValidationFlags(); 89 90 /** 91 * Sets @conn's expected server identity, which is used both to tell 92 * servers on virtual hosts which certificate to present, and also 93 * to let @conn know what name to look for in the certificate when 94 * performing %G_TLS_CERTIFICATE_BAD_IDENTITY validation, if enabled. 95 * 96 * Params: 97 * identity = a #GSocketConnectable describing the expected server identity 98 * 99 * Since: 2.48 100 */ 101 public void setServerIdentity(SocketConnectableIF identity); 102 103 /** 104 * Sets @conn's validation flags, to override the default set of 105 * checks performed when validating a server certificate. By default, 106 * %G_TLS_CERTIFICATE_VALIDATE_ALL is used. 107 * 108 * Params: 109 * flags = the #GTlsCertificateFlags to use 110 * 111 * Since: 2.48 112 */ 113 public void setValidationFlags(GTlsCertificateFlags flags); 114 }