this repo has no description
at fixPythonPipStalling 93 lines 2.8 kB view raw
1/* 2 * Copyright (c) 2015-2017 Apple Inc. All rights reserved. 3 * 4 * @APPLE_LICENSE_HEADER_START@ 5 * 6 * This file contains Original Code and/or Modifications of Original Code 7 * as defined in and that are subject to the Apple Public Source License 8 * Version 2.0 (the 'License'). You may not use this file except in 9 * compliance with the License. Please obtain a copy of the License at 10 * http://www.opensource.apple.com/apsl/ and read it before using this 11 * file. 12 * 13 * The Original Code and all software distributed under the License are 14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER 15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. 18 * Please see the License for the specific language governing rights and 19 * limitations under the License. 20 * 21 * @APPLE_LICENSE_HEADER_END@ 22 */ 23 24#ifndef CONFIG_AGENT_H 25#define CONFIG_AGENT_H 26 27#include <net/if.h> 28#include <net/network_agent.h> 29#include <net/necp.h> 30#include <dnsinfo.h> 31#include <sys/ioctl.h> 32#include <network_information.h> 33#include <notify.h> 34#include <sys/kern_control.h> 35#include <sys/sys_domain.h> 36#include <SystemConfiguration/SystemConfiguration.h> 37#include <SystemConfiguration/SCPrivate.h> 38 39#import <Foundation/Foundation.h> 40#import <Network/Network_Private.h> 41#import <NetworkExtension/NEPolicySession.h> 42#import <CommonCrypto/CommonDigest.h> 43 44#import "configAgentDefines.h" 45 46typedef NS_ENUM(NSUInteger, AgentType) { 47 kAgentTypeUnknown = 0, 48 kAgentTypeProxy, 49 kAgentTypeDNS 50}; 51 52typedef NS_ENUM(NSUInteger, AgentSubType) { 53 kAgentSubTypeUnknown = 0, 54 kAgentSubTypeScoped, 55 kAgentSubTypeSupplemental, 56 kAgentSubTypeDefault, 57 kAgentSubTypeMulticast, 58 kAgentSubTypePrivate, 59 kAgentSubTypeServiceSpecific, 60 kAgentSubTypeGlobal, 61}; 62 63os_log_t __log_IPMonitor(void); 64 65/* Parameters */ 66#define kEntityName "EntityName" 67#define kAgentSubType "AgentSubType" 68 69@interface ConfigAgent : NSObject <NWNetworkAgent> 70 71@property NEPolicySession *preferredPolicySession; 72 73- (instancetype)initWithParameters:(NSDictionary *)parameters; 74- (void)addAgentRegistrationObject:(NWNetworkAgentRegistration *)regObject; 75- (NWNetworkAgentRegistration *)getRegistrationObject; 76- (NSString *)getAssociatedEntity; 77- (NSString *)getAgentName; 78- (NSData *)getAgentData; 79- (AgentType)getAgentType; 80- (AgentSubType)getAgentSubType; 81- (NSUUID *)getAgentUUID; 82- (void)setStartHandler:(void (^)(void))startHandler; 83- (BOOL)startAgentWithOptions:(NSDictionary *)options; 84- (void)updateAgentData:(NSData *)data; 85- (BOOL)shouldUpdateAgent; 86- (id)getAgentMapping; 87- (void)setAgentMapping:(id)agent; 88 89- (NSUUID *)createUUIDForName:(NSString *)agentName; 90 91@end 92 93#endif /* CONFIG_AGENT_H */