SocketPlugin extions

Andreas Raab andreas.raab at gmx.de
Mon Mar 27 06:08:53 UTC 2006


John M McIntosh wrote:
> So why do these need to be platform C code, versus invoking the proper 
> methods in smalltalk code based on platform type ?

Because (IIRC) the only reliable way of using SO_REUSEPORT is something 
like "#ifdef SO_REUSEPORT" because the versions under which it's 
supported (and therefore must be used) are widely varied amongst the 
Unix flavours. So just asking is this a "unix" platform isn't enough; 
neither is "is this Linux" etc.

Cheers,
    - Andreas

> 
> On 26-Mar-06, at 9:45 PM, Andreas Raab wrote:
> 
>> Hi Guys -
>>
>> Attached the extensions for SocketPlugin which are based on David's 
>> code (except I've folded them directly into SocketPlugin). It's 
>> basically just two functions:
>> a) Being able to mark the socket as "reusable", e.g., setting 
>> SO_REUSADDR/SO_REUSEPORT explicitly (the main reason for putting this 
>> into a separate primitive is because on different platforms subtly 
>> different actions need to be taken)
>> b) Being able to bind() a socket explicitly to an interface/port.
>>
>> Cheers,
>>   - Andreas
>> <SocketPluginDPR.1.cs>
> 
> -- 
> ===========================================================================
> John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
> Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
> ===========================================================================
> 
> 



More information about the Vm-dev mailing list