* Initial luaxyssl Package
authorSteven Barth <steven@midlink.org>
Tue, 1 Jul 2008 15:45:16 +0000 (15:45 +0000)
committerSteven Barth <steven@midlink.org>
Tue, 1 Jul 2008 15:45:16 +0000 (15:45 +0000)
contrib/package/luaxyssl/Makefile [new file with mode: 0644]
contrib/package/luaxyssl/patches/100-compile-fixes.patch [new file with mode: 0644]

diff --git a/contrib/package/luaxyssl/Makefile b/contrib/package/luaxyssl/Makefile
new file mode 100644 (file)
index 0000000..bd74926
--- /dev/null
@@ -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 (file)
index 0000000..94091f5
--- /dev/null
@@ -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 <stdlib.h>
+ #include <stdio.h>
+ #include <memory.h>
+ #include <fcntl.h>
+@@ -12,6 +13,7 @@
+ #include <sys/socket.h>
+ #include <sys/wait.h>
+ #include <sys/time.h>
++#include <unistd.h>
+ #else
+ #include <time.h>
+ #include <winsock.h>
+@@ -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];