Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/Cisco-Talos/Barbervisor
/ functions
Functions
877 in github.com/Cisco-Talos/Barbervisor
⨍
Functions
877
◇
Types & classes
249
↓ 134 callers
Function
vmwrite
Wrapper for VMWRITE
kernel/src/vmx.rs:176
↓ 125 callers
Method
len
Return the length of the buffer of this file backing
kernel/src/file.rs:96
↓ 75 callers
Method
insert
Insert a sample into the corpus
kernel/src/corpus.rs:38
↓ 59 callers
Function
rdtsc
Get the current `rdtsc`
kernel/src/time.rs:52
↓ 53 callers
Method
bits
Generate a u32 from the Device Controls struct
kernel/src/net/i219.rs:611
↓ 49 callers
Method
push
Add a VmRegs to the trace
kernel/src/trace.rs:70
↓ 43 callers
Method
len
(&self)
shared/packets/src/udp.rs:94
↓ 43 callers
Method
load
(&'static self)
kernel/src/idt.rs:435
↓ 42 callers
Method
as_mut
Gives mutable access to the contents of the interrupt stack frame. This function is unsafe since modifying the content of the interrupt stack frame c
kernel/src/idt.rs:721
↓ 35 callers
Method
as_ptr
(&self)
kernel/src/ept.rs:43
↓ 35 callers
Function
test_eq
(prefix_len: u8, mask: A)
shared/packets/src/ip.rs:1161
↓ 33 callers
Method
next
(&mut self)
kernel/src/rng.rs:27
↓ 33 callers
Function
random
Generate a random number [0; end)
kernel/src/ni.rs:33
↓ 28 callers
Method
write
Write Pin based processor flags. Preserves the value of reserved fields. unsafe because it's possible to violate memory safety by e.g. disabling pagi
kernel/src/vmxflags.rs:59
↓ 26 callers
Method
clear
Clear the currently opened files
kernel/src/file.rs:243
↓ 23 callers
Method
write_u32
(&self, reg: u32, value: u32)
kernel/src/net/mod.rs:220
↓ 22 callers
Method
as_bytes
Return an address as a sequence of octets, in big-endian.
shared/packets/src/ip.rs:116
↓ 22 callers
Method
clone
(&self)
kernel/src/acpi.rs:28
↓ 22 callers
Method
read
Read `count` bytes from the current file
kernel/src/file.rs:72
↓ 20 callers
Function
alloc_page
Allocate a new zeroed out page and return it
kernel/src/mm.rs:22
↓ 18 callers
Method
as_ref
(&self)
shared/packets/src/ipv4.rs:541
↓ 17 callers
Method
get_rip
Sets the RIP of the guest as writes the new value with vmwrite We don't ever want to directly change the rip value in VMREGs because that value isn't
kernel/src/fuzzvm.rs:2151
↓ 16 callers
Method
as_ref
(&self)
shared/packets/src/udp.rs:197
↓ 16 callers
Method
mem_base
Either MMIO or IO base address
kernel/src/net/mod.rs:101
↓ 16 callers
Function
put_file
(filename: &str, contents: &[u8])
kernel/src/net/mod.rs:72
↓ 16 callers
Method
set_len
(&mut self, value: u16)
shared/packets/src/udp.rs:154
↓ 16 callers
Function
vga_print
(msg: &str)
bootloader/src/main.rs:114
↓ 15 callers
Function
future
Return the timestamp after `microseconds` have elapsed in the future. Used for timeouts.
kernel/src/time.rs:26
↓ 15 callers
Function
rdrand
Wrapper around `rdrand` instruction to generate a random number
kernel/src/ni.rs:18
↓ 15 callers
Method
read
()
kernel/src/vmxflags.rs:41
↓ 15 callers
Method
read_phys
Read a 64-bit value at the physical address specified
kernel/src/mm.rs:63
↓ 15 callers
Function
write
Write a string to the serial device as UTF-8 bytes
shared/serial/src/lib.rs:163
↓ 14 callers
Method
cast_copy
Copy the underlying bits from `Self` into a new structure of type `T` This creates a new `T` on the stack as uninitialized, calls `cast_copy_into()`
shared/safecast/src/lib.rs:353
↓ 14 callers
Function
vmread
Wrapper for VMREAD
kernel/src/vmx.rs:188
↓ 13 callers
Function
out8
Output the byte `val` to `port`
shared/cpu/src/lib.rs:34
↓ 13 callers
Method
write_phys
Write a 64-bit value to the physical address specified
kernel/src/mm.rs:68
↓ 12 callers
Function
print
Display the statistics to the screen
kernel/src/stats.rs:415
↓ 11 callers
Method
emit
Emit this high-level representation into a buffer. # Panics This function panics if invoked on an unspecified representation.
shared/packets/src/ip.rs:711
↓ 11 callers
Method
print
(&self)
kernel/src/vmregs.rs:84
↓ 10 callers
Function
data
Compute an RFC 1071 compliant checksum (without the final complement).
shared/packets/src/ip.rs:749
↓ 10 callers
Method
read
()
shared/vmx/src/vmxflags.rs:38
↓ 10 callers
Method
read_mem
Read into a buffer at the given address. Assumes wanting to read into the entire buffer.
check_address/src/memreader.rs:39
↓ 10 callers
Method
read_mem
Read into a buffer at the given address. Assumes wanting to read into the entire buffer.
parse_trace/src/memreader.rs:39
↓ 9 callers
Function
apic_write
(offset: isize, val: u32)
shared/cpu/src/lib.rs:455
↓ 9 callers
Function
get_file
(filename: &str)
kernel/src/net/mod.rs:43
↓ 9 callers
Method
header_len
(&self)
shared/packets/src/ipv4.rs:298
↓ 9 callers
Function
is_bsp
Returns true if the current CPU is the BSP, otherwise returns false.
shared/cpu/src/lib.rs:295
↓ 9 callers
Method
opcode
(&self)
shared/packets/src/tftp.rs:135
↓ 9 callers
Method
remove
Remove `range` from the RangeSet Any range in the RangeSet which overlaps with `range` will be trimmed such that there is no more overlap. If this re
shared/rangeset/src/lib.rs:113
↓ 9 callers
Method
source_file
(&self)
shared/packets/src/tftp.rs:85
↓ 8 callers
Method
bar_type
(&self)
kernel/src/net/i219.rs:17
↓ 8 callers
Method
buffer_len
(&self, curr_handle: usize)
kernel/src/file.rs:317
↓ 8 callers
Function
get_segment_access_rights
(selector: u16)
shared/vmx/src/lib.rs:463
↓ 8 callers
Function
get_segment_access_rights
(selector: u16)
kernel/src/vmx.rs:462
↓ 8 callers
Function
get_segment_base
(gdtbase: u32, ldt: u16, selector: u16)
shared/vmx/src/lib.rs:514
↓ 8 callers
Function
get_segment_base
(gdtbase: u32, ldt: u16, selector: u16)
kernel/src/vmx.rs:512
↓ 8 callers
Method
io_base
Either MMIO or IO base address
kernel/src/net/mod.rs:106
↓ 8 callers
Function
load_segment_limit
(selector: u16)
shared/vmx/src/lib.rs:438
↓ 8 callers
Function
load_segment_limit
(selector: u16)
kernel/src/vmx.rs:437
↓ 8 callers
Method
read_bytes
Read a slice of bytes to a given virtual address in the guest VM
kernel/src/fuzzvm.rs:1603
↓ 8 callers
Method
read_mem
Read into a buffer at the given address. Assumes wanting to read into the entire buffer.
coverage/src/memreader.rs:40
↓ 7 callers
Method
as_ref
(&self)
shared/packets/src/tftp.rs:312
↓ 7 callers
Method
read_u32
(&self, reg: u32)
kernel/src/net/mod.rs:161
↓ 7 callers
Method
set_preemption_timer_per_second
Given the wanted number of times for the preemption timer to fire per second, calculate and set the correct Preemption Timer Value based on the clock
kernel/src/fuzzvm.rs:2283
↓ 7 callers
Method
write
Write Pin based processor flags. Preserves the value of reserved fields. Unsafe because it's possible to violate memory safety by e.g. disabling pagi
shared/vmx/src/vmxflags.rs:51
↓ 7 callers
Function
wrmsr
(msr: u32, val: u64)
shared/cpu/src/lib.rs:83
↓ 6 callers
Method
flags
Returns the flags of this entry.
kernel/src/ept.rs:99
↓ 6 callers
Function
in8
Input a byte from `port`
shared/cpu/src/lib.rs:39
↓ 6 callers
Method
translate
Translate a guest physical to kernel physical address
kernel/src/fuzzvm.rs:1482
↓ 6 callers
Function
use_x2apic
()
shared/cpu/src/lib.rs:468
↓ 5 callers
Method
addr
Returns the physical address mapped by this entry, might be zero.
kernel/src/ept.rs:104
↓ 5 callers
Method
alloc_page
Allocate a page
kernel/src/mm.rs:44
↓ 5 callers
Method
as_ref
(&self)
shared/packets/src/ethernet.rs:204
↓ 5 callers
Method
build
(self)
kernel/src/net/i219.rs:868
↓ 5 callers
Function
cpuid
(eax: u32, ecx: u32)
shared/cpu/src/lib.rs:284
↓ 5 callers
Method
disable_single_step
Disable single step by removing the Monitor Trap Flag
kernel/src/fuzzvm.rs:2435
↓ 5 callers
Method
enable_single_step
Enable single step by setting the Monitor Trap Flag
kernel/src/fuzzvm.rs:2428
↓ 5 callers
Method
inject_fault
Inject the given exception back into the guest
kernel/src/fuzzvm.rs:2042
↓ 5 callers
Method
is_unused
Returns whether this entry is zero.
kernel/src/ept.rs:89
↓ 5 callers
Method
map_page_raw
Create a mapping at `vaddr` in this page table containing the raw entry `entry`. This can be used to map large pages by using `mapsize`
kernel/src/ept.rs:210
↓ 5 callers
Function
parse
Load a PE file into a PEParsed structure This loader is extremely strict. It checks that all flags that matter are verified to match what we have tes
bootloader/src/pe.rs:300
↓ 5 callers
Method
payload
(&self)
shared/packets/src/udp.rs:130
↓ 5 callers
Method
put_trace
Send the current trace over TFTP with the given filename
kernel/src/fuzzvm.rs:2406
↓ 5 callers
Method
pxecall
Performs a PXE call This is marked unsafe as a caller can potentially corrupt memory depending on the PXE interface and parameters. Eg. issue a PXE r
bootloader/src/pxe.rs:312
↓ 5 callers
Function
rdtsc_elapsed
Get the number of microseconds since the `start_time`
kernel/src/time.rs:36
↓ 5 callers
Method
read_bytes_phys
Read a slice of bytes to a given physical address in the guest VM
kernel/src/fuzzvm.rs:1582
↓ 5 callers
Method
read_u32
Read the u32 for a given offset
kernel/src/pci.rs:104
↓ 5 callers
Method
seek
Seek to a new location in the file From the `fseek` docs: 0 (SEEK_SET) Beginning of file 1 (SEEK_CUR) Current position of the file pointer 2 (SEEK_EN
kernel/src/file.rs:111
↓ 5 callers
Method
set_opcode
(&mut self, opcode: TftpOpcode)
shared/packets/src/tftp.rs:212
↓ 5 callers
Method
total_len
(&self)
shared/packets/src/ipv4.rs:317
↓ 5 callers
Method
update_rip
Increment RIP by VMEXIT instruction length and rewrite RIP value back to the VM
kernel/src/fuzzvm.rs:1990
↓ 5 callers
Function
write_byte
Write a byte to the serial port data port
shared/serial/src/lib.rs:143
↓ 5 callers
Function
write_bytes
Write bytes to the serial device
shared/serial/src/lib.rs:156
↓ 4 callers
Method
as_bytes
Return an IPv4 address as a sequence of octets, in big-endian.
shared/packets/src/ipv4.rs:57
↓ 4 callers
Method
base_dll
Read the base DLL name from the data entry. Returns None if a name is not found.
check_address/src/windows.rs:166
↓ 4 callers
Method
block
(&self)
shared/packets/src/tftp.rs:143
↓ 4 callers
Function
combine
Combine several RFC 1071 compliant checksums.
shared/packets/src/ip.rs:781
↓ 4 callers
Function
get_apic_id
Get current cores APIC ID
shared/cpu/src/lib.rs:476
↓ 4 callers
Method
get_backing
Get a pointer to the root page table for this page table. This value is what would be put in cr3.
kernel/src/ept.rs:204
↓ 4 callers
Function
init
(port: &mut ComStruct)
shared/serial/src/lib.rs:65
next →
1–100 of 877, ranked by callers