Refactoring: optimize pointer checks

Remove all direct comparisons to 'NULL' for pointers.
Replace them with boolean-like 'if (ptr)' and 'if (!ptr)'.
This makes conditions shorter and easier to read.

Signed-off-by: Alexander Amelkin <alexander@amelkin.msk.ru>
This commit is contained in:
Alexander Amelkin
2018-08-21 17:16:19 +03:00
parent f3ef88724f
commit e9716e216d
48 changed files with 1050 additions and 1090 deletions

View File

@@ -49,6 +49,7 @@
#endif
#define FRU_MULTIREC_CHUNK_SIZE (255 + sizeof(struct fru_multirec_header))
#define FRU_FIELD_VALID(a) (a && a[0])
static const char *section_id[4] = {
"Internal Use Section",
@@ -145,7 +146,7 @@ char * get_fru_area_str(uint8_t * data, uint32_t * offset)
return NULL;
}
str = malloc(size+1);
if (str == NULL)
if (!str)
return NULL;
memset(str, 0, size+1);
@@ -211,7 +212,7 @@ char * get_fru_area_str(uint8_t * data, uint32_t * offset)
int
is_valid_filename(const char *input_filename)
{
if (input_filename == NULL) {
if (!input_filename) {
lprintf(LOG_ERR, "ERROR: NULL pointer passed.");
return (-1);
}
@@ -271,7 +272,7 @@ build_fru_bloc(struct ipmi_intf * intf, struct fru_info *fru, uint8_t id)
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL) {
if (!rsp) {
lprintf(LOG_ERR, " Device not present (No Response)");
return NULL;
}
@@ -679,7 +680,7 @@ read_fru_area(struct ipmi_intf * intf, struct fru_info *fru, uint8_t id,
msg_data[3] = (uint8_t)tmp;
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL) {
if (!rsp) {
lprintf(LOG_NOTICE, "FRU Read failed");
break;
}
@@ -785,7 +786,7 @@ read_fru_area_section(struct ipmi_intf * intf, struct fru_info *fru, uint8_t id,
msg_data[3] = (uint8_t)tmp;
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL) {
if (!rsp) {
lprintf(LOG_NOTICE, "FRU Read failed");
break;
}
@@ -834,7 +835,7 @@ fru_area_print_multirec_bloc(struct ipmi_intf * intf, struct fru_info * fru,
i = last_off = offset;
fru_data = malloc(fru->size + 1);
if (fru_data == NULL) {
if (!fru_data) {
lprintf(LOG_ERR, " Out of memory!");
return;
}
@@ -912,7 +913,7 @@ fru_area_print_chassis(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_data = malloc(fru_len);
if (fru_data == NULL) {
if (!fru_data) {
lprintf(LOG_ERR, "ipmitool: malloc failure");
return;
}
@@ -940,7 +941,7 @@ fru_area_print_chassis(struct ipmi_intf * intf, struct fru_info * fru,
i++;
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Chassis Part Number : %s\n", fru_area);
}
@@ -949,7 +950,7 @@ fru_area_print_chassis(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Chassis Serial : %s\n", fru_area);
}
@@ -962,7 +963,7 @@ fru_area_print_chassis(struct ipmi_intf * intf, struct fru_info * fru,
{
int j = i;
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Chassis Extra : %s\n", fru_area);
}
@@ -975,7 +976,7 @@ fru_area_print_chassis(struct ipmi_intf * intf, struct fru_info * fru,
}
}
if (fru_data != NULL) {
if (fru_data) {
free(fru_data);
fru_data = NULL;
}
@@ -1012,7 +1013,7 @@ fru_area_print_board(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_data = malloc(fru_len);
if (fru_data == NULL) {
if (!fru_data) {
lprintf(LOG_ERR, "ipmitool: malloc failure");
return;
}
@@ -1044,7 +1045,7 @@ fru_area_print_board(struct ipmi_intf * intf, struct fru_info * fru,
i += 3; /* skip mfg. date time */
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Board Mfg : %s\n", fru_area);
}
@@ -1053,7 +1054,7 @@ fru_area_print_board(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Board Product : %s\n", fru_area);
}
@@ -1062,7 +1063,7 @@ fru_area_print_board(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Board Serial : %s\n", fru_area);
}
@@ -1071,7 +1072,7 @@ fru_area_print_board(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Board Part Number : %s\n", fru_area);
}
@@ -1080,7 +1081,7 @@ fru_area_print_board(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0 && verbose > 0) {
printf(" Board FRU ID : %s\n", fru_area);
}
@@ -1093,7 +1094,7 @@ fru_area_print_board(struct ipmi_intf * intf, struct fru_info * fru,
{
int j = i;
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Board Extra : %s\n", fru_area);
}
@@ -1104,7 +1105,7 @@ fru_area_print_board(struct ipmi_intf * intf, struct fru_info * fru,
break;
}
if (fru_data != NULL) {
if (fru_data) {
free(fru_data);
fru_data = NULL;
}
@@ -1138,7 +1139,7 @@ fru_area_print_product(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_data = malloc(fru_len);
if (fru_data == NULL) {
if (!fru_data) {
lprintf(LOG_ERR, "ipmitool: malloc failure");
return;
}
@@ -1161,7 +1162,7 @@ fru_area_print_product(struct ipmi_intf * intf, struct fru_info * fru,
i = 3;
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Product Manufacturer : %s\n", fru_area);
}
@@ -1170,7 +1171,7 @@ fru_area_print_product(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Product Name : %s\n", fru_area);
}
@@ -1179,7 +1180,7 @@ fru_area_print_product(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Product Part Number : %s\n", fru_area);
}
@@ -1188,7 +1189,7 @@ fru_area_print_product(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Product Version : %s\n", fru_area);
}
@@ -1197,7 +1198,7 @@ fru_area_print_product(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Product Serial : %s\n", fru_area);
}
@@ -1206,7 +1207,7 @@ fru_area_print_product(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Product Asset Tag : %s\n", fru_area);
}
@@ -1215,7 +1216,7 @@ fru_area_print_product(struct ipmi_intf * intf, struct fru_info * fru,
}
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0 && verbose > 0) {
printf(" Product FRU ID : %s\n", fru_area);
}
@@ -1228,7 +1229,7 @@ fru_area_print_product(struct ipmi_intf * intf, struct fru_info * fru,
{
int j = i;
fru_area = get_fru_area_str(fru_data, &i);
if (fru_area != NULL) {
if (fru_area) {
if (strlen(fru_area) > 0) {
printf(" Product Extra : %s\n", fru_area);
}
@@ -1239,7 +1240,7 @@ fru_area_print_product(struct ipmi_intf * intf, struct fru_info * fru,
break;
}
if (fru_data != NULL) {
if (fru_data) {
free(fru_data);
fru_data = NULL;
}
@@ -1268,7 +1269,7 @@ fru_area_print_multirec(struct ipmi_intf * intf, struct fru_info * fru,
last_off = offset;
fru_data = malloc(FRU_MULTIREC_CHUNK_SIZE);
if (fru_data == NULL) {
if (!fru_data) {
lprintf(LOG_ERR, "ipmitool: malloc failure");
return;
}
@@ -2891,7 +2892,7 @@ __ipmi_fru_print(struct ipmi_intf * intf, uint8_t id)
req.msg.data_len = 1;
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL) {
if (!rsp) {
printf(" Device not present (No Response)\n");
return -1;
}
@@ -2928,7 +2929,7 @@ __ipmi_fru_print(struct ipmi_intf * intf, uint8_t id)
req.msg.data_len = 4;
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL) {
if (!rsp) {
printf(" Device not present (No Response)\n");
return 1;
}
@@ -3009,7 +3010,7 @@ ipmi_fru_print(struct ipmi_intf * intf, struct sdr_record_fru_locator * fru)
uint32_t save_channel;
int rc = 0;
if (fru == NULL)
if (!fru)
return __ipmi_fru_print(intf, 0);
/* Logical FRU Device
@@ -3107,7 +3108,7 @@ ipmi_fru_print_all(struct ipmi_intf * intf)
req.msg.data_len = 0;
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL) {
if (!rsp) {
lprintf(LOG_ERR, "Get Device ID command failed");
return -1;
}
@@ -3127,14 +3128,15 @@ ipmi_fru_print_all(struct ipmi_intf * intf)
printf("\n");
}
if ((itr = ipmi_sdr_start(intf, 0)) == NULL)
itr = ipmi_sdr_start(intf, 0);
if (!itr)
return -1;
/* Walk the SDRs looking for FRU Devices and Management Controller Devices. */
/* For FRU devices, print the FRU from the SDR locator record. */
/* For MC devices, issue FRU commands to the satellite controller to print */
/* FRU data. */
while ((header = ipmi_sdr_get_next_header(intf, itr)) != NULL)
while ((header = ipmi_sdr_get_next_header(intf, itr)))
{
if (header->type == SDR_RECORD_TYPE_MC_DEVICE_LOCATOR ) {
/* Check the capabilities of the Management Controller Device */
@@ -3178,7 +3180,7 @@ ipmi_fru_print_all(struct ipmi_intf * intf)
/* Print the FRU from the SDR locator record. */
fru = (struct sdr_record_fru_locator *)
ipmi_sdr_get_record(intf, header, itr);
if (fru == NULL || !fru->logical) {
if (!fru || !fru->logical) {
if (fru) {
free(fru);
fru = NULL;
@@ -3246,7 +3248,7 @@ ipmi_fru_read_to_bin(struct ipmi_intf * intf,
}
pFruBuf = malloc(fru.size);
if (pFruBuf != NULL) {
if (pFruBuf) {
printf("Fru Size : %d bytes\n",fru.size);
read_fru_area(intf, &fru, fruId, 0, fru.size, pFruBuf);
} else {
@@ -3254,7 +3256,7 @@ ipmi_fru_read_to_bin(struct ipmi_intf * intf,
return;
}
if(pFruBuf != NULL)
if(pFruBuf)
{
FILE * pFile;
pFile = fopen(pFileName,"wb");
@@ -3314,13 +3316,13 @@ ipmi_fru_write_from_bin(struct ipmi_intf * intf,
}
pFruBuf = malloc(fru.size);
if (pFruBuf == NULL) {
if (!pFruBuf) {
lprintf(LOG_ERR, "Cannot allocate %d bytes\n", fru.size);
return;
}
pFile = fopen(pFileName, "rb");
if (pFile != NULL) {
if (pFile) {
len = fread(pFruBuf, 1, fru.size, pFile);
printf("Fru Size : %d bytes\n", fru.size);
printf("Size to Write : %d bytes\n", len);
@@ -3417,7 +3419,7 @@ ipmi_fru_edit_multirec(struct ipmi_intf * intf, uint8_t id ,
req.msg.data_len = 1;
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL) {
if (!rsp) {
printf(" Device not present (No Response)\n");
return -1;
}
@@ -3452,7 +3454,7 @@ ipmi_fru_edit_multirec(struct ipmi_intf * intf, uint8_t id ,
memset(&fru, 0, sizeof(fru));
fru_data = malloc(fru.size + 1);
if (fru_data == NULL) {
if (!fru_data) {
lprintf(LOG_ERR, " Out of memory!");
return -1;
}
@@ -3622,7 +3624,7 @@ ipmi_fru_get_multirec(struct ipmi_intf * intf, uint8_t id ,
req.msg.data_len = 1;
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL) {
if (!rsp) {
printf(" Device not present (No Response)\n");
return -1;
}
@@ -3656,7 +3658,7 @@ ipmi_fru_get_multirec(struct ipmi_intf * intf, uint8_t id ,
i = last_off = offset;
fru_data = malloc(fru.size + 1);
if (fru_data == NULL) {
if (!fru_data) {
lprintf(LOG_ERR, " Out of memory!");
return -1;
}
@@ -3740,7 +3742,7 @@ ipmi_fru_upg_ekeying(struct ipmi_intf * intf,
uint32_t fruMultiRecSize = 0;
uint32_t offFileMultiRec = 0;
uint32_t fileMultiRecSize = 0;
if (pFileName == NULL) {
if (!pFileName) {
lprintf(LOG_ERR, "File expected, but none given.");
return (-1);
}
@@ -3757,14 +3759,14 @@ ipmi_fru_upg_ekeying(struct ipmi_intf * intf,
return (-1);
}
buf = malloc(fileMultiRecSize);
if (buf == NULL) {
if (!buf) {
lprintf(LOG_ERR, "ipmitool: malloc failure");
return (-1);
}
if (ipmi_fru_get_multirec_from_file(pFileName, buf, fileMultiRecSize,
offFileMultiRec) != 0) {
lprintf(LOG_ERR, "Failed to get multirec from file '%s'.", pFileName);
if (buf != NULL) {
if (buf) {
free(buf);
buf = NULL;
}
@@ -3772,7 +3774,7 @@ ipmi_fru_upg_ekeying(struct ipmi_intf * intf,
}
if (ipmi_fru_get_adjust_size_from_buffer(buf, &fileMultiRecSize) != 0) {
lprintf(LOG_ERR, "Failed to adjust size from buffer.");
if (buf != NULL) {
if (buf) {
free(buf);
buf = NULL;
}
@@ -3781,13 +3783,13 @@ ipmi_fru_upg_ekeying(struct ipmi_intf * intf,
if (write_fru_area(intf, &fruInfo, fruId, 0, offFruMultiRec,
fileMultiRecSize, buf) != 0) {
lprintf(LOG_ERR, "Failed to write FRU area.");
if (buf != NULL) {
if (buf) {
free(buf);
buf = NULL;
}
return (-1);
}
if (buf != NULL) {
if (buf) {
free(buf);
buf = NULL;
}
@@ -3918,7 +3920,7 @@ ipmi_fru_get_multirec_from_file(char * pFileName, uint8_t * pBufArea,
{
FILE * pFile;
uint32_t len = 0;
if (pFileName == NULL) {
if (!pFileName) {
lprintf(LOG_ERR, "Invalid file name given.");
return (-1);
}
@@ -4091,7 +4093,7 @@ ipmi_fru_get_internal_use_info( struct ipmi_intf * intf,
req.msg.data_len = 1;
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL) {
if (!rsp) {
printf(" Device not present (No Response)\n");
return -1;
}
@@ -4127,7 +4129,7 @@ ipmi_fru_get_internal_use_info( struct ipmi_intf * intf,
req.msg.data_len = 4;
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL) {
if (!rsp) {
printf(" Device not present (No Response)\n");
return 1;
}
@@ -4270,7 +4272,7 @@ ipmi_fru_read_internal_use(struct ipmi_intf * intf, uint8_t id, char * pFileName
if(rc == 0)
{
if(pFileName == NULL)
if(!pFileName)
{
uint16_t counter;
for(counter = 0; counter < size; counter ++)
@@ -4673,7 +4675,7 @@ f_type, uint8_t f_index, char *f_string)
req.msg.data_len = 1;
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL) {
if (!rsp) {
printf(" Device not present (No Response)\n");
rc = (-1);
goto ipmi_fru_set_field_string_out;
@@ -4709,7 +4711,7 @@ f_type, uint8_t f_index, char *f_string)
req.msg.data_len = 4;
rsp = intf->sendrecv(intf, &req);
if (rsp == NULL)
if (!rsp)
{
printf(" Device not present (No Response)\n");
rc = (-1);
@@ -4737,9 +4739,7 @@ f_type, uint8_t f_index, char *f_string)
}
fru_data = malloc( fru.size );
if( fru_data == NULL )
{
if (!fru_data) {
printf("Out of memory!\n");
rc = (-1);
goto ipmi_fru_set_field_string_out;
@@ -4787,14 +4787,14 @@ f_type, uint8_t f_index, char *f_string)
/*Seek to field index */
for (i=0; i <= f_index; i++) {
fru_field_offset_tmp = fru_field_offset;
if (fru_area != NULL) {
if (fru_area) {
free(fru_area);
fru_area = NULL;
}
fru_area = (uint8_t *) get_fru_area_str(fru_data, &fru_field_offset);
}
if( (fru_area == NULL ) || strlen((const char *)fru_area) == 0 ) {
if (!FRU_FIELD_VALID(fru_area)) {
printf("Field not found !\n");
rc = (-1);
goto ipmi_fru_set_field_string_out;
@@ -4836,11 +4836,11 @@ f_type, uint8_t f_index, char *f_string)
}
ipmi_fru_set_field_string_out:
if (fru_data != NULL) {
if (fru_data) {
free(fru_data);
fru_data = NULL;
}
if (fru_area != NULL) {
if (fru_area) {
free(fru_area);
fru_area = NULL;
}
@@ -4899,8 +4899,7 @@ ipmi_fru_set_field_string_rebuild(struct ipmi_intf * intf, uint8_t fruId,
fru_data_new = malloc( fru.size );
if( fru_data_old == NULL || fru_data_new == NULL )
{
if (!fru_data_old || !fru_data_new) {
printf("Out of memory!\n");
rc = (-1);
goto ipmi_fru_set_field_string_rebuild_out;
@@ -4965,14 +4964,14 @@ ipmi_fru_set_field_string_rebuild(struct ipmi_intf * intf, uint8_t fruId,
3) Seek to field index */
for (i = 0;i <= f_index; i++) {
fru_field_offset_tmp = fru_field_offset;
if (fru_area != NULL) {
if (fru_area) {
free(fru_area);
fru_area = NULL;
}
fru_area = (uint8_t *) get_fru_area_str(fru_data_old, &fru_field_offset);
}
if( (fru_area == NULL ) || strlen((const char *)fru_area) == 0 ) {
if (!FRU_FIELD_VALID(fru_area)) {
printf("Field not found (1)!\n");
rc = (-1);
goto ipmi_fru_set_field_string_rebuild_out;
@@ -5200,15 +5199,15 @@ ipmi_fru_set_field_string_rebuild(struct ipmi_intf * intf, uint8_t fruId,
printf("Done.\n");
ipmi_fru_set_field_string_rebuild_out:
if (fru_area != NULL) {
if (fru_area) {
free(fru_area);
fru_area = NULL;
}
if (fru_data_new != NULL) {
if (fru_data_new) {
free(fru_data_new);
fru_data_new = NULL;
}
if (fru_data_old != NULL) {
if (fru_data_old) {
free(fru_data_old);
fru_data_old = NULL;
}