internal static DhcpServerOptionValue GetScopeOptionValue(DhcpServerScope Scope, int OptionId, string ClassName, string VendorName) { var scopeInfo = new DHCP_OPTION_SCOPE_INFO_SUBNET() { ScopeType = DHCP_OPTION_SCOPE_TYPE.DhcpSubnetOptions, SubnetScopeInfo = Scope.address }; var scopeInfoPtr = Marshal.AllocHGlobal(Marshal.SizeOf(scopeInfo)); Marshal.StructureToPtr(scopeInfo, scopeInfoPtr, true); return(GetOptionValue(Scope.Server, scopeInfoPtr, OptionId, ClassName, VendorName)); }
internal static IEnumerable <DhcpServerOptionValue> GetAllScopeOptionValues(DhcpServerScope Scope) { var scopeInfo = new DHCP_OPTION_SCOPE_INFO_SUBNET() { ScopeType = DHCP_OPTION_SCOPE_TYPE.DhcpSubnetOptions, SubnetScopeInfo = Scope.address }; var scopeInfoPtr = Marshal.AllocHGlobal(Marshal.SizeOf(scopeInfo)); Marshal.StructureToPtr(scopeInfo, scopeInfoPtr, true); return(GetAllOptionValues(Scope.Server, scopeInfoPtr)); }
private static IEnumerable <DhcpServerOptionValue> EnumScopeOptionValues(DhcpServerScope Scope, string ClassName, string VendorName) { var scopeInfo = new DHCP_OPTION_SCOPE_INFO_SUBNET() { ScopeType = DHCP_OPTION_SCOPE_TYPE.DhcpSubnetOptions, SubnetScopeInfo = Scope.address }; var scopeInfoPtr = Marshal.AllocHGlobal(Marshal.SizeOf(scopeInfo)); Marshal.StructureToPtr(scopeInfo, scopeInfoPtr, true); return(EnumOptionValues(Scope.Server, scopeInfoPtr, ClassName, VendorName)); }