| |
| This Notice.txt file contains certain notices of software components included |
| with the software that Qualcomm Atheros, Inc. ("Qualcomm Atheros") is required |
| to provide you. Notwithstanding anything in the notices in this file, your use |
| of these software components together with the Qualcomm Atheros software |
| (Qualcomm Atheros software hereinafter referred to as "Software") is subject to |
| the terms of your license from Qualcomm Atheros. Compliance with all copyright |
| laws and software license agreements included in the notice section of this |
| file are the responsibility of the user. Except as may be granted by separate |
| express written agreement, this file provides no license to any Qualcomm |
| Atheros patents, trademarks, copyrights, or other intellectual property. |
| |
| Copyright (c) 2014 Qualcomm Atheros, Inc. All rights reserved. |
| |
| Qualcomm is a trademark of Qualcomm Incorporated, registered in the United |
| States and other countries. All Qualcomm Incorporated trademarks are used with |
| permission. Atheros is a trademark of Qualcomm Atheros, Inc., registered in the |
| United States and other countries. Other products and brand names may be |
| trademarks or registered trademarks of their respective owners. |
| |
| NOTICES: |
| |
| =============================================================================== |
| |
| 1. |
| |
| /* |
| * FILE: sha2.c |
| * AUTHOR: Aaron D. Gifford <me@aarongifford.com> |
| * |
| * Copyright (c) 2000-2001, Aaron D. Gifford |
| * All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * 3. Neither the name of the copyright holder nor the names of contributors |
| * may be used to endorse or promote products derived from this software |
| * without specific prior written permission. |
| * |
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTOR(S) ``AS IS'' AND |
| * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTOR(S) BE LIABLE |
| * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
| * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
| * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
| * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
| * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
| * SUCH DAMAGE. |
| * |
| * $Id: sha2.c,v 1.1 2001/11/08 00:01:51 adg Exp adg $ |
| */ |
| File: LLM_sp_sha2.c |
| |
| |
| /* |
| * FILE: sha2.h |
| * AUTHOR: Aaron D. Gifford <me@aarongifford.com> |
| * |
| * Copyright (c) 2000-2001, Aaron D. Gifford |
| * All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * 3. Neither the name of the copyright holder nor the names of contributors |
| * may be used to endorse or promote products derived from this software |
| * without specific prior written permission. |
| * |
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTOR(S) ``AS IS'' AND |
| * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTOR(S) BE LIABLE |
| * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
| * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
| * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
| * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
| * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
| * SUCH DAMAGE. |
| * |
| * $Id: sha2.h,v 1.1 2001/11/08 00:02:01 adg Exp adg $ |
| */ |
| File: LLM_sp_sha2.h |
| |
| =============================================================================== |
| |
| 2. |
| |
| /* utility to create the register check tables |
| * this includes inlined list.h safe for userspace. |
| * |
| * Copyright 2009 Jerome Glisse |
| * Copyright 2009 Red Hat Inc. |
| * |
| * Authors: |
| * Jerome Glisse |
| * Dave Airlie |
| */ |
| /*All rights reserved. |
| Redistribution and use in source and binary forms, with or without modification |
| are permitted provided that the following conditions are met: |
| 1. Redistributions of source code must retain the above copyright notice, |
| this list of conditions and the following disclaimer. |
| 2. Redistributions in binary form must reproduce the above copyright notice, |
| this list of conditions and the following disclaimer in the documentation |
| and/or other materials provided with the distribution. |
| 3. Neither the name of the <ORGANIZATION> nor the names of its contributors |
| may be used to endorse or promote products derived from this software |
| without specific prior written permission. |
| |
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE |
| FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
| SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
| CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
| OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| File: comm_lib.h |
| |
| =============================================================================== |
| |
| 3. |
| |
| /* crypto/aes/aes.h -*- mode:C; c-file-style: "eay" -*- */ |
| /* ==================================================================== |
| * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions |
| * are met: |
| * |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in |
| * the documentation and/or other materials provided with the |
| * distribution. |
| * |
| * 3. All advertising materials mentioning features or use of this |
| * software must display the following acknowledgment: |
| * "This product includes software developed by the OpenSSL Project |
| * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" |
| * |
| * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to |
| * endorse or promote products derived from this software without |
| * prior written permission. For written permission, please contact |
| * openssl-core@openssl.org. |
| * |
| * 5. Products derived from this software may not be called "OpenSSL" |
| * nor may "OpenSSL" appear in their names without prior written |
| * permission of the OpenSSL Project. |
| * |
| * 6. Redistributions of any form whatsoever must retain the following |
| * acknowledgment: |
| * "This product includes software developed by the OpenSSL Project |
| * for use in the OpenSSL Toolkit (http://www.openssl.org/)" |
| * |
| * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY |
| * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
| * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR |
| * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT |
| * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
| * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
| * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, |
| * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED |
| * OF THE POSSIBILITY OF SUCH DAMAGE. |
| * ==================================================================== |
| * |
| */ |
| File Name list: aes.h, aes_locl.h |
| |
| =============================================================================== |
| |
| 4. |
| |
| /* crypto/aes/aes_core.c -*- mode:C; c-file-style: "eay" -*- */ |
| /** |
| * rijndael-alg-fst.c |
| * |
| * @version 3.0 (December 2000) |
| * |
| * Optimised ANSI C code for the Rijndael cipher (now AES) |
| * |
| * @author Vincent Rijmen <vincent.rijmen@esat.kuleuven.ac.be> |
| * @author Antoon Bosselaers <antoon.bosselaers@esat.kuleuven.ac.be> |
| * @author Paulo Barreto <paulo.barreto@terra.com.br> |
| * |
| * This code is hereby placed in the public domain. |
| * |
| * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ''AS IS'' AND ANY EXPRESS |
| * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE |
| * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
| * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, |
| * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE |
| * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |
| * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| */ |
| File: aes_core.c |
| |
| =============================================================================== |
| |
| 5. |
| |
| /*=========================================================================== |
| |
| EDIT HISTORY FOR FILE |
| |
| $Header: //depot/asic/msmshared/sec/sec/MSM_SEC.03.03.08.xx/aes.h#1 $ |
| $DateTime: 2006/12/11 00:43:21 $ $Author: davidf $ |
| |
| when who what, where, why |
| -------- --- ---------------------------------------------------------- |
| 11/12/04 rv changes to correct LINT errors |
| 02/02/04 rwh Small mods to open source. |
| |
| ===========================================================================*/ |
| |
| /* |
| I retain copyright in this code but I encourage its free use provided |
| that I don't carry any responsibility for the results. I am especially |
| happy to see it used in free and open source software. If you do use |
| it I would appreciate an acknowledgement of its origin in the code or |
| the product that results and I would also appreciate knowing a liitle |
| about the use to which it is being put. |
| |
| Dr B. R. Gladman <brg@gladman.uk.net> 1st June 2001. |
| |
| This is an implementation of the AES encryption algorithm (Rijndael) |
| designed by Joan Daemen and Vincent Rijmen. This version is designed |
| to provide both fixed and dynamic block and key lengths and can also |
| run with either big or little endian internal byte order. |
| |
| NOTE: Input block and key lengths are given in terms of the lengths of |
| the byte arrays involved, the legal values being 16, 24 and 32. |
| |
| A. THE CIPHER INTERFACE |
| |
| byte (an unsigned 8-bit type) |
| word (an unsigned 32-bit type) |
| aes_ret: (a signed 16 bit type for function return values) |
| aes_good (value != 0, a good return) |
| aes_bad (value == 0, an error return) |
| enum aes_key: (encryption direction) |
| enc (set key for encryption) |
| dec (set key for decryption) |
| both (set key for both) |
| class or struct aes (structure for context) |
| |
| C subroutine calls: |
| |
| aes_ret set_blk(const word block_length, aes *cx) (variable block size) |
| aes_ret set_key(const byte key[], const word key_length, |
| const enum aes_key direction, aes *cx) |
| aes_ret encrypt(const byte input_blk[], byte output_blk[], const aes *cx) |
| aes_ret decrypt(const byte input_blk[], byte output_blk[], const aes *cx) |
| |
| IMPORTANT NOTE: If you are using this C interface and your compiler does |
| not set the memory used for objects to zero before use, you will need to |
| ensure that cx.mode is set to zero before using the C subroutine calls. |
| |
| C++ aes class subroutines: |
| |
| aes_ret set_blk(const word block_length) (variable block size) |
| aes_ret set_key(const byte key[], const word key_length, |
| const aes_key direction) |
| aes_ret encrypt(const byte input_blk[], byte output_blk[]) const |
| aes_ret decrypt(const byte input_blk[], byte output_blk[]) const |
| |
| The block length inputs to set_block and set_key are in numbers of |
| BYTES, not bits. The calls to subroutines must be made in the above |
| order but multiple calls can be made without repeating earlier calls |
| if their parameters have not changed. If the cipher block length is |
| variable but set_blk has not been called before cipher operations a |
| value of 16 is assumed (that is, the AES block size). In contrast to |
| earlier versions the block and key length parameters are now checked |
| for correctness and the encryption and decryption routines check to |
| ensure that an appropriate key has been set before they are called. |
| |
| B. BYTE ORDER WITHIN 32 BIT WORDS |
| |
| The fundamental data processing units in Rijndael are 8-bit bytes. The |
| input, the output and the key input are all enumerated arrays of bytes |
| in which bytes are numbered starting at zero and increasing to one less |
| than the number of bytes in the array in question. When these inputs |
| and outputs are considered as bit sequences, the n'th byte contains |
| bits 8n to 8n+7 of the sequence with the lower numbered bit mapped to |
| the most significant bit within the byte (i.e. that having a numeric |
| value of 128). However, Rijndael can be implemented more efficiently |
| using 32-bit words to process 4 bytes at a time provided that the order |
| of bytes within words is known. This order is called big-endian if the |
| lowest numbered bytes in words have the highest numeric significance |
| and little-endian if the opposite applies. This code can work in either |
| order irrespective of the native order of the machine on which it runs. |
| The byte order used internally is set by defining INTERNAL_BYTE_ORDER |
| whereas the order for all inputs and outputs is specified by defining |
| EXTERNAL_BYTE_ORDER, the only purpose of the latter being to determine |
| if a byte order change is needed immediately after input and immediately |
| before output to account for the use of a different internal byte order. |
| In almost all situations both of these defines will be set to the native |
| order of the processor on which the code is to run but other settings |
| may somtimes be useful in special circumstances. |
| |
| #define INTERNAL_BYTE_ORDER LITTLE_ENDIAN |
| #define EXTERNAL_BYTE_ORDER LITTLE_ENDIAN |
| |
| C. COMPILATION |
| |
| To compile AES (Rijndael) for use in C code |
| a. Exclude the AES_DLL define in aes.h |
| b. Exclude the AES_IN_CPP define in aes.h |
| |
| To compile AES (Rijndael) for use in in C++ code |
| a. Exclude the AES_DLL define in aes.h |
| b. Include the AES_IN_CPP define in aes.h |
| |
| To compile AES (Rijndael) in C as a Dynamic Link Library |
| a. Include the AES_DLL define in aes.h |
| b. Compile the DLL. If using the test files, exclude aes.c from |
| the test build project and compile it with the same defines |
| as used for the DLL (ensure that the DLL path is correct) |
| |
| D. CONFIGURATION OPTIONS (see also aes.c) |
| |
| 1. define BLOCK_SIZE to set the cipher block size (16, 24 or 32) or |
| leave this undefined for dynamically variable block size (this will |
| result in much slower code). |
| 2. set AES_IN_CPP to use the code from C++ rather than C |
| 3. set AES_DLL if AES (Rijndael) is to be compiled to a DLL |
| 4. set INTERNAL_BYTE_ORDER to one of the above constants to set the |
| internal byte order (the order used within the algorithm code) |
| 5. set EXTERNAL_BYTE_ORDER to one of the above constants to set the byte |
| order used at the external interfaces for the input, output and key |
| byte arrays. |
| |
| IMPORTANT NOTE: BLOCK_SIZE is in BYTES: 16, 24, 32 or undefined for aes.c |
| and 16, 20, 24, 28, 32 or undefined for aes++.c. If left undefined a |
| slower version providing variable block length is compiled |
| |
| #define BLOCK_SIZE 16 |
| |
| Define AES_IN_CPP if you intend to use the AES C++ class rather than the |
| C code directly. |
| |
| #define AES_IN_CPP |
| |
| Define AES_DLL if you wish to compile the code to produce a Windows DLL |
| |
| #define AES_DLL |
| |
| */ |
| File: aes.h |
| |
| /*=========================================================================== |
| |
| EDIT HISTORY FOR FILE |
| |
| $Header: //depot/asic/msmshared/sec/sec/MSM_SEC.03.03.08.xx/aes_tab.h#1 $ |
| $DateTime: 2006/12/11 00:43:21 $ $Author: davidf $ |
| |
| when who what, where, why |
| -------- --- ---------------------------------------------------------- |
| 11/12/04 rv changes to correct LINT errors |
| 02/02/04 rwh Small mods to open source. |
| |
| ===========================================================================*/ |
| /*lint -e146 -e303 */ |
| /* 146: Assuming a binary constant */ |
| /* 303: String too long (try +macros) */ |
| |
| |
| /* |
| I retain copyright in this code but I encourage its free use provided |
| that I don't carry any responsibility for the results. I am especially |
| happy to see it used in free and open source software. If you do use |
| it I would appreciate an acknowledgement of its origin in the code or |
| the product that results and I would also appreciate knowing a liitle |
| about the use to which it is being put. |
| |
| Dr B. R. Gladman <brg@gladman.uk.net> 1st June 2001. |
| */ |
| File: aes_tab.h |
| |
| =============================================================================== |
| 6. |
| =============================================================================== |
| #FILE:Conftest.py |
| # Copyright (c) 2003 Stichting NLnet Labs |
| # Copyright (c) 2001, 2002, 2003 Steven Knight |
| # |
| # Permission is hereby granted, free of charge, to any person obtaining |
| # a copy of this software and associated documentation files (the |
| # "Software"), to deal in the Software without restriction, including |
| # without limitation the rights to use, copy, modify, merge, publish, |
| # distribute, sublicense, and/or sell copies of the Software, and to |
| # permit persons to whom the Software is furnished to do so, subject to |
| # the following conditions: |
| # |
| # The above copyright notice and this permission notice shall be included |
| # in all copies or substantial portions of the Software. |
| # |
| # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY |
| # KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE |
| # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND |
| # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE |
| # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION |
| # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION |
| # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
| # |
| |
| # |
| # The purpose of this module is to define how a check is to be performed. |
| # Use one of the Check...() functions below. |
| # |
| |
| # |
| # A context class is used that defines functions for carrying out the tests, |
| # logging and messages. The following methods and members must be present: |
| # |
| # context.Display(msg) Function called to print messages that are normally |
| # displayed for the user. Newlines are explicitly used. |
| # The text should also be written to the logfile! |
| # |
| # context.Log(msg) Function called to write to a log file. |
| # |
| # context.BuildProg(text, ext) |
| # Function called to build a program, using "ext" for the |
| # file extention. Must return an empty string for |
| # success, an error message for failure. |
| # For reliable test results building should be done just |
| # like an actual program would be build, using the same |
| # command and arguments (including configure results so |
| # far). |
| # |
| # context.CompileProg(text, ext) |
| # Function called to compile a program, using "ext" for |
| # the file extention. Must return an empty string for |
| # success, an error message for failure. |
| # For reliable test results compiling should be done just |
| # like an actual source file would be compiled, using the |
| # same command and arguments (including configure results |
| # so far). |
| # |
| # context.AppendLIBS(lib_name_list) |
| # Append "lib_name_list" to the value of LIBS. |
| # "lib_namelist" is a list of strings. |
| # Return the value of LIBS before changing it (any type |
| # can be used, it is passed to SetLIBS() later.) |
| # |
| # context.PrependLIBS(lib_name_list) |
| # Prepend "lib_name_list" to the value of LIBS. |
| # "lib_namelist" is a list of strings. |
| # Return the value of LIBS before changing it (any type |
| # can be used, it is passed to SetLIBS() later.) |
| # |
| # context.SetLIBS(value) |
| # Set LIBS to "value". The type of "value" is what |
| # AppendLIBS() returned. |
| # Return the value of LIBS before changing it (any type |
| # can be used, it is passed to SetLIBS() later.) |
| # |
| # context.headerfilename |
| # Name of file to append configure results to, usually |
| # "confdefs.h". |
| # The file must not exist or be empty when starting. |
| # Empty or None to skip this (some tests will not work!). |
| # |
| # context.config_h (may be missing). If present, must be a string, which |
| # will be filled with the contents of a config_h file. |
| # |
| # context.vardict Dictionary holding variables used for the tests and |
| # stores results from the tests, used for the build |
| # commands. |
| # Normally contains "CC", "LIBS", "CPPFLAGS", etc. |
| # |
| # context.havedict Dictionary holding results from the tests that are to |
| # be used inside a program. |
| # Names often start with "HAVE_". These are zero |
| # (feature not present) or one (feature present). Other |
| # variables may have any value, e.g., "PERLVERSION" can |
| # |
| =============================================================================== |