License rust and c source files

This commit is contained in:
Jianfeng Jiang
2024-01-03 03:22:36 +00:00
committed by Tate, Hongliang Tian
parent 5fb8a9f7e5
commit faaa4438d6
559 changed files with 1192 additions and 89 deletions

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
//! `print` and `println` macros
//!
//! FIXME: It will print to all `virtio-console` devices, which is not a good choice.

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
mod null;
mod pty;
mod random;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::*;
use crate::events::IoEvents;
use crate::fs::inode_handle::FileIo;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::fs::devpts::DevPts;
use crate::fs::fs_resolver::{FsPath, FsResolver};
use crate::fs::utils::{Dentry, Inode, InodeMode, InodeType};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use alloc::format;
use ringbuf::{ring_buffer::RbBase, HeapRb, Rb};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::IoEvents;
use crate::fs::device::{Device, DeviceId, DeviceType};
use crate::fs::inode_handle::FileIo;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::*;
use crate::error::Error;
use crate::events::IoEvents;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::IoEvents;
use crate::fs::device::{Device, DeviceId, DeviceType};
use crate::fs::inode_handle::FileIo;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
pub use aster_frame::arch::console::register_console_input_callback;
use spin::Once;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::IoEvents;
use crate::prelude::*;
use crate::process::signal::constants::{SIGINT, SIGQUIT};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use spin::Once;
use self::driver::TtyDriver;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
#![allow(non_camel_case_types)]
use crate::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::IoEvents;
use crate::fs::device::{Device, DeviceId, DeviceType};
use crate::fs::inode_handle::FileIo;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::*;
use crate::events::IoEvents;
use crate::fs::inode_handle::FileIo;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use log::info;
pub fn init() {

View File

@ -1,4 +1,6 @@
/// Errno. Copied from Occlum
// SPDX-License-Identifier: MPL-2.0
/// Error number.
#[repr(i32)]
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)]
pub enum Errno {

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
/// A trait to represent any events.
///
/// # The unit event

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::{Events, EventsFilter};
crate::bitflags! {

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
#[allow(clippy::module_inception)]
mod events;
mod io_events;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::Events;
/// An observer for events.

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::prelude::*;
use core::sync::atomic::{AtomicUsize, Ordering};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::fs::fs_resolver::{FsPath, FsResolver};
use crate::fs::utils::Dentry;
use crate::fs::utils::{InodeMode, InodeType};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::device::PtyMaster;
use crate::fs::device::{Device, DeviceId, DeviceType};
use crate::fs::utils::{

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::device::PtyMaster;
use crate::events::IoEvents;
use crate::fs::inode_handle::FileIo;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::IoEvents;
use crate::fs::inode_handle::FileIo;
use crate::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::{IoEvents, Observer};
use crate::fs::file_handle::FileLike;
use crate::fs::file_table::{FdEvents, FileDescripter};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::file_table::FileDescripter;
use crate::events::IoEvents;
use crate::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::fs::Ext2;
use super::inode::{Inode, InodeDesc, RawInode};
use super::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use bitvec::prelude::BitVec;
/// A blocks hole descriptor implemented by the `BitVec`.

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::inode::{FileType, MAX_FNAME_LEN};
use super::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::block_group::{BlockGroup, RawGroupDescriptor};
use super::inode::{FilePerm, FileType, Inode, InodeDesc, RawInode};
use super::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::fs::ext2::{utils::Dirty, Ext2, SuperBlock as Ext2SuperBlock, MAGIC_NUM as EXT2_MAGIC};
use crate::fs::utils::{FileSystem, FsFlags, Inode, SuperBlock, NAME_MAX};
use crate::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::fs::device::Device;
use crate::fs::ext2::{FilePerm, FileType, Inode as Ext2Inode};
use crate::fs::utils::{

View File

@ -1,2 +1,4 @@
// SPDX-License-Identifier: MPL-2.0
mod fs;
mod inode;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::blocks_hole::BlocksHoleDesc;
use super::dir::{DirEntry, DirEntryReader, DirEntryWriter};
use super::fs::Ext2;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
//! A safe Rust Ext2 filesystem.
//!
//! The Second Extended File System(Ext2) is a major rewrite of the Ext filesystem.

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
pub(super) use super::utils::{Dirty, IsPowerOf};
pub(super) use crate::fs::utils::{

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::inode::RawInode;
use super::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::prelude::*;
use core::ops::MulAssign;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
//! Opend File Handle
use crate::events::{IoEvents, Observer};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::{Events, Observer, Subject};
use crate::net::socket::Socket;
use crate::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::prelude::*;
use alloc::str;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::IoEvents;
use crate::prelude::*;
use crate::process::signal::Poller;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
//! Opend Inode-backed File Handle
mod dyn_cap;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::prelude::*;
use aster_rights::{Read, TRightSet, TRights, Write};
use aster_rights_proc::require;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
pub mod device;
pub mod devpts;
pub mod epoll;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::{IoEvents, Observer};
use crate::prelude::*;
use crate::process::signal::Poller;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use core::sync::atomic::{AtomicUsize, Ordering};
use crate::events::Observer;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::*;
/// Represents the inode at `/proc/[pid]/comm`.

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::*;
/// Represents the inode at `/proc/[pid]/exe`.

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::*;
use crate::fs::file_handle::FileLike;
use crate::fs::file_table::FileDescripter;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::Observer;
use crate::fs::file_table::FdEvents;
use crate::fs::utils::{DirEntryVecExt, Inode};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::*;
/// Represents the inode at `/proc/self`.

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::fs::utils::{FileSystem, Inode};
use crate::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use aster_util::slot_vec::SlotVec;
use core::time::Duration;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use core::time::Duration;
use crate::fs::utils::{FileSystem, Inode, InodeMode, InodeType, IoctlCmd, Metadata};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use core::time::Duration;
use crate::fs::utils::{FileSystem, InodeMode, Metadata};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use core::time::Duration;
use crate::fs::utils::{FileSystem, Inode, InodeMode, InodeType, IoctlCmd, Metadata};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use aster_frame::sync::RwLockWriteGuard;
use aster_frame::vm::VmFrame;
use aster_frame::vm::VmIo;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
//! Ramfs based on PageCache
pub use fs::RamFS;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::prelude::*;
use super::fs_resolver::{FsPath, FsResolver};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::prelude::*;
use aster_rights::Rights;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use aster_rights_proc::require;
use core::sync::atomic::{AtomicBool, AtomicU32, Ordering};
use ringbuf::{HeapConsumer as HeapRbConsumer, HeapProducer as HeapRbProducer, HeapRb};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use bitflags::bitflags;
bitflags! {

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::fs::device::Device;
use crate::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::InodeType;
use crate::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::Inode;
use crate::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
/// A mask for the file mode of a newly-created file or directory.
///
/// This mask is always a subset of `0o777`.

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::Inode;
use crate::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use aster_rights::Full;
use core::time::Duration;
use core2::io::{Error as IoError, ErrorKind as IoErrorKind, Result as IoResult, Write};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::prelude::*;
#[repr(u32)]

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
//! VFS components
pub use access_mode::AccessMode;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::prelude::*;
use super::{Dentry, DentryKey, FileSystem, InodeType};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::prelude::*;
use crate::vm::vmo::{get_page_idx_range, Pager, Vmo, VmoFlags, VmoOptions};
use aster_rights::Full;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use bitflags::bitflags;
bitflags! {

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
//! The std library of Asterinas.
#![no_std]
#![forbid(unsafe_code)]

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::Observer;
use crate::prelude::*;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use core::sync::atomic::{AtomicU64, Ordering};
use super::Ipv4Address;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use super::{IpAddress, Ipv4Address};
use crate::prelude::*;
use smoltcp::{

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use self::common::IfaceCommon;
use crate::prelude::*;
use smoltcp::iface::SocketSet;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use aster_frame::timer::read_monotonic_milli_seconds;
pub(super) fn get_network_timestamp() -> smoltcp::time::Instant {

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use aster_frame::timer::read_monotonic_milli_seconds;
use crate::{

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::prelude::*;
use aster_frame::sync::SpinLock;
use aster_network::AnyNetworkDevice;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::{
net::iface::{Iface, IfaceLoopback, IfaceVirtio},
prelude::*,

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::prelude::*;
use core::ops::{Deref, DerefMut};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::net::iface::BindPortConfig;
use crate::net::iface::Iface;
use crate::net::iface::{AnyBoundSocket, AnyUnboundSocket};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::{IoEvents, Observer};
use crate::net::iface::IpEndpoint;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use core::sync::atomic::{AtomicBool, Ordering};
use crate::events::IoEvents;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::IoEvents;
use crate::net::iface::IpEndpoint;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
mod always_some;
mod common;
mod datagram;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use core::sync::atomic::{AtomicBool, Ordering};
use crate::events::{IoEvents, Observer};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use core::sync::atomic::{AtomicBool, Ordering};
use alloc::sync::Arc;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use core::sync::atomic::{AtomicBool, Ordering};
use crate::events::IoEvents;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use core::sync::atomic::{AtomicBool, Ordering};
use crate::events::{IoEvents, Observer};

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::events::IoEvents;
use crate::fs::file_handle::FileLike;
use crate::fs::utils::StatusFlags;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::impl_socket_options;
use super::CongestionControl;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::prelude::*;
#[derive(Debug, Clone, Copy, CopyGetters, Setters)]

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::{fs::file_handle::FileLike, prelude::*};
use self::options::SocketOption;

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
#[macro_export]
macro_rules! impl_socket_options {
($(

View File

@ -1,3 +1,5 @@
// SPDX-License-Identifier: MPL-2.0
use crate::impl_socket_options;
use crate::prelude::*;
mod macros;

Some files were not shown because too many files have changed in this diff Show More