Hi, I am working on adding MINA/NIO support to Zimbra's mail server and so far the only problem I've encountered is the lack of support in MINA for prebinding of privileged ports. In this case, the server binds the server socket while running as "root" then calls native code to setuid to a less privileged user before listening on the server socket. Unfortunately, the SocketAcceptor bind() method not only binds the server socket but starts listening on the server channel immediately as well, which prevents prebinding of the ports.
Our temporary workaround has been to add a new 'register' method to SocketAcceptor so our application can create and bind the ServerSocketChannel as root, setuid to the zimbra user, then call 'register' to allow MINA to start listening on the server socket. Any chance something like this or similar could be added to the MINA core in 1.1.x? This would be a big help for us so we don't have to indefinitely maintain our own patched version of SocketAcceptor. Thanks, David
