const LinkMap = extern struct 64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86const LinkMap = extern struct {
addr: usize,
name: [*:0]const u8,
ld: ?*elf.Dyn,
next: ?*LinkMap,
prev: ?*LinkMap,
pub const Iterator = struct {
current: ?*LinkMap,
pub fn end(self: *Iterator) bool {
return self.current == null;
}
pub fn next(self: *Iterator) ?*LinkMap {
if (self.current) |it| {
self.current = it.next;
return it;
}
return null;
}
};
}
The link_map structure is not completely specified beside the fields reported below, any libc is free to store additional data in the remaining space. An iterator is provided in order to traverse the linked list in a idiomatic fashion.