gsknetworkinterface

gsknetworkinterface —

Synopsis




            GskNetworkInterface;
            GskNetworkInterfaceSet;
enum        GskNetworkInterfaceFlags;
GskNetworkInterfaceSet* gsk_network_interface_set_new
                                            (GskNetworkInterfaceFlags flags);
void        gsk_network_interface_set_destroy
                                            (GskNetworkInterfaceSet *set);

Description

Details

GskNetworkInterface

typedef struct {
  const char *ifname;

  /* whether this interface is "virtual" -- just connects back to this host */
  unsigned is_loopback : 1;

  /* whether this interface supports broadcasting. */
  unsigned supports_multicast : 1;

  /* whether this interface is receiving packets not intended for it. */
  unsigned is_promiscuous : 1;

  /* ip-address if the interface is up. */
  GskSocketAddress *address;

  /* if !is_loopback, this is the device's MAC address. */
  GskSocketAddress *hw_address;

  /* if is_point_to_point, this is the address of the other end of
   * the connection.
   */
  GskSocketAddress *p2p_address;

  /* if supports_broadcast, this is the broadcast address. */
  GskSocketAddress *broadcast;
} GskNetworkInterface;


GskNetworkInterfaceSet

typedef struct {
  guint num_interfaces;
  GskNetworkInterface *interfaces;
} GskNetworkInterfaceSet;


enum GskNetworkInterfaceFlags

typedef enum
{
  GSK_NETWORK_INTERFACE_UP			= (1<<0),
  GSK_NETWORK_INTERFACE_LOOPBACK		= (1<<1),
  GSK_NETWORK_INTERFACE_NON_LOOPBACK		= (1<<2),
  GSK_NETWORK_INTERFACE_HAS_BROADCAST		= (1<<3),
  GSK_NETWORK_INTERFACE_HAS_MULTICAST		= (1<<4)
} GskNetworkInterfaceFlags;


gsk_network_interface_set_new ()

GskNetworkInterfaceSet* gsk_network_interface_set_new
                                            (GskNetworkInterfaceFlags flags);

flags :
Returns :

gsk_network_interface_set_destroy ()

void        gsk_network_interface_set_destroy
                                            (GskNetworkInterfaceSet *set);

set :