Project

General

Profile

Feature #6898

Want libctf function to set struct/union size

Added by Robert Mustacchi over 3 years ago. Updated 10 months ago.

Status:
Closed
Priority:
Normal
Category:
lib - userland libraries
Start date:
2016-04-11
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:

Description

Many structures have padding in them that rounds up the structure size to some abi requirement beyond the last member. To facilitate this, we should add a function that allows us to set the total size of a structure or union. This must fail if the suggested size is less than the structure's current size.

Callers should not add additional members after this has been called.


Related issues

Related to illumos gate - Feature #6885: CTF Everywhere Part 1Closed2016-04-11

Actions

History

#1

Updated by Robert Mustacchi over 3 years ago

#2

Updated by Electric Monk 10 months ago

  • Status changed from New to Closed

git commit bc1f688b4872ace323eaddbb1a6365d054e7bf56

commit  bc1f688b4872ace323eaddbb1a6365d054e7bf56
Author: Robert Mustacchi <rm@joyent.com>
Date:   2019-02-11T17:40:04.000Z

    6885 CTF Everywhere Part 1
    6886 Want ctfdiff
    6887 ctfdump should be written in terms of libctf
    6888 ctfmerge should be implemented in terms of libctf
    6889 ctfconvert should be implemented in terms of libctf
    6890 Want general workq
    6891 Want general mergeq
    6892 ctf_add_encoded assigns() incorrect byte size to types
    6893 ctf_add_{struct,union,enum} can reuse forwards
    6894 ctf_add_{struct,union,enum} occasionally forget to dirty the ctf_file_t
    6895 ctf_add_member could better handle bitfields
    6896 ctf_type_size() reports wrong size for forwards
    6897 Want libctf ctf_kind_name() function
    6898 Want libctf function to set struct/union size
    Portions contributed by: John Levon <john.levon@joyent.com>
    Portions contributed by: Richard Lowe <richlowe@richlowe.net>
    Reviewed by: John Levon <john.levon@joyent.com>
    Reviewed by: Andy Fiddaman <andy@omniosce.org>
    Reviewed by: Gergő Doma <domag02@gmail.com>
    Approved by: Dan McDonald <danmcd@joyent.com>

Also available in: Atom PDF