Function map_update_elem [src]

Prototype

pub fn map_update_elem(fd: fd_t, key: []const u8, value: []const u8, flags: u64) !void

Parameters

fd: fd_tkey: []const u8value: []const u8flags: u64

Source

pub fn map_update_elem(fd: fd_t, key: []const u8, value: []const u8, flags: u64) !void { var attr = Attr{ .map_elem = std.mem.zeroes(MapElemAttr), }; attr.map_elem.map_fd = fd; attr.map_elem.key = @intFromPtr(key.ptr); attr.map_elem.result = .{ .value = @intFromPtr(value.ptr) }; attr.map_elem.flags = flags; const rc = linux.bpf(.map_update_elem, &attr, @sizeOf(MapElemAttr)); switch (errno(rc)) { .SUCCESS => return, .@"2BIG" => return error.ReachedMaxEntries, .BADF => return error.BadFd, .FAULT => unreachable, .INVAL => return error.FieldInAttrNeedsZeroing, .NOMEM => return error.SystemResources, .PERM => return error.PermissionDenied, else => |err| return unexpectedErrno(err), } }