Print this page
OS-5558 libmd should leverage SHA extensions
| Split |
Close |
| Expand all |
| Collapse all |
--- old/usr/src/lib/libmd/common/mapfile-vers
+++ new/usr/src/lib/libmd/common/mapfile-vers
1 1 #
2 2 # CDDL HEADER START
3 3 #
4 4 # The contents of this file are subject to the terms of the
5 5 # Common Development and Distribution License (the "License").
6 6 # You may not use this file except in compliance with the License.
7 7 #
8 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 9 # or http://www.opensolaris.org/os/licensing.
10 10 # See the License for the specific language governing permissions
11 11 # and limitations under the License.
12 12 #
13 13 # When distributing Covered Code, include this CDDL HEADER in each
|
↓ open down ↓ |
13 lines elided |
↑ open up ↑ |
14 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 15 # If applicable, add the following below this CDDL HEADER, with the
16 16 # fields enclosed by brackets "[]" replaced with your own identifying
17 17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 18 #
19 19 # CDDL HEADER END
20 20 #
21 21 #
22 22 # Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
23 23 # Copyright 2013 Saso Kiselkov. All rights reserved.
24 +# Copyright (c) 2018, Joyent, Inc.
24 25 #
25 26
26 27 #
27 28 # MAPFILE HEADER START
28 29 #
29 30 # WARNING: STOP NOW. DO NOT MODIFY THIS FILE.
30 31 # Object versioning must comply with the rules detailed in
31 32 #
32 33 # usr/src/lib/README.mapfiles
33 34 #
34 35 # You should not be making modifications here until you've read the most current
35 36 # copy of that file. If you need help, contact a gatekeeper for guidance.
36 37 #
37 38 # MAPFILE HEADER END
38 39 #
39 40
40 41 $mapfile_version 2
41 42
42 43 # Note:
43 44 #
44 45 # SHA256Update, SHA384Update, and SHA512Update are all
45 46 # weak aliases for SHA2Update.
46 47 #
47 48 # SHA256Final, SHA384Final, and SHA512Final are all
48 49 # weak aliases for SHA2Final
49 50 #
50 51 # We use NODYNSORT to keep the weak aliases out of the .SUNW_dymsymsort
51 52 # ELF section. As a result, ld will put the two main symbols in.
52 53 #
53 54
54 55 SYMBOL_VERSION ILLUMOS_0.1 {
55 56 global:
56 57 Skein1024_Final;
57 58 Skein1024_Final_Pad;
58 59 Skein1024_Init;
59 60 Skein1024_InitExt;
60 61 Skein1024_Output;
61 62 Skein1024_Update;
62 63 Skein_256_Final;
63 64 Skein_256_Final_Pad;
64 65 Skein_256_Init;
65 66 Skein_256_InitExt;
66 67 Skein_256_Output;
67 68 Skein_256_Update;
68 69 Skein_512_Final;
69 70 Skein_512_Final_Pad;
70 71 Skein_512_Init;
71 72 Skein_512_InitExt;
72 73 Skein_512_Output;
73 74 Skein_512_Update;
74 75 EdonRFinal;
75 76 EdonRHash;
76 77 EdonRInit;
77 78 EdonRUpdate;
78 79 } SUNW_1.1;
79 80
80 81 SYMBOL_VERSION SUNW_1.1 {
81 82 global:
82 83 MD4Final;
83 84 MD4Init;
84 85 MD4Update;
85 86 md5_calc;
86 87 MD5Final { FLAGS = NODIRECT }; # Addr interpose from testsuite
87 88 MD5Init { FLAGS = NODIRECT }; # Addr interpose from testsuite
88 89 MD5Update { FLAGS = NODIRECT }; # Addr interpose from testsuite
89 90 SHA1Final;
90 91 SHA1Init;
91 92 SHA1Update;
92 93 SHA256Final { FLAGS = NODYNSORT };
93 94 SHA256Init;
|
↓ open down ↓ |
60 lines elided |
↑ open up ↑ |
94 95 SHA256Update { FLAGS = NODYNSORT };
95 96 SHA2Final;
96 97 SHA2Init;
97 98 SHA2Update;
98 99 SHA384Final { FLAGS = NODYNSORT };
99 100 SHA384Init;
100 101 SHA384Update { FLAGS = NODYNSORT };
101 102 SHA512Final { FLAGS = NODYNSORT };
102 103 SHA512Init;
103 104 SHA512Update { FLAGS = NODYNSORT };
105 +};
106 +
107 +SYMBOL_VERSION ILLUMOSprivate {
108 + global:
109 +$if _ELF64 && _x86
110 + #
111 + # We use hardware capabilities to define multiple versions of
112 + # the processing certain values. Unfortunately, at this time,
113 + # that requires these to be global symbols, even though we don't
114 + # want them to be. As such, they remain in a private version and
115 + # hopefully some day will be removed.
116 + #
117 + sha1_block_data_order;
118 + SHA256TransformBlocks;
119 +$endif
104 120 local:
105 121 *;
106 122 };
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX