(root)/
glib-2.79.0/
gio/
gunixcredentialsmessage.h
       1  /* GIO - GLib Input, Output and Streaming Library
       2   *
       3   * Copyright (C) 2010 Red Hat, Inc.
       4   * Copyright (C) 2009 Codethink Limited
       5   *
       6   * SPDX-License-Identifier: LGPL-2.1-or-later
       7   *
       8   * This library is free software; you can redistribute it and/or
       9   * modify it under the terms of the GNU Lesser General Public
      10   * License as published by the Free Software Foundation; either
      11   * version 2.1 of the License, or (at your option) any later version.
      12   *
      13   * This library is distributed in the hope that it will be useful,
      14   * but WITHOUT ANY WARRANTY; without even the implied warranty of
      15   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      16   * Lesser General Public License for more details.
      17   *
      18   * You should have received a copy of the GNU Lesser General
      19   * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
      20   *
      21   * Authors: David Zeuthen <davidz@redhat.com>
      22   */
      23  
      24  #ifndef __G_UNIX_CREDENTIALS_MESSAGE_H__
      25  #define __G_UNIX_CREDENTIALS_MESSAGE_H__
      26  
      27  #include <gio/gio.h>
      28  
      29  G_BEGIN_DECLS
      30  
      31  #define G_TYPE_UNIX_CREDENTIALS_MESSAGE         (g_unix_credentials_message_get_type ())
      32  #define G_UNIX_CREDENTIALS_MESSAGE(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), G_TYPE_UNIX_CREDENTIALS_MESSAGE, GUnixCredentialsMessage))
      33  #define G_UNIX_CREDENTIALS_MESSAGE_CLASS(c)     (G_TYPE_CHECK_CLASS_CAST ((c), G_TYPE_UNIX_CREDENTIALS_MESSAGE, GUnixCredentialsMessageClass))
      34  #define G_IS_UNIX_CREDENTIALS_MESSAGE(o)        (G_TYPE_CHECK_INSTANCE_TYPE ((o), G_TYPE_UNIX_CREDENTIALS_MESSAGE))
      35  #define G_IS_UNIX_CREDENTIALS_MESSAGE_CLASS(c)  (G_TYPE_CHECK_CLASS_TYPE ((c), G_TYPE_UNIX_CREDENTIALS_MESSAGE))
      36  #define G_UNIX_CREDENTIALS_MESSAGE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), G_TYPE_UNIX_CREDENTIALS_MESSAGE, GUnixCredentialsMessageClass))
      37  
      38  typedef struct _GUnixCredentialsMessagePrivate  GUnixCredentialsMessagePrivate;
      39  typedef struct _GUnixCredentialsMessageClass    GUnixCredentialsMessageClass;
      40  
      41  G_DEFINE_AUTOPTR_CLEANUP_FUNC(GUnixCredentialsMessage, g_object_unref)
      42  
      43  /**
      44   * GUnixCredentialsMessageClass:
      45   *
      46   * Class structure for #GUnixCredentialsMessage.
      47   *
      48   * Since: 2.26
      49   */
      50  struct _GUnixCredentialsMessageClass
      51  {
      52    GSocketControlMessageClass parent_class;
      53  
      54    /*< private >*/
      55  
      56    /* Padding for future expansion */
      57    void (*_g_reserved1) (void);
      58    void (*_g_reserved2) (void);
      59  };
      60  
      61  struct _GUnixCredentialsMessage
      62  {
      63    GSocketControlMessage parent_instance;
      64    GUnixCredentialsMessagePrivate *priv;
      65  };
      66  
      67  GIO_AVAILABLE_IN_ALL
      68  GType                  g_unix_credentials_message_get_type             (void) G_GNUC_CONST;
      69  GIO_AVAILABLE_IN_ALL
      70  GSocketControlMessage *g_unix_credentials_message_new                  (void);
      71  GIO_AVAILABLE_IN_ALL
      72  GSocketControlMessage *g_unix_credentials_message_new_with_credentials (GCredentials *credentials);
      73  GIO_AVAILABLE_IN_ALL
      74  GCredentials          *g_unix_credentials_message_get_credentials      (GUnixCredentialsMessage *message);
      75  
      76  GIO_AVAILABLE_IN_ALL
      77  gboolean               g_unix_credentials_message_is_supported         (void);
      78  
      79  G_END_DECLS
      80  
      81  #endif /* __G_UNIX_CREDENTIALS_MESSAGE_H__ */