from xen.sv.NodeInfo import NodeInfo from xen.sv.DomInfo import DomInfo from xen.sv.CreateDomain import CreateDomain from xen.sv.RestoreDomain import RestoreDomain from xen.sv.util import getVar # adapter to make this all work with mod_python # as opposed to Twisted # (c) Tom Wilkie 2005 class Args: def __init__( self, req ): from mod_python.util import FieldStorage self.fieldStorage = FieldStorage( req, True ) # return a list of values for the given key, # or None if key not there def get( self, var ): retVar = self.fieldStorage.getlist( var ) if len( retVar ) == 0: return None else: return retVar # return a list of tuples, # (key, value) where value is a list of values def items( self ): result = []; for key in self.fieldStorage.keys(): result.append( (key, self.fieldStorage.getlist( key ) ) ) return result # This is the Main class # It pieces together all the modules class Main: def __init__( self ): self.modules = { "node": NodeInfo, "create": CreateDomain, "restore" : RestoreDomain, "info": DomInfo } self.init_done = False def init_modules( self, request ): for moduleName, module in self.modules.iteritems(): self.modules[ moduleName ] = module( self.urlWriter( moduleName, request.url ) ) def render_menu( self, request ): if not self.init_done: self.init_modules( request ) self.init_done = True for _, module in self.modules.iteritems(): module.write_MENU( request ) request.write( "\n" ) def render_main( self, request ): if not self.init_done: self.init_modules( request ) self.init_done = True moduleName = getVar('mod', request) if moduleName not in self.modules: request.write( '

Please select a module

' ) else: module = self.modules[ moduleName ] module.write_BODY( request ) def do_POST( self, request ): if not self.init_done: self.init_modules( request ) self.init_done = True moduleName = getVar( 'mod', request ) if moduleName in self.modules: self.modules[ moduleName ].perform( request ) def urlWriter( self, module, url ): return lambda x: "%s?mod=%s%s" % ( url, module, x ) '>
path: root/package/kernel/cryptodev-linux/Makefile
blob: 2a8890286d367b1dd4fdeccfeb9a9805744a5545 (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
59
#
# 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
  DEFAULT:=m if ALL
  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))