• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1## @file
2#  Produces the UEFI Random Number Generator protocol
3#
4#  This module will leverage Intel Secure Key technology to produce the Random
5#  Number Generator protocol, which is used to provide high-quality random numbers
6#  for use in applications, or entropy for seeding other random number generators.
7#  Refer to http://software.intel.com/en-us/articles/intel-digital-random-number
8#  -generator-drng-software-implementation-guide/ for more information about Intel
9#  Secure Key technology.
10#
11#  Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>
12#  (C) Copyright 2015 Hewlett Packard Enterprise Development LP<BR>
13#  This program and the accompanying materials
14#  are licensed and made available under the terms and conditions of the BSD License
15#  which accompanies this distribution. The full text of the license may be found at
16#  http://opensource.org/licenses/bsd-license.php
17#
18#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
19#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
20#
21##
22
23[Defines]
24  INF_VERSION                    = 0x00010005
25  BASE_NAME                      = RngDxe
26  FILE_GUID                      = B981A835-6EE8-4f4c-AE0B-210AA0BFBF01
27  MODULE_TYPE                    = DXE_DRIVER
28  VERSION_STRING                 = 1.0
29  ENTRY_POINT                    = RngDriverEntry
30  MODULE_UNI_FILE                = RngDxe.uni
31
32#
33# The following information is for reference only and not required by the build tools.
34#
35#  VALID_ARCHITECTURES           = IA32 X64
36#
37
38[Sources.common]
39  RngDxe.c
40  RdRand.c
41  RdRand.h
42  AesCore.c
43  AesCore.h
44
45[Packages]
46  MdePkg/MdePkg.dec
47  SecurityPkg/SecurityPkg.dec
48
49[LibraryClasses]
50  UefiLib
51  UefiBootServicesTableLib
52  BaseLib
53  DebugLib
54  UefiDriverEntryPoint
55  TimerLib
56  RngLib
57
58[Guids]
59  gEfiRngAlgorithmSp80090Ctr256Guid   ## SOMETIMES_PRODUCES    ## GUID        # Unique ID of the algorithm for RNG
60  gEfiRngAlgorithmRaw                 ## SOMETIMES_PRODUCES    ## GUID        # Unique ID of the algorithm for RNG
61
62[Protocols]
63  gEfiRngProtocolGuid                ## PRODUCES
64
65[Depex]
66  TRUE
67
68[BuildOptions]
69  XCODE:*_*_*_CC_FLAGS = -mmmx -msse
70
71[UserExtensions.TianoCore."ExtraFiles"]
72  RngDxeExtra.uni
73