moros/Cargo.toml

53 lines
1.8 KiB
TOML
Raw Permalink Normal View History

2019-12-28 17:08:11 +00:00
[package]
name = "moros"
2020-01-29 22:16:15 +00:00
description = "MOROS: Obscure Rust Operating System"
version = "0.10.3"
2019-12-28 17:08:11 +00:00
authors = ["Vincent Ollivier <v@vinc.cc>"]
edition = "2018"
2019-12-29 21:16:31 +00:00
license = "MIT"
repository = "https://github.com/vinc/moros"
readme = "README.md"
default-run = "moros"
2019-12-28 17:08:11 +00:00
Add network stack (#12) * Display MAC address * Add kernel::pci::find_device * Mask lower bits of 16-bit Memory Space BAR * Use array instead of vector for MAC address * Split interrupts module * Use IRQ constants instead of InterruptIndex enum * Replace kernel::sleep by kernel::time * Add kernel::idt::set_irq_handler * Add interrupt handler for RTL8139 * Enable bus mastering for RTL8139 * Setup NIC * Add features for vga/serial and qwerty/dvorak * Add smoltcp crate * Use EthernetAddress from smoltcp * Add RTL8139 struct to implement smoltcp Device * Save detected device * Add kernel::mem::translate_addr * Use physical address of rx_buffer * Add command to read raw network data * Parse packet header and length * Fix missing ascii on last line * Take CRC into account for packet length * Fix compilation error * Move buffer pointers after packet received * Use buffer slice instead of clone in RxToken * Add packet transmission and dhcp client * Configure network interface with DHCP client * Add debug mode to network interface * Clean dhcp command output * Add ip command * Clean up commands output * Count number of packets transmitted and received * Add route command * Add kernel::random::rand16 * Handle carriage return char * Add HTTP client * Improve http command output * Add DNS resolver command * Parse DNS responses to A IN queries * Resolve http host * Check if interface is ready before operations * Add timeout to polling loops * Fix sleep during polling * Add verbose arg to http command * Add State struct to Device struct * Add subcommand config and dump to net command * Add MTU to RX_BUFFER_LEN when using WRAP * Fix first transmission index * Refactor TxToken implementation * Add user agent to http requests * Add more comments to code * Add llvm-tools-preview component to readme * Add method to translate IRQ into system interrupt * Clear IRQ mask in set_irq_handler * Refactor driver code * Sleep less rather than more * Add rand32 * Disable RTL8139 interrupts * Use arrays instead of vectors for buffers * Add minimum sleep duration * Add phy_addr to dry init * Use CAPR and CBR to compute rx buffer offset * Add debug for alloc issue with continuous physical memory * Fix timeout in loops * Add unused buffer to push the rx buffer into contiguous memory * Add doc about network * Update readme * Add read /net/<proto>/<host>/<path> subcommand
2020-02-02 17:55:20 +00:00
[features]
default = ["video"]
video = []
Add network stack (#12) * Display MAC address * Add kernel::pci::find_device * Mask lower bits of 16-bit Memory Space BAR * Use array instead of vector for MAC address * Split interrupts module * Use IRQ constants instead of InterruptIndex enum * Replace kernel::sleep by kernel::time * Add kernel::idt::set_irq_handler * Add interrupt handler for RTL8139 * Enable bus mastering for RTL8139 * Setup NIC * Add features for vga/serial and qwerty/dvorak * Add smoltcp crate * Use EthernetAddress from smoltcp * Add RTL8139 struct to implement smoltcp Device * Save detected device * Add kernel::mem::translate_addr * Use physical address of rx_buffer * Add command to read raw network data * Parse packet header and length * Fix missing ascii on last line * Take CRC into account for packet length * Fix compilation error * Move buffer pointers after packet received * Use buffer slice instead of clone in RxToken * Add packet transmission and dhcp client * Configure network interface with DHCP client * Add debug mode to network interface * Clean dhcp command output * Add ip command * Clean up commands output * Count number of packets transmitted and received * Add route command * Add kernel::random::rand16 * Handle carriage return char * Add HTTP client * Improve http command output * Add DNS resolver command * Parse DNS responses to A IN queries * Resolve http host * Check if interface is ready before operations * Add timeout to polling loops * Fix sleep during polling * Add verbose arg to http command * Add State struct to Device struct * Add subcommand config and dump to net command * Add MTU to RX_BUFFER_LEN when using WRAP * Fix first transmission index * Refactor TxToken implementation * Add user agent to http requests * Add more comments to code * Add llvm-tools-preview component to readme * Add method to translate IRQ into system interrupt * Clear IRQ mask in set_irq_handler * Refactor driver code * Sleep less rather than more * Add rand32 * Disable RTL8139 interrupts * Use arrays instead of vectors for buffers * Add minimum sleep duration * Add phy_addr to dry init * Use CAPR and CBR to compute rx buffer offset * Add debug for alloc issue with continuous physical memory * Fix timeout in loops * Add unused buffer to push the rx buffer into contiguous memory * Add doc about network * Update readme * Add read /net/<proto>/<host>/<path> subcommand
2020-02-02 17:55:20 +00:00
serial = []
userspace = []
Add network stack (#12) * Display MAC address * Add kernel::pci::find_device * Mask lower bits of 16-bit Memory Space BAR * Use array instead of vector for MAC address * Split interrupts module * Use IRQ constants instead of InterruptIndex enum * Replace kernel::sleep by kernel::time * Add kernel::idt::set_irq_handler * Add interrupt handler for RTL8139 * Enable bus mastering for RTL8139 * Setup NIC * Add features for vga/serial and qwerty/dvorak * Add smoltcp crate * Use EthernetAddress from smoltcp * Add RTL8139 struct to implement smoltcp Device * Save detected device * Add kernel::mem::translate_addr * Use physical address of rx_buffer * Add command to read raw network data * Parse packet header and length * Fix missing ascii on last line * Take CRC into account for packet length * Fix compilation error * Move buffer pointers after packet received * Use buffer slice instead of clone in RxToken * Add packet transmission and dhcp client * Configure network interface with DHCP client * Add debug mode to network interface * Clean dhcp command output * Add ip command * Clean up commands output * Count number of packets transmitted and received * Add route command * Add kernel::random::rand16 * Handle carriage return char * Add HTTP client * Improve http command output * Add DNS resolver command * Parse DNS responses to A IN queries * Resolve http host * Check if interface is ready before operations * Add timeout to polling loops * Fix sleep during polling * Add verbose arg to http command * Add State struct to Device struct * Add subcommand config and dump to net command * Add MTU to RX_BUFFER_LEN when using WRAP * Fix first transmission index * Refactor TxToken implementation * Add user agent to http requests * Add more comments to code * Add llvm-tools-preview component to readme * Add method to translate IRQ into system interrupt * Clear IRQ mask in set_irq_handler * Refactor driver code * Sleep less rather than more * Add rand32 * Disable RTL8139 interrupts * Use arrays instead of vectors for buffers * Add minimum sleep duration * Add phy_addr to dry init * Use CAPR and CBR to compute rx buffer offset * Add debug for alloc issue with continuous physical memory * Fix timeout in loops * Add unused buffer to push the rx buffer into contiguous memory * Add doc about network * Update readme * Add read /net/<proto>/<host>/<path> subcommand
2020-02-02 17:55:20 +00:00
2019-12-28 17:08:11 +00:00
[dependencies]
2023-11-12 17:36:09 +00:00
acpi = "5.0.0"
aml = "0.16.4"
base64 = { version = "0.13.1", default-features = false }
bit_field = "0.10.2"
bootloader = { version = "0.9.28", features = ["map_physical_memory"] }
2020-06-29 22:16:41 +00:00
lazy_static = { version = "1.4.0", features = ["spin_no_std"] }
2023-10-09 06:07:07 +00:00
libm = "0.2.8"
linked_list_allocator = "0.10.5"
2021-08-21 09:21:34 +00:00
littlewing = { version = "0.7.0", default-features = false }
2023-03-02 21:30:51 +00:00
nom = { version = "7.1.3", default-features = false, features = ["alloc"] }
num-bigint = { version = "0.4.4", default-features = false }
num-traits = { version = "0.2.18", default-features = false }
object = { version = "0.35.0", default-features = false, features = ["read"] }
pbkdf2 = { version = "0.12.2", default-features = false, features = ["hmac"] }
pc-keyboard = "0.6.1"
pic8259 = "0.11.0"
2022-03-19 18:34:57 +00:00
rand = { version = "0.8.5", default-features = false }
2022-05-11 07:47:35 +00:00
rand_hc = "0.3.1"
raw-cpuid = "11.0.1"
2023-10-05 19:51:47 +00:00
sha2 = { version = "0.10.8", default-features = false, features = ["force-soft"] }
smoltcp = { version = "0.11.0", default-features = false, features = ["alloc", "medium-ethernet", "socket-tcp", "socket-udp", "socket-dhcpv4", "proto-ipv4", "proto-dhcpv4"] }
2023-04-11 22:14:24 +00:00
spin = "0.9.8"
time = { version = "0.2.27", default-features = false }
uart_16550 = "0.3.0"
2023-11-17 09:09:16 +00:00
vte = "0.13.0"
x86_64 = "0.15.1"
[package.metadata.bootloader]
physical-memory-offset = "0xFFFF800000000000"
kernel-stack-address = "0xFFFFFF8000000000"
boot-info-address = "0xFFFFFFFF80000000"
[package.metadata.bootimage]
test-success-exit-code = 33 # (0x10 << 1) | 1