X-Git-Url: https://git.saurik.com/apple/configd.git/blobdiff_plain/a5f60add6851c80e3e97d4c50c2855d3be97e589..32d96e3d77d900203b7faba2d7937f8b3472f4d7:/SystemConfiguration.fproj/LinkConfiguration.h diff --git a/SystemConfiguration.fproj/LinkConfiguration.h b/SystemConfiguration.fproj/LinkConfiguration.h new file mode 100644 index 0000000..b09ba78 --- /dev/null +++ b/SystemConfiguration.fproj/LinkConfiguration.h @@ -0,0 +1,121 @@ +/* + * Copyright (c) 2002 Apple Computer, Inc. All rights reserved. + * + * @APPLE_LICENSE_HEADER_START@ + * + * The contents of this file constitute Original Code as defined in and + * are subject to the Apple Public Source License Version 1.1 (the + * "License"). You may not use this file except in compliance with the + * License. Please obtain a copy of the License at + * http://www.apple.com/publicsource and read it before using this file. + * + * This Original Code and all software distributed under the License are + * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER + * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the + * License for the specific language governing rights and limitations + * under the License. + * + * @APPLE_LICENSE_HEADER_END@ + */ + + +#ifndef _LINKCONFIGURATION_H +#define _LINKCONFIGURATION_H + +#include +#include + + +__BEGIN_DECLS + +/*! + @function NetworkInterfaceCopyMediaOptions + @discussion For the specified network interface, returns information + about the currently requested media options, the active media + options, and the media options which are available. + @param interface The desired network interface. + @param current A pointer to memory that will be filled with a CFDictionaryRef + representing the currently requested media options (subtype, options). + If NULL, the current options will not be returned. + @param active A pointer to memory that will be filled with a CFDictionaryRef + representing the active media options (subtype, options). + If NULL, the active options will not be returned. + @param available A pointer to memory that will be filled with a CFArrayRef + representing the possible media options (subtype, options). + If NULL, the available options will not be returned. + @param filter A boolean indicating whether the available options should be + filtered to exclude those options which would not normally be + requested by a user/admin (e.g. hw-loopback). + @result TRUE if requested information has been returned. + + */ +Boolean +NetworkInterfaceCopyMediaOptions( + CFStringRef interface, + CFDictionaryRef *current, + CFDictionaryRef *active, + CFArrayRef *available, + Boolean filter + ); + +/*! + @function NetworkInterfaceCopyMediaSubTypes + @discussion For the provided interface configuration options, return a list + of available media subtypes. + @param available The available options as returned by the + NetworkInterfaceCopyMediaOptions function. + @result An array of available media subtypes CFString's (e.g. 10BaseT/UTP, + 100baseTX, etc). NULL if no subtypes are available. + */ +CFArrayRef +NetworkInterfaceCopyMediaSubTypes( + CFArrayRef available + ); + +/*! + @function NetworkInterfaceCopyMediaSubTypes + @discussion For the provided interface configuration options and specific + subtype, return a list of available media options. + @param available The available options as returned by the + NetworkInterfaceCopyMediaOptions function. + @param subType The subtype + @result An array of available media options. Each of the available options + is returned as an array of CFString's (e.g. , + ). NULL if no options are available. + */ +CFArrayRef +NetworkInterfaceCopyMediaSubTypeOptions( + CFArrayRef available, + CFStringRef subType + ); + +/*! + @function NetworkInterfaceCopyMTU + @discussion + @param interface The desired network interface. + @param mtu_cur A pointer to memory that will be filled with the current + MTU setting for the interface. + @param mtu_min A pointer to memory that will be filled with the minimum + MTU setting for the interface. If negative, the minumum setting + could not be determined. + @param mtu_max A pointer to memory that will be filled with the maximum + MTU setting for the interface. If negative, the maximum setting + could not be determined. + @result TRUE if requested information has been returned. + + */ +Boolean +NetworkInterfaceCopyMTU( + CFStringRef interface, + int *mtu_cur, + int *mtu_min, + int *mtu_max + ); + + +__END_DECLS + +#endif /* _LINKCONFIGURATION_H */ +