[arch-commits] Commit in openipmi/repos (3 files)
Felix Yan
felixonmars at archlinux.org
Fri Jan 5 04:49:20 UTC 2018
Date: Friday, January 5, 2018 @ 04:49:19
Author: felixonmars
Revision: 278811
archrelease: copy trunk to community-staging-x86_64
Added:
openipmi/repos/community-staging-x86_64/
openipmi/repos/community-staging-x86_64/0001-Add-openssl-1.1.0-support.patch
(from rev 278810, openipmi/trunk/0001-Add-openssl-1.1.0-support.patch)
openipmi/repos/community-staging-x86_64/PKGBUILD
(from rev 278810, openipmi/trunk/PKGBUILD)
--------------------------------------+
0001-Add-openssl-1.1.0-support.patch | 184 +++++++++++++++++++++++++++++++++
PKGBUILD | 48 ++++++++
2 files changed, 232 insertions(+)
Copied: openipmi/repos/community-staging-x86_64/0001-Add-openssl-1.1.0-support.patch (from rev 278810, openipmi/trunk/0001-Add-openssl-1.1.0-support.patch)
===================================================================
--- community-staging-x86_64/0001-Add-openssl-1.1.0-support.patch (rev 0)
+++ community-staging-x86_64/0001-Add-openssl-1.1.0-support.patch 2018-01-05 04:49:19 UTC (rev 278811)
@@ -0,0 +1,184 @@
+From eeacbf0c675b61881fc00539cb365de084950ceb Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <sebastian at breakpoint.cc>
+Date: Sun, 25 Sep 2016 23:45:12 +0200
+Subject: [PATCH] Add openssl 1.1.0 support
+
+while keeping work under openssl 1.0.2.
+
+Signed-off-by: Sebastian Andrzej Siewior <sebastian at breakpoint.cc>
+Signed-off-by: Corey Minyard <cminyard at mvista.com>
+---
+ lanserv/lanserv_ipmi.c | 34 +++++++++++++++++++++-------------
+ lib/aes_cbc.c | 34 +++++++++++++++++++++-------------
+ 2 files changed, 42 insertions(+), 26 deletions(-)
+
+diff --git a/lanserv/lanserv_ipmi.c b/lanserv/lanserv_ipmi.c
+index b0a2431..67bf74a 100644
+--- a/lanserv/lanserv_ipmi.c
++++ b/lanserv/lanserv_ipmi.c
+@@ -2217,7 +2217,7 @@ aes_cbc_encrypt(lanserv_data_t *lan, session_t *session,
+ unsigned char *d;
+ unsigned char *iv;
+ unsigned int i;
+- EVP_CIPHER_CTX ctx;
++ EVP_CIPHER_CTX *ctx;
+ int rv;
+ int outlen;
+ int tmplen;
+@@ -2264,14 +2264,18 @@ aes_cbc_encrypt(lanserv_data_t *lan, session_t *session,
+ *data_size += 16;
+
+ /* Ok, we're set to do the crypt operation. */
+- EVP_CIPHER_CTX_init(&ctx);
+- EVP_EncryptInit_ex(&ctx, EVP_aes_128_cbc(), NULL, a->ckey, iv);
+- EVP_CIPHER_CTX_set_padding(&ctx, 0);
+- if (!EVP_EncryptUpdate(&ctx, *pos, &outlen, d, l)) {
++ ctx = EVP_CIPHER_CTX_new();
++ if (!ctx) {
++ rv = ENOMEM;
++ goto out_cleanup;
++ }
++ EVP_EncryptInit_ex(ctx, EVP_aes_128_cbc(), NULL, a->ckey, iv);
++ EVP_CIPHER_CTX_set_padding(ctx, 0);
++ if (!EVP_EncryptUpdate(ctx, *pos, &outlen, d, l)) {
+ rv = ENOMEM;
+ goto out_cleanup;
+ }
+- if (!EVP_EncryptFinal_ex(&ctx, (*pos) + outlen, &tmplen)) {
++ if (!EVP_EncryptFinal_ex(ctx, (*pos) + outlen, &tmplen)) {
+ rv = ENOMEM; /* right? */
+ goto out_cleanup;
+ }
+@@ -2281,7 +2285,7 @@ aes_cbc_encrypt(lanserv_data_t *lan, session_t *session,
+ *data_len = outlen + 16;
+
+ out_cleanup:
+- EVP_CIPHER_CTX_cleanup(&ctx);
++ EVP_CIPHER_CTX_free(ctx);
+ free(d);
+ return rv;
+ }
+@@ -2292,7 +2296,7 @@ aes_cbc_decrypt(lanserv_data_t *lan, session_t *session, msg_t *msg)
+ auth_data_t *a = &session->auth_data;
+ unsigned int l = msg->len;
+ unsigned char *d;
+- EVP_CIPHER_CTX ctx;
++ EVP_CIPHER_CTX *ctx;
+ int outlen;
+ unsigned char *pad;
+ int padlen;
+@@ -2312,10 +2316,14 @@ aes_cbc_decrypt(lanserv_data_t *lan, session_t *session, msg_t *msg)
+ memcpy(d, msg->data+16, l);
+
+ /* Ok, we're set to do the decrypt operation. */
+- EVP_CIPHER_CTX_init(&ctx);
+- EVP_DecryptInit_ex(&ctx, EVP_aes_128_cbc(), NULL, a->k2, msg->data);
+- EVP_CIPHER_CTX_set_padding(&ctx, 0);
+- if (!EVP_DecryptUpdate(&ctx, msg->data+16, &outlen, d, l)) {
++ ctx = EVP_CIPHER_CTX_new();
++ if (!ctx) {
++ rv = ENOMEM;
++ goto out_cleanup;
++ }
++ EVP_DecryptInit_ex(ctx, EVP_aes_128_cbc(), NULL, a->k2, msg->data);
++ EVP_CIPHER_CTX_set_padding(ctx, 0);
++ if (!EVP_DecryptUpdate(ctx, msg->data+16, &outlen, d, l)) {
+ rv = EINVAL;
+ goto out_cleanup;
+ }
+@@ -2348,7 +2356,7 @@ aes_cbc_decrypt(lanserv_data_t *lan, session_t *session, msg_t *msg)
+ msg->len = outlen;
+
+ out_cleanup:
+- EVP_CIPHER_CTX_cleanup(&ctx);
++ EVP_CIPHER_CTX_free(ctx);
+ free(d);
+ return rv;
+ }
+diff --git a/lib/aes_cbc.c b/lib/aes_cbc.c
+index 483cdfb..f20d69b 100644
+--- a/lib/aes_cbc.c
++++ b/lib/aes_cbc.c
+@@ -86,7 +86,7 @@ aes_cbc_encrypt(ipmi_con_t *ipmi,
+ unsigned int l = *payload_len;
+ unsigned int i;
+ unsigned char *d;
+- EVP_CIPHER_CTX ctx;
++ EVP_CIPHER_CTX *ctx;
+ int rv;
+ int outlen;
+ int tmplen;
+@@ -133,15 +133,19 @@ aes_cbc_encrypt(ipmi_con_t *ipmi,
+ *header_len -= 16;
+ *max_payload_len += 16;
+
++ ctx = EVP_CIPHER_CTX_new();
++ if (!ctx) {
++ rv = ENOMEM;
++ goto out_cleanup;
++ }
+ /* Ok, we're set to do the crypt operation. */
+- EVP_CIPHER_CTX_init(&ctx);
+- EVP_EncryptInit_ex(&ctx, EVP_aes_128_cbc(), NULL, info->k2, iv);
+- EVP_CIPHER_CTX_set_padding(&ctx, 0);
+- if (!EVP_EncryptUpdate(&ctx, *payload, &outlen, d, l)) {
++ EVP_EncryptInit_ex(ctx, EVP_aes_128_cbc(), NULL, info->k2, iv);
++ EVP_CIPHER_CTX_set_padding(ctx, 0);
++ if (!EVP_EncryptUpdate(ctx, *payload, &outlen, d, l)) {
+ rv = ENOMEM; /* right? */
+ goto out_cleanup;
+ }
+- if (!EVP_EncryptFinal_ex(&ctx, (*payload) + outlen, &tmplen)) {
++ if (!EVP_EncryptFinal_ex(ctx, (*payload) + outlen, &tmplen)) {
+ rv = ENOMEM; /* right? */
+ goto out_cleanup;
+ }
+@@ -154,7 +158,7 @@ aes_cbc_encrypt(ipmi_con_t *ipmi,
+ *payload_len = outlen + 16;
+
+ out_cleanup:
+- EVP_CIPHER_CTX_cleanup(&ctx);
++ EVP_CIPHER_CTX_free(ctx);
+ ipmi_mem_free(d);
+
+ return rv;
+@@ -170,7 +174,7 @@ aes_cbc_decrypt(ipmi_con_t *ipmi,
+ unsigned int l = *payload_len;
+ unsigned char *d;
+ unsigned char *p;
+- EVP_CIPHER_CTX ctx;
++ EVP_CIPHER_CTX *ctx;
+ int outlen;
+ int rv = 0;
+ unsigned char *pad;
+@@ -195,10 +199,14 @@ aes_cbc_decrypt(ipmi_con_t *ipmi,
+ memcpy(d, p, l);
+
+ /* Ok, we're set to do the decrypt operation. */
+- EVP_CIPHER_CTX_init(&ctx);
+- EVP_DecryptInit_ex(&ctx, EVP_aes_128_cbc(), NULL, info->k2, *payload);
+- EVP_CIPHER_CTX_set_padding(&ctx, 0);
+- if (!EVP_DecryptUpdate(&ctx, p, &outlen, d, l)) {
++ ctx = EVP_CIPHER_CTX_new();
++ if (!ctx) {
++ rv = ENOMEM;
++ goto out_cleanup;
++ }
++ EVP_DecryptInit_ex(ctx, EVP_aes_128_cbc(), NULL, info->k2, *payload);
++ EVP_CIPHER_CTX_set_padding(ctx, 0);
++ if (!EVP_DecryptUpdate(ctx, p, &outlen, d, l)) {
+ rv = EINVAL;
+ goto out_cleanup;
+ }
+@@ -231,7 +239,7 @@ aes_cbc_decrypt(ipmi_con_t *ipmi,
+ *payload_len = outlen;
+
+ out_cleanup:
+- EVP_CIPHER_CTX_cleanup(&ctx);
++ EVP_CIPHER_CTX_free(ctx);
+ ipmi_mem_free(d);
+ return rv;
+ }
+--
+2.12.0
+
Copied: openipmi/repos/community-staging-x86_64/PKGBUILD (from rev 278810, openipmi/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD (rev 0)
+++ community-staging-x86_64/PKGBUILD 2018-01-05 04:49:19 UTC (rev 278811)
@@ -0,0 +1,48 @@
+# $Id$
+# Maintainer: Gaetan Bisson <bisson at archlinux.org>
+# Contributor: Miguel Revilla <yo at miguelrevilla.com>
+# Contributor: Massimiliano Torromeo <massimiliano.torromeo at gmail.com>
+# Contributor: goodmen <goodmenzy at gmail.com>
+
+pkgname=openipmi
+_pkgname=OpenIPMI
+pkgver=2.0.22
+pkgrel=6
+pkgdesc='Full-function IPMI (Intelligent Platform Management Interface) system'
+url='http://openipmi.sourceforge.net/'
+arch=('x86_64')
+license=('LGPL2.1')
+makedepends=('swig')
+depends=('popt' 'ncurses' 'net-snmp' 'glib2' 'gdbm')
+source=("https://downloads.sourceforge.net/project/${pkgname}/${_pkgname}%202.0%20Library/${_pkgname}-${pkgver}.tar.gz"
+ '0001-Add-openssl-1.1.0-support.patch')
+sha512sums=('78017fc0b52ce6a83db45f595f50170410120c9f7394429869c177ee40ea5b924bcc0e36bb60f9368a75a2f78ff71c70ae3631ba55a207cfb6eb4f62aa44ff89'
+ 'a121bf26112a257a27bcd4c994f0d6a967643c1b4cffbe53fc11b1d1d8bc8f35dbf5eef664bc8f49c8dda04a0b0c876e6734b51b62af34e9c74e8ada98a9a806')
+
+options=('!libtool')
+
+prepare() {
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ patch -Np1 -i $srcdir/0001-Add-openssl-1.1.0-support.patch
+
+ sed \
+ -e '/Requires:/s/pthread//' \
+ -e '/Libs:/s/$/ -lpthread/' \
+ -i OpenIPMIpthread.pc.in
+}
+
+build() {
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+
+ make
+}
+
+package() {
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install-exec
+ make DESTDIR="${pkgdir}" install
+ install -Dm644 doc/IPMI.pdf "${pkgdir}/usr/share/doc/${pkgname}/IPMI.pdf"
+}
More information about the arch-commits
mailing list