Skip to content

Commit 895a682

Browse files
committed
# This is a combination of 4 commits.
# This is the 1st commit message: chore: add labels to FIXMEs # This is the commit message #2: chore: add labels to FIXMEs # This is the commit message #3: Declare `setdomainname` and `getdomainname` on Android. Android [supports] `setdomainname` and `getdomainname` in API level 26. [supports] https://github.com/aosp-google/bionic/blob/28f9101d76b709febe25977f98530d77580387d1/libc/include/unistd.h#L236 # This is the commit message #4: Move `setdomainname` and `getdomainname` into linux_like.
1 parent 4869273 commit 895a682

File tree

15 files changed

+69
-58
lines changed

15 files changed

+69
-58
lines changed

libc-test/build.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2081,6 +2081,9 @@ fn test_android(target: &str) {
20812081
// Added in API level 26, but some tests use level 24.
20822082
"endgrent" => true,
20832083

2084+
// Added in API level 26, but some tests use level 24.
2085+
"getdomainname" | "setdomainname" => true,
2086+
20842087
// FIXME: bad function pointers:
20852088
"isalnum" | "isalpha" | "iscntrl" | "isdigit" | "isgraph" | "islower" | "isprint"
20862089
| "ispunct" | "isspace" | "isupper" | "isxdigit" | "isblank" | "tolower"

libc-test/semver/android.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3324,6 +3324,7 @@ getaddrinfo
33243324
getchar
33253325
getchar_unlocked
33263326
getcwd
3327+
getdomainname
33273328
getegid
33283329
getenv
33293330
geteuid
@@ -3720,6 +3721,7 @@ sendmsg
37203721
sendto
37213722
servent
37223723
setbuf
3724+
setdomainname
37233725
setegid
37243726
setenv
37253727
seteuid

src/unix/bsd/mod.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ cfg_if! {
185185
f.debug_struct("sockaddr_un")
186186
.field("sun_len", &self.sun_len)
187187
.field("sun_family", &self.sun_family)
188-
// FIXME: .field("sun_path", &self.sun_path)
188+
// FIXME(debug): .field("sun_path", &self.sun_path)
189189
.finish()
190190
}
191191
}
@@ -232,11 +232,11 @@ cfg_if! {
232232
impl fmt::Debug for utsname {
233233
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
234234
f.debug_struct("utsname")
235-
// FIXME: .field("sysname", &self.sysname)
236-
// FIXME: .field("nodename", &self.nodename)
237-
// FIXME: .field("release", &self.release)
238-
// FIXME: .field("version", &self.version)
239-
// FIXME: .field("machine", &self.machine)
235+
// FIXME(debug): .field("sysname", &self.sysname)
236+
// FIXME(debug): .field("nodename", &self.nodename)
237+
// FIXME(debug): .field("release", &self.release)
238+
// FIXME(debug): .field("version", &self.version)
239+
// FIXME(debug): .field("machine", &self.machine)
240240
.finish()
241241
}
242242
}

src/unix/bsd/netbsdlike/openbsd/mod.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -780,7 +780,7 @@ cfg_if! {
780780
.field("d_reclen", &self.d_reclen)
781781
.field("d_type", &self.d_type)
782782
.field("d_namlen", &self.d_namlen)
783-
// FIXME: .field("d_name", &self.d_name)
783+
// FIXME(debug): .field("d_name", &self.d_name)
784784
.finish()
785785
}
786786
}
@@ -873,8 +873,8 @@ cfg_if! {
873873
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
874874
f.debug_struct("lastlog")
875875
.field("ll_time", &self.ll_time)
876-
// FIXME: .field("ll_line", &self.ll_line)
877-
// FIXME: .field("ll_host", &self.ll_host)
876+
// FIXME(debug): .field("ll_line", &self.ll_line)
877+
// FIXME(debug): .field("ll_host", &self.ll_host)
878878
.finish()
879879
}
880880
}
@@ -913,9 +913,9 @@ cfg_if! {
913913
impl fmt::Debug for utmp {
914914
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
915915
f.debug_struct("utmp")
916-
// FIXME: .field("ut_line", &self.ut_line)
917-
// FIXME: .field("ut_name", &self.ut_name)
918-
// FIXME: .field("ut_host", &self.ut_host)
916+
// FIXME(debug): .field("ut_line", &self.ut_line)
917+
// FIXME(debug): .field("ut_name", &self.ut_name)
918+
// FIXME(debug): .field("ut_host", &self.ut_host)
919919
.field("ut_time", &self.ut_time)
920920
.finish()
921921
}
@@ -1048,10 +1048,10 @@ cfg_if! {
10481048
.field("f_namemax", &self.f_namemax)
10491049
.field("f_owner", &self.f_owner)
10501050
.field("f_ctime", &self.f_ctime)
1051-
// FIXME: .field("f_fstypename", &self.f_fstypename)
1052-
// FIXME: .field("f_mntonname", &self.f_mntonname)
1053-
// FIXME: .field("f_mntfromname", &self.f_mntfromname)
1054-
// FIXME: .field("f_mntfromspec", &self.f_mntfromspec)
1051+
// FIXME(debug): .field("f_fstypename", &self.f_fstypename)
1052+
// FIXME(debug): .field("f_mntonname", &self.f_mntonname)
1053+
// FIXME(debug): .field("f_mntfromname", &self.f_mntfromname)
1054+
// FIXME(debug): .field("f_mntfromspec", &self.f_mntfromspec)
10551055
.field("mount_info", &self.mount_info)
10561056
.finish()
10571057
}

src/unix/bsd/netbsdlike/openbsd/x86_64.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,8 +94,8 @@ cfg_if! {
9494
.field("fx_rdp", &{ self.fx_rdp })
9595
.field("fx_mxcsr", &{ self.fx_mxcsr })
9696
.field("fx_mxcsr_mask", &{ self.fx_mxcsr_mask })
97-
// FIXME: .field("fx_st", &{self.fx_st})
98-
// FIXME: .field("fx_xmm", &{self.fx_xmm})
97+
// FIXME(debug): .field("fx_st", &{self.fx_st})
98+
// FIXME(debug): .field("fx_xmm", &{self.fx_xmm})
9999
.finish()
100100
}
101101
}

src/unix/haiku/mod.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -562,7 +562,7 @@ cfg_if! {
562562
f.debug_struct("sockaddr_un")
563563
.field("sun_len", &self.sun_len)
564564
.field("sun_family", &self.sun_family)
565-
// FIXME: .field("sun_path", &self.sun_path)
565+
// FIXME(debug): .field("sun_path", &self.sun_path)
566566
.finish()
567567
}
568568
}
@@ -599,7 +599,7 @@ cfg_if! {
599599
.field("ss_family", &self.ss_family)
600600
.field("__ss_pad1", &self.__ss_pad1)
601601
.field("__ss_pad2", &self.__ss_pad2)
602-
// FIXME: .field("__ss_pad3", &self.__ss_pad3)
602+
// FIXME(debug): .field("__ss_pad3", &self.__ss_pad3)
603603
.finish()
604604
}
605605
}
@@ -636,7 +636,7 @@ cfg_if! {
636636
.field("d_ino", &self.d_ino)
637637
.field("d_pino", &self.d_pino)
638638
.field("d_reclen", &self.d_reclen)
639-
// FIXME: .field("d_name", &self.d_name)
639+
// FIXME(debug): .field("d_name", &self.d_name)
640640
.finish()
641641
}
642642
}
@@ -868,7 +868,7 @@ pub const LC_NUMERIC: c_int = 4;
868868
pub const LC_TIME: c_int = 5;
869869
pub const LC_MESSAGES: c_int = 6;
870870

871-
// FIXME: Haiku does not have MAP_FILE, but library/std/os.rs requires it
871+
// FIXME(haiku): Haiku does not have MAP_FILE, but library/std/os.rs requires it
872872
pub const MAP_FILE: c_int = 0x00;
873873
pub const MAP_SHARED: c_int = 0x01;
874874
pub const MAP_PRIVATE: c_int = 0x02;
@@ -1301,7 +1301,7 @@ pub const PTHREAD_MUTEX_NORMAL: c_int = 1;
13011301
pub const PTHREAD_MUTEX_ERRORCHECK: c_int = 2;
13021302
pub const PTHREAD_MUTEX_RECURSIVE: c_int = 3;
13031303

1304-
pub const FIOCLEX: c_ulong = 0; // FIXME: does not exist on Haiku!
1304+
pub const FIOCLEX: c_ulong = 0; // FIXME(haiku): does not exist on Haiku!
13051305

13061306
pub const RUSAGE_CHILDREN: c_int = -1;
13071307

src/unix/haiku/x86_64.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -94,9 +94,9 @@ cfg_if! {
9494
.field("rdp", &self.rdp)
9595
.field("mxcsr", &self.mxcsr)
9696
.field("mscsr_mask", &self.mscsr_mask)
97-
// FIXME: .field("_fpreg", &self._fpreg)
98-
// FIXME: .field("_xmm", &self._xmm)
99-
// FIXME: .field("_reserved_416_511", &self._reserved_416_511)
97+
// FIXME(debug): .field("_fpreg", &self._fpreg)
98+
// FIXME(debug): .field("_xmm", &self._xmm)
99+
// FIXME(debug): .field("_reserved_416_511", &self._reserved_416_511)
100100
.finish()
101101
}
102102
}
@@ -133,7 +133,7 @@ cfg_if! {
133133
f.debug_struct("xstate_hdr")
134134
.field("bv", &self.bv)
135135
.field("xcomp_bv", &self.xcomp_bv)
136-
// FIXME: .field("_reserved", &field._reserved)
136+
// FIXME(debug): .field("_reserved", &field._reserved)
137137
.finish()
138138
}
139139
}
@@ -162,7 +162,7 @@ cfg_if! {
162162
f.debug_struct("savefpu")
163163
.field("fp_fxsave", &self.fp_fxsave)
164164
.field("fp_xstate", &self.fp_xstate)
165-
// FIXME: .field("_fp_ymm", &field._fp_ymm)
165+
// FIXME(debug): .field("_fp_ymm", &field._fp_ymm)
166166
.finish()
167167
}
168168
}

src/unix/linux_like/emscripten/mod.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1576,8 +1576,6 @@ extern "C" {
15761576
pub fn mkstemps(template: *mut c_char, suffixlen: c_int) -> c_int;
15771577
pub fn nl_langinfo(item: crate::nl_item) -> *mut c_char;
15781578

1579-
pub fn getdomainname(name: *mut c_char, len: size_t) -> c_int;
1580-
pub fn setdomainname(name: *const c_char, len: size_t) -> c_int;
15811579
pub fn sendmmsg(
15821580
sockfd: c_int,
15831581
msgvec: *mut crate::mmsghdr,

src/unix/linux_like/linux/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5307,6 +5307,7 @@ pub const CANFD_MAX_DLEN: usize = 64;
53075307

53085308
pub const CANFD_BRS: c_int = 0x01;
53095309
pub const CANFD_ESI: c_int = 0x02;
5310+
pub const CANFD_FDF: c_int = 0x04;
53105311

53115312
pub const CANXL_MIN_DLC: c_int = 0;
53125313
pub const CANXL_MAX_DLC: c_int = 2047;
@@ -6428,8 +6429,6 @@ extern "C" {
64286429

64296430
pub fn nl_langinfo(item: crate::nl_item) -> *mut c_char;
64306431

6431-
pub fn getdomainname(name: *mut c_char, len: size_t) -> c_int;
6432-
pub fn setdomainname(name: *const c_char, len: size_t) -> c_int;
64336432
pub fn vhangup() -> c_int;
64346433
pub fn sync();
64356434
pub fn syncfs(fd: c_int) -> c_int;

src/unix/linux_like/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1863,6 +1863,9 @@ extern "C" {
18631863
locale: crate::locale_t,
18641864
) -> size_t;
18651865
pub fn strptime(s: *const c_char, format: *const c_char, tm: *mut crate::tm) -> *mut c_char;
1866+
1867+
pub fn getdomainname(name: *mut c_char, len: size_t) -> c_int;
1868+
pub fn setdomainname(name: *const c_char, len: size_t) -> c_int;
18661869
}
18671870

18681871
// LFS64 extensions

src/unix/nto/mod.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -806,7 +806,7 @@ cfg_if! {
806806
f.debug_struct("sockaddr_un")
807807
.field("sun_len", &self.sun_len)
808808
.field("sun_family", &self.sun_family)
809-
// FIXME: .field("sun_path", &self.sun_path)
809+
// FIXME(debug): .field("sun_path", &self.sun_path)
810810
.finish()
811811
}
812812
}
@@ -1015,11 +1015,11 @@ cfg_if! {
10151015
impl fmt::Debug for utsname {
10161016
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
10171017
f.debug_struct("utsname")
1018-
// FIXME: .field("sysname", &self.sysname)
1019-
// FIXME: .field("nodename", &self.nodename)
1020-
// FIXME: .field("release", &self.release)
1021-
// FIXME: .field("version", &self.version)
1022-
// FIXME: .field("machine", &self.machine)
1018+
// FIXME(debug): .field("sysname", &self.sysname)
1019+
// FIXME(debug): .field("nodename", &self.nodename)
1020+
// FIXME(debug): .field("release", &self.release)
1021+
// FIXME(debug): .field("version", &self.version)
1022+
// FIXME(debug): .field("machine", &self.machine)
10231023
.finish()
10241024
}
10251025
}
@@ -1095,7 +1095,7 @@ cfg_if! {
10951095
.field("ss_family", &self.ss_family)
10961096
.field("__ss_pad1", &self.__ss_pad1)
10971097
.field("__ss_align", &self.__ss_align)
1098-
// FIXME: .field("__ss_pad2", &self.__ss_pad2)
1098+
// FIXME(debug): .field("__ss_pad2", &self.__ss_pad2)
10991099
.finish()
11001100
}
11011101
}

src/unix/nuttx/mod.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ s! {
5454

5555
pub struct passwd {
5656
pub pw_name: *const c_char,
57+
pub pw_passwd: *const c_char,
5758
pub pw_uid: u32,
5859
pub pw_gid: u32,
5960
pub pw_gecos: *const c_char,
@@ -128,7 +129,7 @@ s! {
128129
pub tm_yday: i32,
129130
pub tm_isdst: i32,
130131
pub tm_gmtoff: isize,
131-
pub tm_zone: *const i8,
132+
pub tm_zone: *const c_char,
132133
__reserved: [usize; __DEFAULT_RESERVED_SIZE__],
133134
}
134135

@@ -165,7 +166,7 @@ s! {
165166

166167
pub struct dirent {
167168
pub d_type: u8,
168-
pub d_name: [i8; __NAME_MAX__ + 1],
169+
pub d_name: [c_char; __NAME_MAX__ + 1],
169170
}
170171

171172
pub struct fd_set {
@@ -247,6 +248,7 @@ s! {
247248
// for example, struct passwd, https://pubs.opengroup.org/onlinepubs/009695399/basedefs/pwd.h.html,
248249
// POSIX only defines following fields in struct passwd:
249250
// char *pw_name User's login name.
251+
// char *pw_passwd Encrypted password.
250252
// uid_t pw_uid Numerical user ID.
251253
// gid_t pw_gid Numerical group ID.
252254
// char *pw_dir Initial working directory.

0 commit comments

Comments
 (0)