UDS: align struct sockaddr_un with NetBSD
Well, make a start, anyway. Our copy was missing a legacy field from the structure, that could very well cause applications to fail trying to set, clear, or check it. As a consequence, SUN_LEN now yields the same result as on NetBSD. Change-Id: I80f6aff7769be402b3bd3959f64d314509ed138c
This commit is contained in:
parent
3e8346a8e8
commit
10a344c3fd
2 changed files with 3 additions and 2 deletions
|
@ -16,6 +16,7 @@ typedef __sa_family_t sa_family_t;
|
||||||
* Definitions for UNIX IPC domain.
|
* Definitions for UNIX IPC domain.
|
||||||
*/
|
*/
|
||||||
struct sockaddr_un {
|
struct sockaddr_un {
|
||||||
|
uint8_t sun_len;
|
||||||
sa_family_t sun_family;
|
sa_family_t sun_family;
|
||||||
char sun_path[UNIX_PATH_MAX];
|
char sun_path[UNIX_PATH_MAX];
|
||||||
};
|
};
|
||||||
|
|
|
@ -302,8 +302,8 @@ void test_header(void)
|
||||||
sun.sun_path[2] = 'x';
|
sun.sun_path[2] = 'x';
|
||||||
sun.sun_path[3] = '\0';
|
sun.sun_path[3] = '\0';
|
||||||
|
|
||||||
if (SUN_LEN(&sun) != 4) {
|
if (SUN_LEN(&sun) != 5) {
|
||||||
test_fail("SUN_LEN(&sun) should be 4");
|
test_fail("SUN_LEN(&sun) should be 5");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PF_UNIX != PF_LOCAL || PF_UNIX != PF_FILE || PF_UNIX != AF_UNIX) {
|
if (PF_UNIX != PF_LOCAL || PF_UNIX != PF_FILE || PF_UNIX != AF_UNIX) {
|
||||||
|
|
Loading…
Reference in a new issue