Page MenuHomeFreeBSD

SysV IPC API cleanup
AbandonedPublic

Authored by brooks on Dec 19 2017, 2:55 AM.

Details

Reviewers
None
Summary

Break the struct msqid_ds API.

Rename msg_first and msg_last to kmsg_first and kmsg_last to break
any userspace consumers who refer to these kernel-only members.

The ABI remains unchanged.

Break the struct semid_ds API.

Rename the kernel-only sem_base variable to ksem_base to break any
userland consumers of it.

Don't exclare struct mymsg.

It is an example in the POSIX manpage, not an API. Applications should
declare their own message formats.

PR: 224299

Don't declare union semun in userspace unless _WANT_SEMUN is defined.

POSIX explicitly states that the application must declare union semun.
This makes no sense, but it is what it is.

Diff Detail

Lint
Lint OK
Unit
No Unit Test Coverage
Build Status
Buildable 13653
Build 13873: arc lint + arc unit

Event Timeline

See also https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=224443. After I deal with ports I plan to abandon this revision and split the changes that are viable up into individual diffs.