aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/cryptodev-linux/Makefile
blob: da18c714b0a7fa43ad202979e279bad5ba1a11e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#
# Copyright (C) 2014 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
# $Id$

include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk

PKG_NAME:=cryptodev-linux
PKG_VERSION:=1.10
PKG_RELEASE:=1

PKG_SOURCE_URL:=https://codeload.github.com/$(PKG_NAME)/$(PKG_NAME)/tar.gz/$(PKG_NAME)-$(PKG_VERSION)?
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_HASH:=833ab7c5c88d2b700a7c702a151254c089a3058886a63cc7d12630e364b8ea83
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING

PKG_MAINTAINER:=Ansuel Smith <ansuelsmth@gmail.com>

PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)-$(PKG_NAME)-$(PKG_VERSION)

include $(INCLUDE_DIR)/package.mk

define KernelPackage/cryptodev
  SUBMENU:=Cryptographic API modules
  TITLE:=Driver for cryptographic acceleration
  URL:=http://cryptodev-linux.org/
  VERSION:=$(LINUX_VERSION)+$(PKG_VERSION)-$(BOARD)-$(PKG_RELEASE)
  DEPENDS:=+kmod-crypto-authenc +kmod-crypto-hash
  FILES:=$(PKG_BUILD_DIR)/cryptodev.$(LINUX_KMOD_SUFFIX)
  AUTOLOAD:=$(call AutoLoad,50,cryptodev)
  MODPARAMS.cryptodev:=cryptodev_verbosity=-1
endef

define KernelPackage/cryptodev/description
  This is a driver for that allows to use the Linux kernel supported
  hardware ciphers by user-space applications.
endef

define Build/Configure
endef

define Build/Compile
	$(MAKE) -C $(PKG_BUILD_DIR) \
		$(KERNEL_MAKE_FLAGS) \
		KERNEL_DIR="$(LINUX_DIR)"
endef

define Build/InstallDev
	$(INSTALL_DIR) $(STAGING_DIR)/usr/include/crypto
	$(CP) $(PKG_BUILD_DIR)/crypto/cryptodev.h $(STAGING_DIR)/usr/include/crypto/
endef

$(eval $(call KernelPackage,cryptodev))
pan class="n">context, Cursor c, int flags, Set<Long> initialChecked) { super(context, c, flags); if (initialChecked != null) { mSelectedItems.addAll(initialChecked); } } public static class KeySelectableItemViewHolder extends KeyItemViewHolder { public CheckBox mCheckbox; public KeySelectableItemViewHolder(View view) { super(view); mCheckbox = (CheckBox) view.findViewById(R.id.selected); } public void setCheckedState(boolean checked) { mCheckbox.setChecked(checked); } } @Override public View newView(Context context, Cursor cursor, ViewGroup parent) { View view = mInflater.inflate(R.layout.key_list_selectable_item, parent, false); KeySelectableItemViewHolder holder = new KeySelectableItemViewHolder(view); view.setTag(holder); return view; } @Override public void bindView(View view, Context context, Cursor cursor) { super.bindView(view, context, cursor); KeySelectableItemViewHolder h = (KeySelectableItemViewHolder) view.getTag(); h.setCheckedState(mSelectedItems.contains(h.mDisplayedItem.mKeyId)); } public void setCheckedStates(Set<Long> checked) { mSelectedItems.clear(); mSelectedItems.addAll(checked); notifyDataSetChanged(); } public Set<Long> getSelectedMasterKeyIds() { return Collections.unmodifiableSet(mSelectedItems); } @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Log.d(Constants.TAG, "clicked id: " + id); long masterKeyId = getMasterKeyId(position); if (mSelectedItems.contains(masterKeyId)) { mSelectedItems.remove(masterKeyId); } else { mSelectedItems.add(masterKeyId); } notifyDataSetChanged(); } }