e5272996f7
Most tools used for compliance and SBOM generation use SPDX identifiers This change brings us a step closer to an easy SBOM generation. define NuttX local NuttX-PublicDomain identifier “Public Domain” is a concept distinct from copyright licensing; it generally means that the work no longer has any copyright protection or ownership, and therefore requires no license permission in order to use, copy, modify, distribute, perform, display, etc. In the United States – and many jurisdictions – copyright protections attach automatically to creative works upon creation if they satisfy certain minimum criteria. “Public Domain” would thus represent a significant change to the legal status of the work. The rules around “Public Domain” often vary or are unspecified jurisdiction to jurisdiction. Adding to the confusion, some jurisdictions may not even recognize the concept of “Public Domain” (or similar). As such, a license may nevertheless be required or implied in these cases. Even in the U.S., there is no clear, officially-sanctioned procedure for affirmatively placing copyright-eligible works into the “Public Domain” aside from natural statutory expiration of copyright. The bottom-line is, there are few if any objective, brightline rules for proactively placing copyright-eligible works into the Public Domain that we can broadly rely on. Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
38 lines
1.1 KiB
C
38 lines
1.1 KiB
C
/****************************************************************************
|
|
* include/crypto/sha1.h
|
|
*
|
|
* SPDX-License-Identifier: NuttX-PublicDomain
|
|
*
|
|
* By Steve Reid <steve@edmweb.com>
|
|
* 100% Public Domain
|
|
****************************************************************************/
|
|
|
|
#ifndef __INCLUDE_CRYPTO_SHA1_H
|
|
#define __INCLUDE_CRYPTO_SHA1_H
|
|
|
|
/****************************************************************************
|
|
* Included Files
|
|
****************************************************************************/
|
|
|
|
#include <sys/types.h>
|
|
|
|
#define SHA1_BLOCK_LENGTH 64
|
|
#define SHA1_DIGEST_LENGTH 20
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t state[5];
|
|
uint64_t count;
|
|
unsigned char buffer[SHA1_BLOCK_LENGTH];
|
|
} SHA1_CTX;
|
|
|
|
void sha1init(FAR SHA1_CTX * context);
|
|
void sha1transform(FAR uint32_t *state,
|
|
FAR const unsigned char *buffer);
|
|
void sha1update(FAR SHA1_CTX *context,
|
|
FAR const void *data,
|
|
unsigned int len);
|
|
void sha1final(FAR unsigned char *digest,
|
|
FAR SHA1_CTX *context);
|
|
|
|
#endif /* __INCLUDE_CRYPTO_SHA1_H */
|