Skip to contentSkip to conversation

personality.h: struct map_segment

DISCUSSION Justin Pryzby 2 participants 2 messages Jan 11, 2004

lore
Share & tools
lore
#0 lore raw

include/linux/personality.h defines

struct exec_domain {

        const char              *name;          /* name of the execdomain */
        handler_t               handler;        /* handler for syscalls */
        unsigned char           pers_low;       /* lowest personality */
        unsigned char           pers_high;      /* highest personality */
        unsigned long           *signal_map;    /* signal mapping */
        unsigned long           *signal_invmap; /* reverse signal mapping */
        struct map_segment      *err_map;       /* error mapping */
        struct map_segment      *socktype_map;  /* socket type mapping */
        struct map_segment      *sockopt_map;   /* socket option mapping */
        struct map_segment      *af_map;        /* address family mapping */
        struct module           *module;        /* module context of the ed. */
        struct exec_domain      *next;          /* linked list (internal) */

};

However, as best as I can tell, struct map_segment is never defined. I've grepped 2.4 and 2.5, and googled to no avail. I'm just curious, is this simply unimplemented functionality? And what is it ultimately supposed to do?

Justin

#1 lore raw
Quoted 4 lines · Justin Pryzby

However, as best as I can tell, struct map_segment is never defined. I've grepped 2.4 and 2.5, and googled to no avail. I'm just curious, is this simply unimplemented functionality? And what is it ultimately supposed to do?

It's used in the linux-abi modules to map between constants of foreign OSes to the Linux native ones, e.g. for error numbers, signal numbers and whatever. It probably does not have much business beeing in mainline personality.h..