EAPOLClientConfigurationInternal.h [plain text]
#ifndef _EAP8021X_EAPOLCLIENTCONFIGURATIONINTERNAL_H
#define _EAP8021X_EAPOLCLIENTCONFIGURATIONINTERNAL_H
#include <EAP8021X/EAPOLClientConfiguration.h>
#include <CoreFoundation/CFRuntime.h>
#include <SystemConfiguration/SCPreferences.h>
#include "symbol_scope.h"
#define kEAPOLClientConfigurationPrefsID CFSTR("com.apple.network.eapolclient.configuration.plist")
struct __EAPOLClientConfiguration {
CFRuntimeBase cf_base;
AuthorizationExternalForm * auth_ext_p;
SCPreferencesRef eap_prefs;
SCPreferencesRef sc_prefs;
CFMutableArrayRef sc_changed_if;
CFMutableDictionaryRef profiles;
CFMutableDictionaryRef ssids;
CFMutableDictionaryRef domains;
CFDictionaryRef def_auth_props;
Boolean def_auth_props_changed;
};
struct __EAPOLClientProfile {
CFRuntimeBase cf_base;
EAPOLClientConfigurationRef cfg;
CFStringRef uuid;
CFDictionaryRef auth_props;
CFStringRef user_defined_name;
struct {
CFDataRef ssid;
CFStringRef security_type;
CFStringRef domain;
} WLAN;
CFMutableDictionaryRef information;
};
typedef enum {
kEAPOLClientItemIDTypeNone = 0,
kEAPOLClientItemIDTypeWLANSSID = 1,
kEAPOLClientItemIDTypeProfileID = 2,
kEAPOLClientItemIDTypeProfile = 3,
kEAPOLClientItemIDTypeDefault = 4,
kEAPOLClientItemIDTypeWLANDomain = 5
} EAPOLClientItemIDType;
struct __EAPOLClientItemID {
CFRuntimeBase cf_base;
EAPOLClientItemIDType type;
union {
CFDataRef ssid;
CFStringRef profileID;
EAPOLClientProfileRef profile;
CFStringRef domain;
const void * ptr;
} u;
};
PRIVATE_EXTERN void
EAPOLClientConfigurationSetProfileForSSID(EAPOLClientConfigurationRef cfg,
CFDataRef ssid,
EAPOLClientProfileRef profile);
PRIVATE_EXTERN void
EAPOLClientConfigurationSetProfileForWLANDomain(EAPOLClientConfigurationRef cfg,
CFStringRef domain,
EAPOLClientProfileRef profile);
PRIVATE_EXTERN AuthorizationExternalForm *
EAPOLClientConfigurationGetAuthorizationExternalForm(EAPOLClientConfigurationRef cfg);
PRIVATE_EXTERN EAPOLClientProfileRef
EAPOLClientProfileCreateWithDictAndProfileID(CFDictionaryRef dict,
CFStringRef profileID);
PRIVATE_EXTERN CFMutableDictionaryRef
EAPOLClientProfileCreateDictAndProfileID(EAPOLClientProfileRef profile,
CFStringRef * ret_profileID);
PRIVATE_EXTERN void
EAPOLClientProfileSetConfiguration(EAPOLClientProfileRef profile,
EAPOLClientConfigurationRef cfg);
PRIVATE_EXTERN EAPOLClientConfigurationRef
EAPOLClientProfileGetConfiguration(EAPOLClientProfileRef profile);
PRIVATE_EXTERN Boolean
accept_types_valid(CFArrayRef accept);
PRIVATE_EXTERN AuthorizationExternalForm *
EAPOLClientItemIDGetAuthorizationExternalForm(EAPOLClientItemIDRef itemID);
#endif