Skip to content

Commit

Permalink
Define newlib socket types by target arch
Browse files Browse the repository at this point in the history
  • Loading branch information
FenrirWolf committed Aug 18, 2019
1 parent 4b610e6 commit fd03747
Show file tree
Hide file tree
Showing 3 changed files with 58 additions and 25 deletions.
28 changes: 28 additions & 0 deletions src/unix/newlib/aarch64/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,31 @@ pub type wchar_t = u32;

pub type c_long = i64;
pub type c_ulong = u64;

s! {
pub struct sockaddr {
pub sa_len: u8,
pub sa_family: ::sa_family_t,
pub sa_data: [::c_char; 14],
}

pub struct sockaddr_in6 {
pub sin6_len: u8,
pub sin6_family: ::sa_family_t,
pub sin6_port: ::in_port_t,
pub sin6_flowinfo: u32,
pub sin6_addr: ::in6_addr,
pub sin6_scope_id: u32,
}

pub struct sockaddr_in {
pub sin_len: u8,
pub sin_family: ::sa_family_t,
pub sin_port: ::in_port_t,
pub sin_addr: ::in_addr,
pub sin_zero: [::c_char; 8],
}
}

pub const POLLOUT: ::c_short = 0x4;
pub const POLLHUP: ::c_short = 0x10;
30 changes: 30 additions & 0 deletions src/unix/newlib/arm/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,33 @@ pub type wchar_t = u32;

pub type c_long = i32;
pub type c_ulong = u32;

s! {
pub struct sockaddr {
pub sa_family: ::sa_family_t,
pub sa_data: [::c_char; 14],
}

pub struct sockaddr_in6 {
pub sin6_family: ::sa_family_t,
pub sin6_port: ::in_port_t,
pub sin6_flowinfo: u32,
pub sin6_addr: ::in6_addr,
pub sin6_scope_id: u32,
}

pub struct sockaddr_in {
pub sin_family: ::sa_family_t,
pub sin_port: ::in_port_t,
pub sin_addr: ::in_addr,
pub sin_zero: [u8; 8],
}

pub struct sockaddr_storage {
pub ss_family: ::sa_family_t,
pub __ss_padding: [u8; 26],
}
}

pub const POLLOUT: ::c_short = 0x10;
pub const POLLHUP: ::c_short = 0x4;
25 changes: 0 additions & 25 deletions src/unix/newlib/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -25,29 +25,6 @@ pub type time_t = i32;
pub type useconds_t = u32;

s! {
pub struct sockaddr {
pub sa_len: u8,
pub sa_family: sa_family_t,
pub sa_data: [::c_char; 14],
}

pub struct sockaddr_in6 {
pub sin6_len: u8,
pub sin6_family: sa_family_t,
pub sin6_port: ::in_port_t,
pub sin6_flowinfo: u32,
pub sin6_addr: ::in6_addr,
pub sin6_scope_id: u32,
}

pub struct sockaddr_in {
pub sin_len: u8,
pub sin_family: ::sa_family_t,
pub sin_port: ::in_port_t,
pub sin_addr: ::in_addr,
pub sin_zero: [::c_char; 8],
}

pub struct addrinfo {
pub ai_flags: ::c_int,
pub ai_family: ::c_int,
Expand Down Expand Up @@ -389,9 +366,7 @@ pub const O_CLOEXEC: ::c_int = 0x80000;

pub const POLLIN: ::c_short = 0x1;
pub const POLLPRI: ::c_short = 0x2;
pub const POLLOUT: ::c_short = 0x4;
pub const POLLERR: ::c_short = 0x8;
pub const POLLHUP: ::c_short = 0x10;
pub const POLLNVAL: ::c_short = 0x20;

pub const RTLD_LAZY: ::c_int = 0x1;
Expand Down

0 comments on commit fd03747

Please sign in to comment.