Austin Group Defect Tracker

Aardvark Mark III

Viewing Issue Simple Details Jump to Notes ] Issue History ] Print ]
ID Category Severity Type Date Submitted Last Update
0001260 [1003.1(2016)/Issue7+TC2] Shell and Utilities Comment Clarification Requested 2019-06-14 21:12 2019-11-11 12:20
Reporter stephane View Status public  
Assigned To
Priority normal Resolution Accepted  
Status Interpretation Required  
Name Stephane Chazelas
User Reference
Section kill utility
Page Number 2879, 2882 (in 2018 edition)
Line Number 94926-94929 95071 95092
Interp Status Approved
Final Accepted Text See Note: 0004490
Summary 0001260: "kill pid" XSI only
Description The synopsis of the kill utility suggests that "kill pid" is only required to be supported by systems implementing XSI as the non-XSI synopsis:

    kill -s signal_name pid...

doesn't have -s signal_name in square brackets, suggesting it's mandatory. Is that intentional? I'd expect "kill 123", "kill -- -123", "kill %1" to consistently send SIGTERM to the 123 pid or pgid, or %1 job, portably even on non-XSI.

Line 95071 has:

kill −TERM −123

It seems to me it should be either:

kill -TERM -- -123

and be XSI shaded, or:

kill -s TERM -- -123

The rationale section has:

> To avoid an ambiguity of an initial negative number argument specifying either a signal number or a process group, POSIX.1-2017 mandates that it is always considered the former by implementations that support the XSI option. It also requires that conforming applications always use the "− −" options terminator argument when specifying a process group, <strong>unless an option is also specified.</strong>

(emphasis mine)

I don't see anything in the normative text that says that a -- is not required when an option is specified.

AFAICT, in kill -s TERM -123 or kill -TERM -123, that -123 would still be treated as an option (and in practice is by several implementation).
Desired Action Unless I'm missing something something, change first synopsis line to:

kill [−s signal_name] pid...


kill -TERM -123


kill -s TERM -- -123

Remove the "unless an option is also specified." part in the rationale.
Tags tc3-2008
Attached Files

- Relationships

-  Notes
Don Cragun (manager)
2019-07-25 15:26

Interpretation response
The standard is unclear on this issue, and no conformance distinction can be made between alternative implementations based on this. This is being referred to the sponsor.

The standard is not clear as to whether or not -s is required on non-XSI systems. No known implementations require it.

Notes to the Editor (not part of this interpretation):
Make the changes suggested in the Desired Action.
agadmin (administrator)
2019-10-07 15:16

Interpretation proposed: 7 October 2019
agadmin (administrator)
2019-11-11 12:20

Interpretation Approved: 11 Nov 2019

- Issue History
Date Modified Username Field Change
2019-06-14 21:12 stephane New Issue
2019-06-14 21:12 stephane Name => Stephane Chazelas
2019-06-14 21:12 stephane Section => kill utility
2019-06-14 21:12 stephane Page Number => 2879, 2882 (in 2018 edition)
2019-06-14 21:12 stephane Line Number => 94926-94929 95071 95092
2019-07-25 15:26 Don Cragun Note Added: 0004490
2019-07-25 15:27 Don Cragun Interp Status => ---
2019-07-25 15:27 Don Cragun Status New => Interpretation Required
2019-07-25 15:27 Don Cragun Resolution Open => Accepted
2019-07-25 15:27 Don Cragun Tag Attached: tc3-2008
2019-07-25 15:31 Don Cragun Final Accepted Text => See Note: 0004490
2019-07-25 16:25 Don Cragun Interp Status --- => Pending
2019-10-07 15:16 agadmin Interp Status Pending => Proposed
2019-10-07 15:16 agadmin Note Added: 0004602
2019-11-11 12:20 agadmin Interp Status Proposed => Approved
2019-11-11 12:20 agadmin Note Added: 0004647

Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker