Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -987,7 +987,7 @@ then

if [ "$noRf" = "0" ]
then
if [ "$NETWORKRESPONSESTATUS" = "204" ] && [ "$REDIRECTION_ON" = "true" ] && [ "$WIFI_NOT_CONFIGURED" = "true" ]
if [[ "$NETWORKRESPONSESTATUS" = "204" && "$REDIRECTION_ON" = "true" && ("$WIFI_NOT_CONFIGURED" = "true" || "$WIFI_NOT_CONFIGURED" = "TRUE") ]];
then
CAPTIVE_PORTAL_MODE="true"
echo "DHCP SERVER : WiFi SSID and Passphrase are not modified,set CAPTIVE_PORTAL_MODE"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -733,7 +733,7 @@ static int getFactoryPartnerId (char *pValue)
return -1;
}

static int validatePartnerId (char *PartnerID)
static int validatePartnerId (char *PartnerID, size_t partnerIdBufLen)
{
int result = 0;
char* ptr_etc_jsons = NULL;
Expand All @@ -753,7 +753,7 @@ static int validatePartnerId (char *PartnerID)
else
{
printf("Partner ID NOT Found\n");
sprintf(PartnerID,"%s","unknown");
snprintf(PartnerID,partnerIdBufLen,"%s","unknown");
}
cJSON_Delete(root_etc_json);
}
Expand All @@ -771,7 +771,7 @@ static int PartnerId_FetchWithRetry(char *PartnerID ) {
memset(PartnerID, 0, PARTNER_ID_LEN);

if((0 == getFactoryPartnerId(PartnerID)) && (PartnerID[0] != '\0') &&
validatePartnerId(PartnerID) && (0 != strcasecmp (PartnerID, "Unknown"))) {
validatePartnerId(PartnerID, PARTNER_ID_LEN) && (0 != strcasecmp (PartnerID, "Unknown"))) {
return 0;
}
else {
Expand All @@ -782,7 +782,7 @@ static int PartnerId_FetchWithRetry(char *PartnerID ) {
strncpy(PartnerID, buf, strlen(buf));
PartnerID[strlen(buf)] = '\0';

if(validatePartnerId(PartnerID) && (0 != strcasecmp(PartnerID, "Unknown") )) {
if(validatePartnerId(PartnerID, PARTNER_ID_LEN) && (0 != strcasecmp(PartnerID, "Unknown") )) {
return 0;
}
}
Expand Down Expand Up @@ -828,7 +828,7 @@ int WritePartnerIDToFile(char* PartnerID) {
}

void CheckAndHandleInvalidPartnerIDRecoveryProcess(char *PartnerID) {
if( '\0' == PartnerID[0] || (0 == validatePartnerId(PartnerID)) || (0 == strcasecmp (PartnerID, "Unknown")) ) {
if( '\0' == PartnerID[0] || (0 == validatePartnerId(PartnerID, PARTNER_ID_LEN)) || (0 == strcasecmp (PartnerID, "Unknown")) ) {
memset(PartnerID, 0, PARTNER_ID_LEN);

APPLY_PRINT("%s - Current PartnerID value is Unknown/Invalid, So retrying to obtain valid PartnerID values. \n", __FUNCTION__);
Expand Down Expand Up @@ -889,7 +889,7 @@ static int get_PartnerID (char *PartnerID)
if( ( 0 == getFactoryPartnerId( PartnerID ) ) && ( PartnerID [ 0 ] != '\0' ) )
{
APPLY_PRINT("%s - PartnerID from HAL: %s\n",__FUNCTION__,PartnerID );
validatePartnerId ( PartnerID );
validatePartnerId ( PartnerID, PARTNER_ID_LEN );
}
else
{
Expand All @@ -908,7 +908,7 @@ static int get_PartnerID (char *PartnerID)

#if defined (_XB6_PRODUCT_REQ_)
sprintf( PartnerID, "%s", "unknown" );
#elif defined (_RDK_REF_PLATFORM_)
#elif defined (_RDK_REF_PLATFORM_) || defined (_COSA_QCA_ARM_)
sprintf( PartnerID, "%s", "RDKM");
#elif defined (_SR300_PRODUCT_REQ_) /* Default fall back option for ADA devices SKYH4-4946 */
sprintf( PartnerID, "%s", "sky-uk");
Expand Down Expand Up @@ -941,7 +941,7 @@ static int get_PartnerID (char *PartnerID)
sprintf( PartnerID, "%s", fileContent );

APPLY_PRINT("%s - PartnerID from File: %s\n",__FUNCTION__,PartnerID );
validatePartnerId ( PartnerID );
validatePartnerId ( PartnerID, PARTNER_ID_LEN );
unlink("/nvram/.partner_ID");
}
set_syscfg_partner_values(PartnerID,"PartnerID");
Expand Down Expand Up @@ -2349,6 +2349,7 @@ static int apply_partnerId_default_values (char *data, char *PartnerID)
cJSON *alwaysParamObjVal = NULL;
char *error_ptr = NULL;
int iterator = 0;
char buf[50] = {0};

/*
* Case 1:
Expand Down Expand Up @@ -2479,8 +2480,9 @@ static int apply_partnerId_default_values (char *data, char *PartnerID)
if ( paramObjVal != NULL )
{
defaultAdminIP = paramObjVal->valuestring;
syscfg_get( NULL, "lan_ipaddr", buf, sizeof( buf ));

if (defaultAdminIP != NULL)
if ((defaultAdminIP != NULL) && (strcmp(buf, defaultAdminIP) == 0))
{
set_syscfg_partner_values(defaultAdminIP,"lan_ipaddr");
defaultAdminIP = NULL;
Expand All @@ -2494,9 +2496,10 @@ static int apply_partnerId_default_values (char *data, char *PartnerID)
paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem( partnerObj, "Device.DeviceInfo.X_RDKCENTRAL-COM_Syndication.RDKB_UIBranding.DefaultLocalIPv4SubnetRange"), "ActiveValue");
if ( paramObjVal != NULL )
{
subnetRange = paramObjVal->valuestring;
subnetRange = paramObjVal->valuestring;
syscfg_get( NULL, "lan_netmask", buf, sizeof( buf ));

if (subnetRange != NULL)
if ((subnetRange != NULL) && (strcmp(buf, subnetRange) == 0))
{
set_syscfg_partner_values(subnetRange,"lan_netmask");
subnetRange = NULL;
Expand All @@ -2510,8 +2513,9 @@ static int apply_partnerId_default_values (char *data, char *PartnerID)
if ( paramObjVal != NULL )
{
minAddress = paramObjVal->valuestring;
syscfg_get( NULL, "dhcp_start", buf, sizeof( buf ));

if (minAddress != NULL)
if ((minAddress != NULL) && (strcmp(buf, minAddress) ==0))
{
set_syscfg_partner_values(minAddress,"dhcp_start");
minAddress = NULL;
Expand All @@ -2525,8 +2529,9 @@ static int apply_partnerId_default_values (char *data, char *PartnerID)
if ( paramObjVal != NULL )
{
maxAddress = paramObjVal->valuestring;
syscfg_get( NULL, "dhcp_end", buf, sizeof( buf ));

if (maxAddress != NULL)
if ((maxAddress != NULL) && (strcmp(buf, maxAddress) == 0))
{
set_syscfg_partner_values(maxAddress,"dhcp_end");
maxAddress = NULL;
Expand Down Expand Up @@ -3413,7 +3418,7 @@ static void getPartnerIdWithRetry(char* buf, char* PartnerID)
#if !defined (_XB6_PRODUCT_REQ_) && !defined(_HUB4_PRODUCT_REQ_) && !defined(_SR300_PRODUCT_REQ_) && !defined(_SCXF11BFL_PRODUCT_REQ_)
//Partner ID is null so need to set default partner ID as "comcast"
memset( PartnerID, 0, sizeof( PartnerID ) );
#if defined (_RDK_REF_PLATFORM_)
#if defined (_RDK_REF_PLATFORM_) || defined (_PLATFORM_IPQ_)
sprintf( PartnerID, "%s", "RDKM");
#else
sprintf( PartnerID, "%s", "comcast" );
Expand Down
14 changes: 7 additions & 7 deletions source/scripts/init/src/apply_system_defaults_helper.c
Original file line number Diff line number Diff line change
Expand Up @@ -763,7 +763,7 @@ int getFactoryPartnerId (char *pValue)
return -1;
}

static int validatePartnerId (char *PartnerID)
static int validatePartnerId (char *PartnerID, size_t partnerIdBufLen)
{
int result = 0;
char* ptr_etc_jsons = NULL;
Expand All @@ -783,7 +783,7 @@ static int validatePartnerId (char *PartnerID)
else
{
printf("Partner ID NOT Found\n");
sprintf(PartnerID,"%s","unknown");
snprintf(PartnerID,partnerIdBufLen,"%s","unknown");
}
cJSON_Delete(root_etc_json);
}
Expand All @@ -809,7 +809,7 @@ int get_PartnerID (char *PartnerID)
if( ( 0 == getFactoryPartnerId( PartnerID ) ) && ( PartnerID [ 0 ] != '\0' ) )
{
APPLY_PRINT("%s - PartnerID from HAL: %s\n",__FUNCTION__,PartnerID );
validatePartnerId ( PartnerID );
validatePartnerId ( PartnerID, PARTNER_ID_LEN );
}
else
{
Expand Down Expand Up @@ -866,7 +866,7 @@ int get_PartnerID (char *PartnerID)
*pos = '\0';
sprintf( PartnerID, "%s", fileContent );
APPLY_PRINT("%s - PartnerID from File: %s\n",__FUNCTION__,PartnerID );
validatePartnerId ( PartnerID );
validatePartnerId ( PartnerID, PARTNER_ID_LEN );
}
unlink("/nvram/.partner_ID");
}
Expand Down Expand Up @@ -1025,7 +1025,7 @@ int PartnerId_FetchWithRetry(char *PartnerID ) {
memset(PartnerID, 0, PARTNER_ID_LEN);

if((0 == getFactoryPartnerId(PartnerID)) && (PartnerID[0] != '\0') &&
validatePartnerId(PartnerID) && (0 != strcasecmp (PartnerID, "Unknown"))) {
validatePartnerId(PartnerID, PARTNER_ID_LEN) && (0 != strcasecmp (PartnerID, "Unknown"))) {
return 0;
}
else {
Expand All @@ -1036,7 +1036,7 @@ int PartnerId_FetchWithRetry(char *PartnerID ) {
strncpy(PartnerID, buf, strlen(buf));
PartnerID[strlen(buf)] = '\0';

if(validatePartnerId(PartnerID) && (0 != strcasecmp(PartnerID, "Unknown") )) {
if(validatePartnerId(PartnerID, PARTNER_ID_LEN) && (0 != strcasecmp(PartnerID, "Unknown") )) {
return 0;
}
}
Expand Down Expand Up @@ -1082,7 +1082,7 @@ int WritePartnerIDToFile(char* PartnerID) {
}

void CheckAndHandleInvalidPartnerIDRecoveryProcess(char *PartnerID) {
if( '\0' == PartnerID[0] || (0 == validatePartnerId(PartnerID)) || (0 == strcasecmp (PartnerID, "Unknown")) ) {
if( '\0' == PartnerID[0] || (0 == validatePartnerId(PartnerID, PARTNER_ID_LEN)) || (0 == strcasecmp (PartnerID, "Unknown")) ) {
memset(PartnerID, 0, PARTNER_ID_LEN);

APPLY_PRINT("%s - Current PartnerID value is Unknown/Invalid, So retrying to obtain valid PartnerID values. \n", __FUNCTION__);
Expand Down
3 changes: 2 additions & 1 deletion source/util/utils/util.c
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,9 @@ int vsystem(const char *fmt, ...)

if (n < 0 || n >= sizeof(cmd))
return -1;

#ifndef _COSA_QCA_ARM_
fprintf(stderr, "%s: %s\n", __FUNCTION__, cmd);
#endif
return system(cmd);
}

Expand Down
Loading