Charles Melhorn wrote:
Hello,

I was wondering if it's possible to create a
(scriptable) UDP/IP (datagram) socket with NetLib?
Upon a cursory inspection of the code, particularly
the nsSocketTransportService::CreateTransportOfTypes()
method and related classes, it would appear that
it's only possible to create TCP/IP sockets, or
variants: tcp+SSL, tcp+TLS, tcp+SOCKS, tcp+SOCKS4.

Is that the case? And if it is, should I file an
RFE? I believe there is a portable runtime function
for creating a UDP socket, PR_NewUDPSocket(), but
I'm not sure how much more infrastructure would be
needed to support the use of datagrams in a Mozilla
extension.

Any help would be appreciated.

Thanks,

Charles




yup, this is a legitimate feature request. you can work around the limitations of necko by registering your own nsISocketProvider. check out the nsISocketProviderService for more details.

if you register a socket provider under the string "my-socket-type", and if you pass this string to the CreateTransportOfType method on nsISocketTransport, the socket transport code will call your socket provider's NewSocket instead of the default PR_NewTCPSocket(). iow, you can just make your socket provider call PR_NewUDPSocket() and return that.

darin

Reply via email to