dotgnu-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [DotGNU]IPHostentry ECMA vs .NET issue


From: Rhys Weatherley
Subject: Re: [DotGNU]IPHostentry ECMA vs .NET issue
Date: Sat, 14 Sep 2002 11:55:07 +1000

Gopal V wrote:
> 
> Hi All,
>     I had been digging my head deep into the Dns class details
> when a few points hit me hard ...
> 
> 1) IPHostEntry constructor is declared as protected in ECMA spec
>    as well as pnetlib code .. But one of my friends confirmed that
>    IPHostEntry had a no args constructor on his .NET SDK ..

He's correct.  No arguments in the .NET SDK.  I'd say that the
ECMA docs are incorrect in this case.

>    So to proceed without breaking ECMA spec we have to inherit
> IPHostEntry as System.Private.IPv4HostEntry and S.P.IPv6HostEntry...
> Is that advisable ?

Just copy what Mono did - no-argument constructor and nothing
else special about it.

> 2) Dns internalcall , where should I put it ? ... System.Net has
>    not used a Platform dir for internal calls ,

Put it in the Dns class.  The "Platform" thing is stupid
within the System assembly, since the number of methods is
so small.  I've been planning for some time to pull
"SocketMethods" and "Errno" back into "System.Net".
Any volunteers?

> should I ?...
>    And where do I put the prototypes of ILGetHostByName() ? ...
>    il_sysio.h ? or a new il_network.h ?

il_sysio.h will do for now.

> 4) MS Spec shows the IPHostEntry stuff listed as Fields , while
>    it is shown as Properties by the ECMA spec ... ? (follow ECMA,
>    I suppose)

The .NET SDK docs that I have lists them as properties.

> The gethostbyname internalcall has been fixed up and is working ,
> but I cannot create IPHostEntry's ... (or is there some weird hack
> to do that .. ?)

Add an "internal" constructor to IPHostEntry which takes the
arguments in and builds the object.  Since this is only
accessible from the "System" assembly, there is no security
issue involved, and it doesn't break compatibility with ECMA.

Cheers,

Rhys.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]