Return to SSLServer.java CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / axTLS / bindings / java |
1.1 ! misho 1: /* ! 2: * Copyright (c) 2007, Cameron Rich ! 3: * ! 4: * All rights reserved. ! 5: * ! 6: * Redistribution and use in source and binary forms, with or without ! 7: * modification, are permitted provided that the following conditions are met: ! 8: * ! 9: * * Redistributions of source code must retain the above copyright notice, ! 10: * this list of conditions and the following disclaimer. ! 11: * * Redistributions in binary form must reproduce the above copyright notice, ! 12: * this list of conditions and the following disclaimer in the documentation ! 13: * and/or other materials provided with the distribution. ! 14: * * Neither the name of the axTLS project nor the names of its contributors ! 15: * may be used to endorse or promote products derived from this software ! 16: * without specific prior written permission. ! 17: * ! 18: * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ! 19: * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ! 20: * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ! 21: * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR ! 22: * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, ! 23: * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, ! 24: * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR ! 25: * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF ! 26: * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING ! 27: * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS ! 28: * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ! 29: */ ! 30: ! 31: /* ! 32: * A wrapper around the unmanaged interface to give a semi-decent Java API ! 33: */ ! 34: ! 35: package axTLSj; ! 36: ! 37: import java.net.*; ! 38: ! 39: /** ! 40: * @class SSLServer ! 41: * @ingroup java_api ! 42: * @brief The server context. ! 43: * ! 44: * All server connections are started within a server context. ! 45: */ ! 46: public class SSLServer extends SSLCTX ! 47: { ! 48: /** ! 49: * @brief Start a new server context. ! 50: * ! 51: * @see SSLCTX for details. ! 52: */ ! 53: public SSLServer(int options, int num_sessions) ! 54: { ! 55: super(options, num_sessions); ! 56: } ! 57: ! 58: /** ! 59: * @brief Establish a new SSL connection to an SSL client. ! 60: * ! 61: * It is up to the application to establish the initial socket connection. ! 62: * ! 63: * Call dispose() when the connection is to be removed. ! 64: * @param s [in] A reference to a <A HREF="http://java.sun.com/j2se/1.4.2/docs/api">Socket</A> object. ! 65: * @return An SSL object reference. ! 66: */ ! 67: public SSL connect(Socket s) ! 68: { ! 69: int client_fd = axtlsj.getFd(s); ! 70: return new SSL(axtlsj.ssl_server_new(m_ctx, client_fd)); ! 71: } ! 72: }