libsframe: use const qualifier for sframe_header object

...where applicable.

For the static functions that do not modify the sframe_header object,
use const.  Ditto for local vars.

Reviewed-by: Jens Remus <jremus@linux.ibm.com>

libsframe/
        * sframe.c (sframe_get_hdr_size): Use const qualifier.
        (sframe_header_sanity_check_p): Likewise.
        (flip_sframe): Use const for local var.
        (sframe_decode): Likewise.  While at it, use similar looking var
	name.
        (sframe_decoder_get_hdr_size): Use const for local var.
        (sframe_decoder_get_abi_arch): Likewise.
        (sframe_decoder_get_version): Likewise.
        (sframe_decoder_get_fixed_fp_offset): Likewise.
        (sframe_decoder_get_fixed_ra_offset): Likewise.
        (sframe_get_funcdesc_with_addr_internal): Likewise.
        (sframe_decoder_get_num_fidx): Likewise.
        (sframe_encoder_get_hdr_size): Likewise.
        (sframe_encoder_get_abi_arch): Likewise.
        (sframe_encoder_get_version): Likewise.
        (sframe_encoder_get_num_fidx): Likewise.
This commit is contained in:
Indu Bhagat
2025-10-19 21:11:54 -07:00
parent 8ac9c2cda9
commit 76d2c7d416

View File

@@ -106,7 +106,7 @@ sframe_ret_set_errno (int *errp, int error)
/* Get the SFrame header size. */
static uint32_t
sframe_get_hdr_size (sframe_header *sfh)
sframe_get_hdr_size (const sframe_header *sfh)
{
return SFRAME_V1_HDR_SIZE (*sfh);
}
@@ -210,7 +210,7 @@ flip_fde (sframe_func_desc_entry *fdep)
/* Check if SFrame header has valid data. */
static bool
sframe_header_sanity_check_p (sframe_header *hp)
sframe_header_sanity_check_p (const sframe_header *hp)
{
/* Check preamble is valid. */
if (hp->sfh_preamble.sfp_magic != SFRAME_MAGIC
@@ -476,7 +476,7 @@ static int
flip_sframe (char *frame_buf, size_t buf_size, uint32_t to_foreign)
{
unsigned int i, j, prev_frep_index;
sframe_header *ihp;
const sframe_header *ihp;
char *fdes;
char *fp = NULL;
sframe_func_desc_entry *fdep;
@@ -910,7 +910,7 @@ sframe_decode (const char *sf_buf, size_t sf_size, int *errp)
{
const sframe_preamble *sfp;
size_t hdrsz;
sframe_header *sfheaderp;
const sframe_header *dhp;
sframe_decoder_ctx *dctx;
char *frame_buf;
char *tempbuf = NULL;
@@ -974,18 +974,17 @@ sframe_decode (const char *sf_buf, size_t sf_size, int *errp)
/* Handle the SFrame header. */
dctx->sfd_header = *(sframe_header *) frame_buf;
/* Validate the contents of SFrame header. */
sfheaderp = &dctx->sfd_header;
if (!sframe_header_sanity_check_p (sfheaderp))
dhp = &dctx->sfd_header;
if (!sframe_header_sanity_check_p (dhp))
{
sframe_ret_set_errno (errp, SFRAME_ERR_BUF_INVAL);
goto decode_fail_free;
}
hdrsz = sframe_get_hdr_size (sfheaderp);
hdrsz = sframe_get_hdr_size (dhp);
frame_buf += hdrsz;
/* Handle the SFrame Function Descriptor Entry section. */
fidx_size
= sfheaderp->sfh_num_fdes * sizeof (sframe_func_desc_entry);
fidx_size = dhp->sfh_num_fdes * sizeof (sframe_func_desc_entry);
dctx->sfd_funcdesc = malloc (fidx_size);
if (dctx->sfd_funcdesc == NULL)
{
@@ -993,23 +992,21 @@ sframe_decode (const char *sf_buf, size_t sf_size, int *errp)
goto decode_fail_free;
}
/* SFrame FDEs are at an offset of sfh_fdeoff from SFrame header end. */
memcpy (dctx->sfd_funcdesc, frame_buf + sfheaderp->sfh_fdeoff, fidx_size);
memcpy (dctx->sfd_funcdesc, frame_buf + dhp->sfh_fdeoff, fidx_size);
debug_printf ("%u total fidx size\n", fidx_size);
/* Handle the SFrame Frame Row Entry section. */
dctx->sfd_fres = (char *) malloc (sfheaderp->sfh_fre_len);
dctx->sfd_fres = (char *) malloc (dhp->sfh_fre_len);
if (dctx->sfd_fres == NULL)
{
sframe_ret_set_errno (errp, SFRAME_ERR_NOMEM);
goto decode_fail_free;
}
/* SFrame FREs are at an offset of sfh_freoff from SFrame header end. */
memcpy (dctx->sfd_fres,
frame_buf + sfheaderp->sfh_freoff,
sfheaderp->sfh_fre_len);
memcpy (dctx->sfd_fres, frame_buf + dhp->sfh_freoff, dhp->sfh_fre_len);
fre_bytes = sfheaderp->sfh_fre_len;
fre_bytes = dhp->sfh_fre_len;
dctx->sfd_fre_nbytes = fre_bytes;
debug_printf ("%u total fre bytes\n", fre_bytes);
@@ -1029,8 +1026,7 @@ decode_fail_free:
unsigned int
sframe_decoder_get_hdr_size (sframe_decoder_ctx *ctx)
{
sframe_header *dhp;
dhp = sframe_decoder_get_header (ctx);
const sframe_header *dhp = sframe_decoder_get_header (ctx);
return sframe_get_hdr_size (dhp);
}
@@ -1039,9 +1035,8 @@ sframe_decoder_get_hdr_size (sframe_decoder_ctx *ctx)
uint8_t
sframe_decoder_get_abi_arch (sframe_decoder_ctx *dctx)
{
sframe_header *sframe_header;
sframe_header = sframe_decoder_get_header (dctx);
return sframe_header->sfh_abi_arch;
const sframe_header *dhp = sframe_decoder_get_header (dctx);
return dhp->sfh_abi_arch;
}
/* Get the format version from the SFrame decoder context DCTX. */
@@ -1049,8 +1044,7 @@ sframe_decoder_get_abi_arch (sframe_decoder_ctx *dctx)
uint8_t
sframe_decoder_get_version (sframe_decoder_ctx *dctx)
{
sframe_header *dhp;
dhp = sframe_decoder_get_header (dctx);
const sframe_header *dhp = sframe_decoder_get_header (dctx);
return dhp->sfh_preamble.sfp_version;
}
@@ -1067,8 +1061,7 @@ sframe_decoder_get_flags (sframe_decoder_ctx *dctx)
int8_t
sframe_decoder_get_fixed_fp_offset (sframe_decoder_ctx *ctx)
{
sframe_header *dhp;
dhp = sframe_decoder_get_header (ctx);
const sframe_header *dhp = sframe_decoder_get_header (ctx);
return dhp->sfh_cfa_fixed_fp_offset;
}
@@ -1076,8 +1069,7 @@ sframe_decoder_get_fixed_fp_offset (sframe_decoder_ctx *ctx)
int8_t
sframe_decoder_get_fixed_ra_offset (sframe_decoder_ctx *ctx)
{
sframe_header *dhp;
dhp = sframe_decoder_get_header (ctx);
const sframe_header *dhp = sframe_decoder_get_header (ctx);
return dhp->sfh_cfa_fixed_ra_offset;
}
@@ -1111,14 +1103,13 @@ static sframe_func_desc_entry *
sframe_get_funcdesc_with_addr_internal (sframe_decoder_ctx *ctx, int32_t addr,
int *errp, uint32_t *func_idx)
{
sframe_header *dhp;
sframe_func_desc_entry *fdp;
int low, high;
if (ctx == NULL)
return sframe_ret_set_errno (errp, SFRAME_ERR_INVAL);
dhp = sframe_decoder_get_header (ctx);
const sframe_header *dhp = sframe_decoder_get_header (ctx);
if (dhp == NULL || dhp->sfh_num_fdes == 0 || ctx->sfd_funcdesc == NULL)
return sframe_ret_set_errno (errp, SFRAME_ERR_DCTX_INVAL);
@@ -1243,8 +1234,7 @@ uint32_t
sframe_decoder_get_num_fidx (sframe_decoder_ctx *ctx)
{
uint32_t num_fdes = 0;
sframe_header *dhp = NULL;
dhp = sframe_decoder_get_header (ctx);
const sframe_header *dhp = sframe_decoder_get_header (ctx);
if (dhp)
num_fdes = dhp->sfh_num_fdes;
return num_fdes;
@@ -1473,8 +1463,7 @@ sframe_encoder_free (sframe_encoder_ctx **encoder)
unsigned int
sframe_encoder_get_hdr_size (sframe_encoder_ctx *encoder)
{
sframe_header *ehp;
ehp = sframe_encoder_get_header (encoder);
const sframe_header *ehp = sframe_encoder_get_header (encoder);
return sframe_get_hdr_size (ehp);
}
@@ -1484,8 +1473,7 @@ uint8_t
sframe_encoder_get_abi_arch (sframe_encoder_ctx *encoder)
{
uint8_t abi_arch = 0;
sframe_header *ehp;
ehp = sframe_encoder_get_header (encoder);
const sframe_header *ehp = sframe_encoder_get_header (encoder);
if (ehp)
abi_arch = ehp->sfh_abi_arch;
return abi_arch;
@@ -1496,8 +1484,7 @@ sframe_encoder_get_abi_arch (sframe_encoder_ctx *encoder)
uint8_t
sframe_encoder_get_version (sframe_encoder_ctx *encoder)
{
sframe_header *ehp;
ehp = sframe_encoder_get_header (encoder);
const sframe_header *ehp = sframe_encoder_get_header (encoder);
return ehp->sfh_preamble.sfp_version;
}
@@ -1517,8 +1504,7 @@ uint32_t
sframe_encoder_get_num_fidx (sframe_encoder_ctx *encoder)
{
uint32_t num_fdes = 0;
sframe_header *ehp = NULL;
ehp = sframe_encoder_get_header (encoder);
const sframe_header *ehp = sframe_encoder_get_header (encoder);
if (ehp)
num_fdes = ehp->sfh_num_fdes;
return num_fdes;