From f3cce185477d504675de82d9f0957b4c0c2e6ddc Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Tue, 1 Jul 2008 15:45:16 +0000 Subject: [PATCH] * Initial luaxyssl Package --- contrib/package/luaxyssl/Makefile | 43 ++++ .../luaxyssl/patches/100-compile-fixes.patch | 273 +++++++++++++++++++++ 2 files changed, 316 insertions(+) create mode 100644 contrib/package/luaxyssl/Makefile create mode 100644 contrib/package/luaxyssl/patches/100-compile-fixes.patch diff --git a/contrib/package/luaxyssl/Makefile b/contrib/package/luaxyssl/Makefile new file mode 100644 index 000000000..bd7492663 --- /dev/null +++ b/contrib/package/luaxyssl/Makefile @@ -0,0 +1,43 @@ +include $(TOPDIR)/rules.mk + +PKG_BRANCH:=trunk +PKG_NAME:=luaxyssl +PKG_RELEASE:=1 +PKG_SOURCE_URL:=http://luaxyssl.googlecode.com/svn/$(PKG_BRANCH) +PKG_REV:=65 +PKG_VERSION:=0.2+svn$(PKG_REV) +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz +PKG_SOURCE_PROTO:=svn +PKG_SOURCE_VERSION:=$(PKG_REV) + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + +include $(INCLUDE_DIR)/package.mk + +define Package/luaxyssl + SECTION:=lang + CATEGORY:=Languages + SUBMENU:=LUA + TITLE:=xyssl-Bindings for Lua + URL:=http://code.google.com/p/luaxyssl + DEPENDS:=+liblua +libxyssl +endef + +define Build/Configure +endef + +define Build/Compile + $(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) -shared -fpic -pedantic -Wall \ + -I$(STAGING_DIR)/usr/include \ + -DXYSSL=9 \ + -o $(PKG_BUILD_DIR)/lxyssl.so -lxyssl $(PKG_BUILD_DIR)/lxyssl.c +endef + +define Package/luaxyssl/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_DATA) $(PKG_BUILD_DIR)/lxyssl.so $(1)/usr/lib/lua +endef + +$(eval $(call BuildPackage,luaxyssl)) diff --git a/contrib/package/luaxyssl/patches/100-compile-fixes.patch b/contrib/package/luaxyssl/patches/100-compile-fixes.patch new file mode 100644 index 000000000..94091f5c6 --- /dev/null +++ b/contrib/package/luaxyssl/patches/100-compile-fixes.patch @@ -0,0 +1,273 @@ +Index: luaxyssl-0.2+svn65/lxyssl.c +=================================================================== +--- luaxyssl-0.2+svn65.orig/lxyssl.c 2008-07-01 17:28:52.000000000 +0200 ++++ luaxyssl-0.2+svn65/lxyssl.c 2008-07-01 17:32:00.000000000 +0200 +@@ -5,6 +5,7 @@ + * This code can be distributed under the LGPL license + */ + ++#include + #include + #include + #include +@@ -12,6 +13,7 @@ + #include + #include + #include ++#include + #else + #include + #include +@@ -326,7 +328,7 @@ + return 1; + } + if (lua_isstring(L, -1)) { +- int len; ++ size_t len; + const char *master = luaL_checklstring(L, -1, &len); + memcpy(ssl->session->master, master, len < sizeof(ssl->session->master) ? len : sizeof(ssl->session->master)); + lua_pop(L, 1); +@@ -479,7 +481,7 @@ + + static int Laes(lua_State *L) + { +- int klen; ++ size_t klen; + const unsigned char *key = luaL_checklstring(L, 1, &klen); + int bits = luaL_optinteger(L, 2, 128); + dual_aes_context *aes = lua_newuserdata(L,sizeof(dual_aes_context)); +@@ -503,7 +505,7 @@ + + static int Lrc4(lua_State *L) + { +- int klen; ++ size_t klen; + const unsigned char *key = luaL_checklstring(L, 1, &klen); + arc4_context *rc4 = lua_newuserdata(L,sizeof(arc4_context)); + arc4_setup(rc4, (unsigned char *)key, klen); +@@ -750,7 +752,7 @@ + static int Lhash(lua_State *L) + { + const char *type = luaL_checkstring(L,1); +- int klen=0; ++ size_t klen=0; + const unsigned char *key = luaL_optlstring(L, 2, NULL, &klen); + hash_context *obj = lua_newuserdata(L,sizeof(hash_context)); + +@@ -869,7 +871,7 @@ + static int Laes_encrypt(lua_State *L) + { + dual_aes_context *obj=Pget_aes(L,1); +- int len; ++ size_t len; + const char *data = luaL_checklstring(L, 2, &len); + int i; + luaL_Buffer B; +@@ -890,7 +892,7 @@ + static int Laes_decrypt(lua_State *L) + { + dual_aes_context *obj=Pget_aes(L,1); +- int len; ++ size_t len; + const char *data = luaL_checklstring(L, 2, &len); + int i; + luaL_Buffer B; +@@ -911,7 +913,7 @@ + static int Lrc4_crypt(lua_State *L) + { + arc4_context *obj=Pget_rc4(L,1); +- int len; ++ size_t len; + const char *data = luaL_checklstring(L, 2, &len); + luaL_Buffer B; + unsigned char temp[256]; +@@ -938,9 +940,9 @@ + static int Laes_cbc_encrypt(lua_State *L) + { + dual_aes_context *obj=Pget_aes(L,1); +- int len; ++ size_t len; + const char *data = luaL_checklstring(L, 2, &len); +- int iv_len; ++ size_t iv_len; + const char *IV = luaL_checklstring(L, 3, &iv_len); + int i=0; + luaL_Buffer B; +@@ -970,9 +972,9 @@ + static int Laes_cbc_decrypt(lua_State *L) + { + dual_aes_context *obj=Pget_aes(L,1); +- int len; ++ size_t len; + const char *data = luaL_checklstring(L, 2, &len); +- int iv_len; ++ size_t iv_len; + const char *IV = luaL_checklstring(L, 3, &iv_len); + int i; + luaL_Buffer B; +@@ -1002,9 +1004,9 @@ + static int Laes_cfb_encrypt(lua_State *L) + { + dual_aes_context *obj=Pget_aes(L,1); +- int len; ++ size_t len; + const char *data = luaL_checklstring(L, 2, &len); +- int iv_len; ++ size_t iv_len; + const char *IV = luaL_checklstring(L, 3, &iv_len); + int start = luaL_optinteger(L,4,0); + int i; +@@ -1039,9 +1041,9 @@ + static int Laes_cfb_decrypt(lua_State *L) + { + dual_aes_context *obj=Pget_aes(L,1); +- int len; ++ size_t len; + const char *data = luaL_checklstring(L, 2, &len); +- int iv_len; ++ size_t iv_len; + const char *IV = luaL_checklstring(L, 3, &iv_len); + int start = luaL_optinteger(L,4,0); + int i; +@@ -1079,7 +1081,7 @@ + static int Lhash_update(lua_State *L) + { + hash_context *obj=Pget_hash(L,1); +- int len; ++ size_t len; + const char *data = luaL_checklstring(L, 2, &len); + obj->update(&obj->eng, (unsigned char *)data, len); + lua_pushvalue(L, 1); +@@ -1091,7 +1093,7 @@ + { + hash_context *obj=Pget_hash(L,1); + unsigned char out[64]; +- int len; ++ size_t len; + const char *data = luaL_optlstring(L, 2, "", &len); + obj->update(&obj->eng, (unsigned char *)data, len); + obj->finish(&obj->eng, out); +@@ -1166,7 +1168,7 @@ + static int LaddTrustedCA(lua_State *L) + { + int ret; +- int ca_len; ++ size_t ca_len; + const char *ca = luaL_checklstring(L, 1, &ca_len); + + ret = x509_add_certs( &trustedCA, (unsigned char *) ca, ca_len); +@@ -1311,9 +1313,9 @@ + static int Lsessinfo(lua_State *L) /** sessinfo(c) */ + { + xyssl_context *xyssl=Pget(L,1); +- int id_len; ++ size_t id_len; + char *sessid = (char *)luaL_optlstring(L, 2, NULL, &id_len); +- int master_len; ++ size_t master_len; + char *master = (char *)luaL_optlstring(L, 3, NULL, &master_len); + int cipher = (int) luaL_optnumber(L,4,0); + time_t start = (time_t) luaL_optnumber(L,5,time(NULL)); +@@ -1597,7 +1599,7 @@ + static int LsessionCA(lua_State *L) /** setca(ca) **/ + { + int top = lua_gettop(L); +- int ca_len; ++ size_t ca_len; + int ret; + xyssl_context *xyssl=Pget(L,1); + x509_cert *cacert = &xyssl->cacert; +@@ -1624,9 +1626,9 @@ + ssl_context *ssl=&xyssl->ssl; + x509_cert *mycert= &xyssl->mycert; + rsa_context *rsa = &xyssl->mykey; +- int cert_len; +- int key_len; +- int pwd_len; ++ size_t cert_len; ++ size_t key_len; ++ size_t pwd_len; + int ret; + const char *cert = luaL_optlstring(L, 2, ssl->endpoint ? test_srv_crt: NULL, &cert_len); + const char *key = luaL_optlstring(L, 3, ssl->endpoint ? test_srv_key: NULL, &key_len); +@@ -1694,7 +1696,7 @@ + ssl_context *ssl=&xyssl->ssl; + x509_cert *cacert = &xyssl->cacert; + int verification = luaL_optinteger(L,2,0); +- int peer_len; ++ size_t peer_len; + const char *expected_peer= luaL_optlstring(L, 3, NULL, &peer_len); + ssl_set_authmode( ssl, verification ); + if (xyssl->peer_cn) free(xyssl->peer_cn); +@@ -1748,8 +1750,8 @@ + static int Lx509verify(lua_State *L) /** x509verify(ca, crt) */ + { + int top = lua_gettop(L); +- int crt_size; +- int ca_size; ++ size_t crt_size; ++ size_t ca_size; + int ret; + int flag; + x509_cert ca; +@@ -1797,9 +1799,9 @@ + static int Lrsaverify(lua_State *L) /** rsaverify(data, sig, [crt]) */ + { + int top = lua_gettop(L); +- int crt_size; +- int data_size; +- int sig_size; ++ size_t crt_size; ++ size_t data_size; ++ size_t sig_size; + int ret; + x509_cert cert; + const char *data = luaL_checklstring(L, 1, &data_size); +@@ -1833,8 +1835,8 @@ + static int Lrsaencrypt(lua_State *L) /** rsaencrypt(data, [crt]) */ + { + int top = lua_gettop(L); +- int crt_size; +- int data_size; ++ size_t crt_size; ++ size_t data_size; + unsigned char m[512]; + int ret; + x509_cert cert; +@@ -1868,9 +1870,9 @@ + static int Lrsasign(lua_State *L) /** rsasign(data, [key, [pw]]) */ + { + int top = lua_gettop(L); +- int key_size; +- int data_size; +- int pwd_len; ++ size_t key_size; ++ size_t data_size; ++ size_t pwd_len; + int ret; + unsigned char sig[512]; + rsa_context rsa; +@@ -1905,9 +1907,9 @@ + static int Lrsadecrypt(lua_State *L) /** rsadecrypt(data, [key, [pw]]) */ + { + int top = lua_gettop(L); +- int key_size; +- int data_size; +- int pwd_len; ++ size_t key_size; ++ size_t data_size; ++ size_t pwd_len; + int out_len; + int ret; + unsigned char m[512]; +@@ -2076,8 +2078,8 @@ + static int Ldhmsecret(lua_State *L) /** dhsecret(public, private, [P, [G]]) */ + { + int top = lua_gettop(L); +- int public_size; +- int private_size; ++ size_t public_size; ++ size_t private_size; + int ret; + dhm_context dhm; + unsigned char buf[512]; -- 2.11.0