--- /dev/null
+#
+# Copyright (C) 2008 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+# $Id: $
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=cyassl
+PKG_VERSION:=0.9.9
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).zip
+PKG_SOURCE_URL:=http://www.yassl.com/
+PKG_MD5SUM:=2fe084425e7c049d4f03ceed6b61af52
+PKG_FIXUP:=libtool
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/cyassl/Default
+ TITLE:=CyaSSL
+ URL:=http://www.yassl.com/
+endef
+
+define Package/libcyassl
+ $(call Package/cyassl/Default)
+ SECTION:=libs
+ CATEGORY:=Libraries
+ DEPENDS:=+zlib
+ TITLE+= (library)
+endef
+
+define Package/libcyassl/description
+ CyaSSL is an SSL library optimized for small footprint, both on disk and for memory use.
+endef
+
+TARGET_CFLAGS += $(FPIC)
+
+CONFIGURE_ARGS += \
+ --with-zlib="$(STAGING_DIR)/usr"
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(1)/usr/include/ctaocrypt
+ $(CP) $(PKG_BUILD_DIR)/ctaocrypt/include/*.h $(1)/usr/include/ctaocrypt
+
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_BUILD_DIR)/src/.libs/libcyassl.{a,so*} $(1)/usr/lib/
+ $(CP) $(PKG_BUILD_DIR)/src/libcyassl.la $(1)/usr/lib/
+endef
+
+define Package/libcyassl/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_BUILD_DIR)/src/.libs/libcyassl.so* $(1)/usr/lib/
+endef
+
+$(eval $(call BuildPackage,libcyassl))
--- /dev/null
+diff -pruN cyassl-0.9.9.orig/ctaocrypt/include/hmac.h cyassl-0.9.9/ctaocrypt/include/hmac.h
+--- cyassl-0.9.9.orig/ctaocrypt/include/hmac.h 2008-12-11 16:27:12.490140301 +0100
++++ cyassl-0.9.9/ctaocrypt/include/hmac.h 2008-12-11 16:27:50.318874180 +0100
+@@ -61,7 +61,7 @@ typedef struct Hmac {
+ Hash hash;
+ word32 ipad[HMAC_BLOCK_SIZE / sizeof(word32)]; /* same block size all*/
+ word32 opad[HMAC_BLOCK_SIZE / sizeof(word32)];
+- word32 innerHash[SHA_DIGEST_SIZE / sizeof(word32)]; /* max size */
++ word32 innerHash[SHA256_DIGEST_SIZE / sizeof(word32)]; /* max size */
+ byte macType; /* md5 sha or sha256 */
+ byte innerHashKeyed; /* keyed flag */
+ } Hmac;