Print this page
4853 illumos-gate is not lint-clean when built with openssl 1.0


  43  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  44  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
  45  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  46  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  47  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  48  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  49  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  50  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  51  * SUCH DAMAGE.
  52  *
  53  * The licence and distribution terms for any publically available version or
  54  * derivative of this code cannot be changed.  i.e. this code cannot simply be
  55  * copied and put under another distribution licence
  56  * [including the GNU Public Licence.]
  57  */
  58 
  59 #include <stdio.h>
  60 #include <stdlib.h>
  61 #include <string.h>
  62 #include <errno.h>

  63 #include <openssl/crypto.h>
  64 #include <openssl/bio.h>
  65 #include <openssl/err.h>
  66 #include <openssl/ssl.h>
  67 
  68 static int ssl_write(BIO *h, const char *buf, int num);
  69 static int ssl_read(BIO *h, char *buf, int size);
  70 static int ssl_puts(BIO *h, const char *str);
  71 static long ssl_ctrl(BIO *h, int cmd, long arg1, void *arg2);
  72 static int ssl_new(BIO *h);
  73 static int ssl_free(BIO *data);
  74 static long ssl_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp);
  75 typedef struct bio_ssl_st
  76         {
  77         SSL *ssl; /* The ssl handle :-) */
  78         /* re-negotiate every time the total number of bytes is this size */
  79         int num_renegotiates;
  80         unsigned long renegotiate_count;
  81         unsigned long byte_count;
  82         unsigned long renegotiate_timeout;




  43  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  44  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
  45  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  46  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  47  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  48  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  49  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  50  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  51  * SUCH DAMAGE.
  52  *
  53  * The licence and distribution terms for any publically available version or
  54  * derivative of this code cannot be changed.  i.e. this code cannot simply be
  55  * copied and put under another distribution licence
  56  * [including the GNU Public Licence.]
  57  */
  58 
  59 #include <stdio.h>
  60 #include <stdlib.h>
  61 #include <string.h>
  62 #include <errno.h>
  63 #include <openssl/opensslconf.h>
  64 #include <openssl/crypto.h>
  65 #include <openssl/bio.h>
  66 #include <openssl/err.h>
  67 #include <openssl/ssl.h>
  68 
  69 static int ssl_write(BIO *h, const char *buf, int num);
  70 static int ssl_read(BIO *h, char *buf, int size);
  71 static int ssl_puts(BIO *h, const char *str);
  72 static long ssl_ctrl(BIO *h, int cmd, long arg1, void *arg2);
  73 static int ssl_new(BIO *h);
  74 static int ssl_free(BIO *data);
  75 static long ssl_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp);
  76 typedef struct bio_ssl_st
  77         {
  78         SSL *ssl; /* The ssl handle :-) */
  79         /* re-negotiate every time the total number of bytes is this size */
  80         int num_renegotiates;
  81         unsigned long renegotiate_count;
  82         unsigned long byte_count;
  83         unsigned long renegotiate_timeout;