Changes done for unlinking OpenSSL 0.9.8 and OpenSSL 1.0.2 from build (#57)
This PR updates the build to succeed without relying on existing OpenSSL versions. Changes include: 1. Removed OpenSSL 0.9.8 and 1.0.2 components from VSB configuration 2. Removed ipcrypto and ipssl from ipnet root Makefile (ipComps and VARLIST) 3. Updated ipcom/src/ipcom_auth.c for compatibility with OpenSSL 3.5.0 4. Added OpenSSL 3.5.0 include paths where required 5. Removed script from vxworks.krnl.mak which was renaming old OpenSSL library files 6. Removed script from ossl350_prepare/Makefile which was copying OpenSSL 3.5.0 headers to target/h 7. Adapted OpenSSL 3.5.0 headers to ipcom types during build 8. Modified ipnet CDF to switch dependency from INCLUDE_IPSSL to INCLUDE_IPCRYPTO 9. Components: WebCli and NTP are by default disabled Note : There may still be build issues, as target/h/openssl and old OpenSSL source files remain in master. Co-authored-by: subhamgdeb <subhamgdeb> Reviewed-on: http://13.234.246.121:3000/Neominds/ossl35vx69/pulls/57 Reviewed-by: Siddhant Singh <siddhant.singh@neominds.in> Co-authored-by: Subham <subham.gangdeb@neominds.in> Co-committed-by: Subham <subham.gangdeb@neominds.in>
This commit is contained in:
@@ -222,22 +222,31 @@ IP_STATIC Ip_err ipcom_auth_userid_get(Ip_uid_t *userid)
|
||||
IP_STATIC Ip_err ipcom_auth_decode(const Ip_u8* in, int inl,
|
||||
Ip_u8* out, int* outl)
|
||||
{
|
||||
EVP_ENCODE_CTX ctx;
|
||||
EVP_ENCODE_CTX *ctx = IP_NULL;
|
||||
int i, outl_tmp = 0;
|
||||
|
||||
EVP_DecodeInit(&ctx);
|
||||
ctx = EVP_ENCODE_CTX_new();
|
||||
if (ctx == IP_NULL)
|
||||
return IPCOM_ERR_FAILED;
|
||||
|
||||
i = EVP_DecodeUpdate(&ctx, out, outl, in, inl);
|
||||
EVP_DecodeInit(ctx);
|
||||
|
||||
i = EVP_DecodeUpdate(ctx, out, outl, in, inl);
|
||||
outl_tmp = *outl + outl_tmp;
|
||||
if (i < 0)
|
||||
if (i < 0) {
|
||||
EVP_ENCODE_CTX_free(ctx);
|
||||
return IPCOM_ERR_FAILED;
|
||||
}
|
||||
|
||||
i = EVP_DecodeFinal(&ctx, out + outl_tmp, outl);
|
||||
if (i < 0)
|
||||
i = EVP_DecodeFinal(ctx, out + outl_tmp, outl);
|
||||
if (i < 0) {
|
||||
EVP_ENCODE_CTX_free(ctx);
|
||||
return IPCOM_ERR_FAILED;
|
||||
}
|
||||
outl_tmp = *outl + outl_tmp;
|
||||
*outl = outl_tmp;
|
||||
|
||||
EVP_ENCODE_CTX_free(ctx);
|
||||
return IPCOM_SUCCESS;
|
||||
}
|
||||
#endif /* IPCOM_AUTH_USE_HASH */
|
||||
@@ -660,7 +669,7 @@ IP_PUBLIC Ip_err ipcom_auth_hash_rtn_install(Ipcom_auth_hash_hook hash_rtn,
|
||||
IP_PUBLIC Ip_err ipcom_auth_default_hash_rtn(const char *password, const char *salt, Ip_size_t salt_len, char *buf)
|
||||
{
|
||||
char buf1[IPCOM_AUTH_PASSWORD_MAX];
|
||||
EVP_ENCODE_CTX ctx;
|
||||
EVP_ENCODE_CTX* ctx = IP_NULL;
|
||||
int outl;
|
||||
int i;
|
||||
unsigned char* unsigned_buf = (unsigned char*)buf;
|
||||
@@ -675,9 +684,15 @@ IP_PUBLIC Ip_err ipcom_auth_default_hash_rtn(const char *password, const char *s
|
||||
SHA256((unsigned char*)buf1, salt_len+ipcom_strlen(password), unsigned_buf);
|
||||
|
||||
/* Base64 encode hash */
|
||||
EVP_EncodeInit(&ctx);
|
||||
EVP_EncodeUpdate(&ctx, unsigned_buf, &outl, unsigned_buf, 32);
|
||||
EVP_EncodeFinal(&ctx, unsigned_buf+outl, &outl);
|
||||
ctx = EVP_ENCODE_CTX_new();
|
||||
if (ctx == IP_NULL)
|
||||
return IPCOM_ERR_FAILED;
|
||||
|
||||
EVP_EncodeInit(ctx);
|
||||
EVP_EncodeUpdate(ctx, unsigned_buf, &outl, unsigned_buf, 32);
|
||||
EVP_EncodeFinal(ctx, unsigned_buf + outl, &outl);
|
||||
|
||||
EVP_ENCODE_CTX_free(ctx);
|
||||
|
||||
/* Remove terminating line feed */
|
||||
for (i=(int)(ipcom_strlen((char*)unsigned_buf)-1); i>0 && unsigned_buf[i]=='\n';i--)
|
||||
@@ -687,6 +702,7 @@ IP_PUBLIC Ip_err ipcom_auth_default_hash_rtn(const char *password, const char *s
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
*===========================================================================
|
||||
* ipcom_auth_hash_get
|
||||
|
||||
Reference in New Issue
Block a user