Document Number: AUSTIN/34 Title: XSH Aardvark Change Request Report Revision Date: 1999-07-28 Source: Andrew Josey, Chair Action: for review This report contains the dispositions of the aardvark comments submitted against the XSH Draft 1. Aardvark Summary Table ______________________ ERN 1 Accept as marked ERN 2 Accept as marked ERN 3 Accept ERN 4 Accept as marked ERN 5 Reject ERN 6 Accept as marked ERN 7 Accept ERN 8 Accept as marked ERN 9 Accept as marked ERN 10 Reject ERN 11 Reject ERN 12 Accept as marked ERN 13 Reject ERN 14 Accept as marked ERN 15 Accept as marked ERN 16 Accept as marked ERN 17 Accept ERN 18 Accept ERN 19 Accept as marked ERN 20 Reject ERN 21 Accept as marked ERN 22 Reject ERN 23 Accept ERN 24 Reject ERN 25 Accept ERN 26 Accept as marked ERN 27 Accept ERN 28 Accept as marked ERN 29 Reject ERN 30 Accept as marked ERN 31 Duplicate of 30 ERN 32 Accept as marked ERN 33 Accept ERN 34 Duplicate of 32 ERN 35 Accept as marked ERN 36 Reject ERN 37 Accept as marked ERN 38 Accept as marked ERN 39 Accept ERN 40 OPEN ERN 41 Accept as marked ERN 42 Accept as marked ERN 43 Accept ERN 44 Accept ERN 45 Accept ERN 46 Accept as marked ERN 47 Accept as marked ERN 48 Accept as marked ERN 49 Accept as marked ERN 50 Accept as marked ERN 51 Reject ERN 52 Accept ERN 53 Accept ERN 54 Accept as marked ERN 55 Accept as marked ERN 56 Accept as marked ERN 57 Accept as marked ERN 58 Accept ERN 59 Accept as marked ERN 60 Accept as marked ERN 61 Reject ERN 62 Accept as marked ERN 63 Reject ERN 64 Accept as marked ERN 65 Accept as marked ERN 66 Accept ERN 67 Reject ERN 68 Accept as marked ERN 69 Accept ERN 70 Accept ERN 71 Accept as marked ERN 72 Reject ERN 73 Reject ERN 74 Reject ERN 75 Reject ERN 76 Accept ERN 77 Reject ERN 78 Accept ERN 79 Accept as marked ERN 80 Accept as marked ERN 81 Accept ERN 82 Accept as marked ERN 83 Reject ERN 84 Duplicate of 85 ERN 85 Accept ERN 86 Reject ERN 87 Accept as marked ERN 88 Accept ERN 89 Accept as marked ERN 90 Accept as marked ERN 91 Reject ERN 92 Accept as marked ERN 93 Reject ERN 94 Accept as marked ERN 95 Accept as marked ERN 96 Accept ERN 97 Accept ERN 98 Duplicate of 99 ERN 99 Accept ERN 100 Accept as marked ERN 101 Reject ERN 102 Accept as marked ERN 103 Accept ERN 104 Accept as marked ERN 105 Accept ERN 106 Accept ERN 107 Accept ERN 108 Accept ERN 109 Reject ERN 110 Reject ERN 111 Accept as marked ERN 112 Reject ERN 113 Accept ERN 114 Accept ERN 115 Accept ERN 116 Accept ERN 117 Accept as marked ERN 118 Accept as marked ERN 119 Accept as marked ERN 120 Accept as marked ERN 121 Reject ERN 122 Accept as marked ERN 123 Accept as marked ERN 124 Accept as marked ERN 125 Accept ERN 126 Accept as marked ERN 127 Reject ERN 128 Reject ERN 129 Accept ERN 130 Reject ERN 131 Accept as marked ERN 132 Reject ERN 133 Accept ERN 134 Accept as marked ERN 135 Accept ERN 136 Accept as marked ERN 137 Accept ERN 138 Accept as marked ERN 139 Accept ERN 140 Accept as marked ERN 141 Accept as marked ERN 142 Accept as marked ERN 143 Reject ERN 144 Accept ERN 145 Reject ERN 146 Accept ERN 147 Accept as marked ERN 148 Accept as marked ERN 149 Accept ERN 150 Accept as marked ERN 151 Accept as marked ERN 152 Accept ERN 153 Accept ERN 154 Accept ERN 155 Accept ERN 156 Accept ERN 157 Accept as marked ERN 158 Reject ERN 159 Reject ERN 160 Accept as marked ERN 161 Reject ERN 162 Accept as marked ERN 163 Accept ERN 164 Accept as marked ERN 165 Accept as marked ERN 166 Reject ERN 167 Reject ERN 168 Accept as marked ERN 169 Accept as marked ERN 170 Accept ERN 171 Accept ERN 172 Accept ERN 173 Accept as marked ERN 174 Reject ERN 175 Accept ERN 176 Accept ERN 177 Reject ERN 178 Reject ERN 179 Reject ERN 180 Accept ERN 181 Reject ERN 182 Accept ERN 183 Accept ERN 184 Accept ERN 185 Accept ERN 186 Accept ERN 187 Accept as marked ERN 188 Accept ERN 189 Accept as marked ERN 190 Accept as marked ERN 191 Accept as marked ERN 192 Accept as marked ERN 193 Accept as marked ERN 194 Accept ERN 195 Duplicate of 196 ERN 196 Accept ERN 197 Accept ERN 198 Accept ERN 199 Accept ERN 200 Reject ERN 201 Accept as marked ERN 202 Accept ERN 203 Accept as marked ERN 204 Accept as marked ERN 205 Reject ERN 206 Reject ERN 207 Accept ERN 208 Accept as marked ERN 209 Accept ERN 210 Accept ERN 211 Accept ERN 212 Accept as marked ERN 213 Reject ERN 214 Accept as marked ERN 215 Accept as marked ERN 216 Accept as marked ERN 217 Accept as marked ERN 218 Accept ERN 219 Accept as marked ERN 220 Accept as marked ERN 221 Accept ERN 222 Accept ERN 223 Accept ERN 224 Accept ERN 225 Accept as marked ERN 226 Accept ERN 227 Accept ERN 228 Accept ERN 229 Accept as marked ERN 230 Accept ERN 231 Accept as marked ERN 232 Accept ERN 233 Reject ERN 234 Accept ERN 235 Accept ERN 236 Accept ERN 237 Accept as marked ERN 238 Accept ERN 239 Reject ERN 240 Reject ERN 241 Accept as marked ERN 242 Accept as marked ERN 243 Accept as marked ERN 244 Accept ERN 245 Accept ERN 246 Accept ERN 247 Accept ERN 248 Duplicate of 247 ERN 249 Reject ERN 250 Accept as marked ERN 251 Accept ERN 252 Accept ERN 253 Reject ERN 254 Accept ERN 255 Accept as marked ERN 256 Duplicate of 257 ERN 257 Accept as marked ERN 258 Accept ERN 259 Accept as marked ERN 260 Accept as marked ERN 261 Reject ERN 262 Accept ERN 263 Accept as marked ERN 264 Accept as marked ERN 265 Accept ERN 266 Accept as marked ERN 267 Reject ERN 268 Reject ERN 269 Reject ERN 270 Accept ERN 271 Accept ERN 272 Accept as marked ERN 273 Accept ERN 274 Accept as marked ERN 275 Duplicate of 274 ERN 276 Accept ERN 277 Accept ERN 278 Reject ERN 279 Accept ERN 280 Accept ERN 281 Accept ERN 282 Accept as marked ERN 283 OPEN ERN 284 Accept as marked ERN 285 Accept as marked ERN 286 OPEN ERN 287 OPEN ERN 288 Accept ERN 289 Accept as marked ERN 290 Accept ERN 291 Accept as marked ERN 292 OPEN ERN 293 Accept ERN 294 Accept as marked ERN 295 Reject ERN 296 Reject ERN 297 Accept as marked ERN 298 OPEN ERN 299 OPEN ERN 300 Accept ERN 301 Accept ERN 302 Accept as marked ERN 303 Accept as marked ERN 304 OPEN ERN 305 Accept ERN 306 OPEN ERN 307 Accept ERN 308 Reject ERN 309 OPEN ERN 310 Accept ERN 311 Accept ERN 312 Accept ERN 313 Reject ERN 314 Accept ERN 315 Accept as marked ERN 316 Reject ERN 317 Accept as marked ERN 318 Accept ERN 319 OPEN ERN 320 Accept ERN 321 Reject ERN 322 Accept ERN 323 Accept ERN 324 Accept ERN 325 OPEN ERN 326 Accept ERN 327 Accept ERN 328 OPEN ERN 329 OPEN ERN 330 OPEN ERN 331 OPEN ERN 332 OPEN ERN 333 Accept as marked ERN 334 OPEN ERN 335 OPEN ERN 336 OPEN ERN 337 OPEN ERN 338 OPEN ERN 339 OPEN ERN 340 Accept ERN 341 OPEN ERN 342 Reject ERN 343 Accept as marked ERN 344 Accept ERN 345 OPEN ERN 346 Accept as marked ERN 347 OPEN ERN 348 Accept as marked ERN 349 Accept ERN 350 Accept ERN 351 Accept as marked ERN 352 Accept ERN 353 OPEN ERN 354 Accept ERN 355 Accept* ERN 356 Accept ERN 357 Accept as marked ERN 358 Reject ERN 359 Accept ERN 360 Accept ERN 361 OPEN ERN 362 Accept ERN 363 OPEN ERN 364 OPEN ERN 365 Accept ERN 366 Duplicate of 365 ERN 367 Accept ERN 368 OPEN ERN 369 Accept as marked ERN 370 Accept ERN 371 Accept ERN 372 OPEN ERN 373 Accept as marked ERN 374 OPEN ERN 375 Accept ERN 376 OPEN ERN 377 Duplicate of 378 ERN 378 Accept ERN 379 Accept ERN 380 Accept as marked ERN 381 Accept ERN 382 Accept ERN 383 Accept ERN 384 Accept as marked ERN 385 Accept ERN 386 OPEN ERN 387 OPEN ERN 388 OPEN ERN 389 Accept ERN 390 Accept as marked ERN 391 OPEN ERN 392 Reject ERN 393 OPEN ERN 394 OPEN ERN 395 OPEN ERN 396 Accept as marked ERN 397 OPEN ERN 398 Accept ERN 399 Accept ERN 400 Accept as marked ERN 401 Reject ERN 402 OPEN ERN 403 OPEN ERN 404 OPEN ERN 405 OPEN ERN 406 Accept ERN 407 Reject ERN 408 Accept ERN 409 OPEN ERN 410 Accept ERN 411 Accept ERN 412 Accept ERN 413 Accept ERN 414 Accept ERN 415 Reject ERN 416 POPEN ERN 417 OPEN ERN 418 OPEN ERN 419 Accept as marked ERN 420 OPEN ERN 421 Accept ERN 422 Accept as marked ERN 423 Accept ERN 424 Accept ERN 425 Accept ERN 426 Accept as marked ERN 427 OPEN ERN 428 Accept as marked ERN 429 Accept as marked ERN 430 Accept as marked ERN 431 OPEN ERN 432 Accept ERN 433 Accept as marked ERN 434 OPEN ERN 435 OPEN ERN 436 OPEN ERN 437 Accept ERN 438 Accept ERN 439 Accept ERN 440 Accept ERN 441 Accept ERN 442 Accept as marked ERN 443 Accept as marked ERN 444 Accept as marked ERN 445 Reject ERN 446 Accept as marked ERN 447 Accept as marked ERN 448 Accept as marked _____________________________________________________________________________ Comment Enhancement Request Number 1 Lee.Damico@eng.sun.com Bug in XSH (rdvk# 438) [LD-XSH-1] Wed, 14 Jul 1999 19:56:42 -0700 (PDT) _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: This was handled as a separate item on the agenda, see the project scheduling. _____________________________________________________________________________ Page: 0 Line: 0 Section: 0 Problem: Circumstances and timing were such that I was unable to dedicate any signicant chunk of time to reviewing this draft as is evident from the comments that follow. However, given the scope of the changes to the merged specifications, even had I had the time, the review period for this initial draft was too short. Action: Increase the review period for the next draft. _____________________________________________________________________________ comment Enhancement Request Number 2 Frank Bug in XSH (rdvk# 4) [prindle.xsh-0] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: This issue as to which version of C to align with has been added to the issues list. _____________________________________________________________________________ Page: all Line: all Section: all Problem: Alignment with ISO C (for functions which also appear in ISO C) is going to be a sticky issue, with ISO for sure, because we hopefully will be getting permission to duplicate these functions here. I don't have an ISO C document handy, so can't check this (and don't really have the energy at this point), but I strongly doubt that every bit of wording that isn't shaded and marked CX is 100% identical to the C standard. I particular, I am having a hard time with the issue of what the C standard specifies as possible values of errno for each function (seems hit-or-miss). To the best of my knowledge, ISO C only specifies EDOM, ERANGE, and EILSEQ errno values, and even then, some functions may set one or more of these into errno on error, and some are required to do so. So anywhere in the document that any other error NAME appears without CX shading is highly suspect, either in the ERRORS section or elsewhere. Several ANSI C references (I do have access to) provide spotty references to undefined errno values falling out of certain functions (ftell() for example: On failure, the ftell function returns -1L and stores an implementation- defined positive value in errno.) Another anomaly is that fseek(), ftell(), and ungetc() in ISO C surely have special caveats in their semantics about binary vs. text files which do not survive here (because text files in conforming systems are treated the same as binary files), yet the absence of those caveats is not marked in any way. Code which assumes these functions work the same on text files is portable to other UNIX branded systems, but certainly isn't portable to all C implementations, and may not be portable to all POSIX implementations (in other words, perhaps the restrictions/caveats ought to come back as normative). In general, even minor wording differences (not marked CX) are going to cause problems with ISO. A spot check of fsetpos() (with my references, which may not exactly track the standard) shows a couple of minor wording differences, including a "shall" that got changed to a "must" and a different description of what was stored in errno. Another example: in qsort(), we use different names for the arguments from ISO C (at least based on my references). Another example: in longjmp(), discussions about calls being in the same thread are clearly not from ISO C. Action: Before the next draft, it would be advisable to go through every ISO C function and header and "strictly" align it with ISO C (all unshaded text exactly as in ISO C, and all text not exactly as in ISO C shaded - deleted text shaded with strike through). I think that is the only way ISO will even think of allowing us to describe these functions in their entirety here. For the time being, see my other objections and comments where I think I may have identified specific instances of departure from correct alignment (but surely haven't caught them all, and may have done some incorrectly). ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 3 Lee.Damico@eng.sun.com Bug in XSH (rdvk# 439) [LD-XSH-2] Wed, 14 Jul 1999 19:56:42 -0700 (PDT) _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: x Line: 247-249 Section: This Problem: The "Issue" reference for XBD, XCU, and XSH is incorrect. Action: Change Issue 5 to Issue 6. _____________________________________________________________________________ Editorial Enhancement Request Number 4 Lee.Damico@eng.sun.com Bug in XSH (rdvk# 440) [LD-XSH-3] Wed, 14 Jul 1999 19:56:42 -0700 (PDT) _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: A reviewers note will be added to the next draft asking for specific wording changes. _____________________________________________________________________________ Page: 1-2 Line: 22-44 Section: 1.1 Problem: The scope is too realtime and threads specific. While this was appropriate for the POSIX.1-1996 specification which was the source of this text, the newly merged XSH covers much more. Action: Update the scope to include other major areas of coverage in XSH. _____________________________________________________________________________ Comment Enhancement Request Number 5 donn@interix.com BUG in XSH (rdvk# 244) [DT-XSH-1] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: We agree that in general definitions do belong in XBD, but we disagree with this specific case - the wording is the same as per .1-1996 and is setting up scope specific definitions _____________________________________________________________________________ Page: 1 Line: 27, Section: 1.1 Problem: Do the definitions of "realtime" and "threads" belong in XBD? Action: Move them there. Since this is really a single document, just put them in XBD. (Note... I have other comments below in the same direction.) (In general, I'd prefer to see definitions in one place, so I know where to look for them, and given the proposed model for the document as a whole, I think that that makes sense.) _____________________________________________________________________________ Objection Enhancement Request Number 6 donn@interix.com BUG in XSH (rdvk# 245) [DT-XSH-2] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: For the next draft we will enable rationale bars on the change history front matter to make it clear _____________________________________________________________________________ Page: 4-5 Line: 87-226 Section: 1.3 Problem: This is rationale, not normative. Action: Move to/mark as non-normative text. (It may be that after editing, this will happen naturally, but just to be sure.) Hold as an open objection until style is resolved. _____________________________________________________________________________ Editorial Enhancement Request Number 7 Lee.Damico@eng.sun.com Bug in XSH (rdvk# 441) [LD-XSH-4] Wed, 14 Jul 1999 19:56:42 -0700 (PDT) _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 6-7 Line: 171-213 Section: 1.3.3 Problem: Table is split across pages. Action: Keep table on a single page. _____________________________________________________________________________ Editorial Enhancement Request Number 8 Lee.Damico@eng.sun.com Bug in XSH (rdvk# 442) [LD-XSH-5] Wed, 14 Jul 1999 19:56:42 -0700 (PDT) _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Change "capability is" -> "requirements are" _____________________________________________________________________________ Page: 7 Line: 217-220 Section: 1.3.4 Problem: What is the "POSIX System Interfaces capability"? Why not refer to this as the {_POSIX_BASE} option or POSIX Systems Interface Conformance as used elsewhere in the document? Action: Substitute "capability" for "conformance" or even "requirements", or change to use {_POSIX_BASE} option. _____________________________________________________________________________ Objection Enhancement Request Number 9 donn@interix.com BUG in XSH (rdvk# 246) [DT-XSH-3] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Change line 228 to: The following terms used are copied from XBD and included here for reference. _____________________________________________________________________________ Page: 8-9 Line: 227-279 Section: 1.4 Problem: This is a repeat of the text in XBD; even if they're supposed to be identical, one should explicitly defer to or refer to the other. Since XBD is the right place... Action: Refer to XBD for this. (Or just remove from here, relying on XBD for all such text.) _____________________________________________________________________________ Editorial Enhancement Request Number 10 Lee.Damico@eng.sun.com Bug in XSH (rdvk# 443) [LD-XSH-6] Wed, 14 Jul 1999 19:56:42 -0700 (PDT) _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: The group felt that the existing text is ok as is and the change would not improve it. _____________________________________________________________________________ Page: 8 Line: 235 Section: 1.4 Problem: I know what the sentence means but it still seems a bit odd on first reading how something that is not defined can be selected. Action: Remove the part of the sentence that reads "but is selected by an implementation". It is not needed in the context of the rest of the definition. _____________________________________________________________________________ Objection Enhancement Request Number 11 donn@interix.com BUG in XSH (rdvk# 247) [DT-XSH-4] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: Not true, shading is needed for XSI extensions. Style will be addressed elsewhere under a separate agenda item _____________________________________________________________________________ Page: 12 Line: 299 Section: 1.7 Problem: Now that this paragraph is self-referential, it's truly nonsensical. Action: Delete. Note: I suspect that the only base standard that will need this sort of shaded text treatment is the C standard. In all other cases, the feature is either in or out of this document. I'm tempted to suggest reversal of the code: shaded text is copied from some other standard, and defers to that other standard; non-shaded text is normative in this standard. As an issue of style, I suspect that ISO will have problems with the import of a statement varying with such extremely typographic features as shading, particularly within a single sentence. That's another issue to add to the style list. (We should talk separately about some other mechanism besides shading: it pushes the limits of some printers.) _____________________________________________________________________________ objection Enhancement Request Number 12 Frank Bug in XSH (rdvk# 5) [prindle.xsh-1] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: This will be handled as per the XBD, there will be one single set of codes. _____________________________________________________________________________ Page: 12 Line: 306-330 Section: 1.7.1 Problem: The set of codes documented here differ from the sets of codes documented in the corresponding section of XBD. I would expect XBD to be the official document defining all codes, with these repeated verbatim here only for convenience. Action: Move all codes which apply to XSH into XBD. Optionally, for convenience of the reader, include the exact same code descriptions here, indicating that these are identical to those in XBD and reproduced for convenience; it is permissible to omit codes here which do not appear in XSH, though I suspect this would be more trouble than it is worth (in keeping the docs sync'ed). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 13 Frank Bug in XSH (rdvk# 17) [prindle.xsh-13] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: XSI is being used for X/Open System Interface extension _____________________________________________________________________________ Page: 12 Line: 313-314 Section: 1.7.1 Problem: The XSI code (formerly EX) is used extensively to highlight extensions to both POSIX and ISO C. I suggest it only be used to mark extensions to POSIX, while CX be used exclusively to mark extensions to ISO C. This will alleviate a lot of confusion later on. This sentence is incorrect as it stands. Also, what does XSI stand for, anyway. I preferred the EX; changing it to UX makes more sense than XSI, unless XSI stands for something really profound. Action: Delete the sentence "Functionality...ISO C standard." Use a meaningful margin code instead of XSI, and restrict the use of this code to extensions to the approved POSIX functionality, not for extensions to ISO C. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 14 donn@interix.com BUG in XSH (rdvk# 248) [DT-XSH-5] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Should be updated to be "XSI conformant" on line 329, delete the rest as Donn suggests. _____________________________________________________________________________ Page: 12 Line: 330 Section: 1.7 Problem: "certain formal standards". I presume this now becomes self-referential and is meaningless. If it does have a meaning, the citation should be specific, not hand-wavy. Action: Delete _____________________________________________________________________________ Comment Enhancement Request Number 15 donn@interix.com BUG in XSH (rdvk# 249) [DT-XSH-6] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: This is added to the issues list, so it can be recorded _____________________________________________________________________________ Page: 13 Line: 359 Section: 1.8 Problem: Putting normative text in Application Usage sections, as is reflected by a number of Change History sections, is a particularly easy trap to fall into. Be very careful that normative material does not slip into these sections. (A separate review pass is probably indicated as the document nears completion.) Action: Record action item for near the end: review A.U. sections for normative text. _____________________________________________________________________________ Comment Enhancement Request Number 16 Lee.Damico@eng.sun.com Bug in XSH (rdvk# 444) [LD-XSH-7] Wed, 14 Jul 1999 19:56:42 -0700 (PDT) _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Change "The system shall support all required functions defined within this document that are described by the {_POSIX_BASE} option" (see section 2.1.3 on page 16)" to "The system shall support all functions defined within this document that are required for POSIX System Interfaces Conformance (see section 2.1.3 on page 16)". _____________________________________________________________________________ Page: 15 Line: 381 Section: 2.1.1 Problem: I find the reference to {_POSIX_BASE} option a bit confusing since it's never really defined as best I can tell. In section 2.1.3 (POSIX System Interfaces Conformance, it is stated that {_POSIX_BASE} shall be set to something other than -1 implying that POSIX System Interfaces conformance and the {_POSIX_BASE} option are the same, but for the uninitiated, this may be a bit confusing. Action: Change "The system shall support all required functions defined within this document that are described by the {_POSIX_BASE} option" (see section 2.1.3 on page 16)" to "The system shall support all functions defined within this document that are required for POSIX System Interfaces Conformance (see section 2.1.3 on page 16)". Or more clearly define the {_POSIX_BASE} option. _____________________________________________________________________________ Comment Enhancement Request Number 17 Lee.Damico@eng.sun.com Bug in XSH (rdvk# 445) [LD-XSH-8] Wed, 14 Jul 1999 19:56:42 -0700 (PDT) _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 15 Line: 391 Section: 2.1.1 Problem: Reference is made to a Strictly Conforming POSIX System Interfaces Application before the term is defined. Action: Add a reference to section 2.2.1 for the definition. _____________________________________________________________________________ Editorial Enhancement Request Number 18 Lee.Damico@eng.sun.com Bug in XSH (rdvk# 446) [LD-XSH-9] Wed, 14 Jul 1999 19:56:42 -0700 (PDT) _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 16 Line: 426-427 Section: 2.1.3 Problem: The sentence on lines 426 and 427, when considered in the context of the sentence on lines 445 an 446, implies that the option groups listed on lines 428-441 are not part of the Profiling Option groups when in fact they are. Action: Change "reflecting mandatory Option Groups..." to "reflecting mandatory Profiling Option Groups..." _____________________________________________________________________________ Comment Enhancement Request Number 19 donn@interix.com BUG in XSH (rdvk# 250) [DT-XSH-7] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete 442-444 look for NGROUPS_MAX within the text and insure if has a min value of 8 _____________________________________________________________________________ Page: 16 Line: 443-444 Section: 2.1.3 Problem: This is "self-profiling", which is sort of strange. Action: Make these simply mandatory. _____________________________________________________________________________ Objection Enhancement Request Number 20 donn@interix.com BUG in XSH (rdvk# 251) [DT-XSH-8] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the scope of the project is producing both an IEEE POSIX standards and The Open Group technical standard , so this is more than just a POSIX document. _____________________________________________________________________________ Page: 18 Line: 493 Section: 2.1.4 Problem: Presumably, this whole section simply becomes required features, and the section disappears. (Although individual parts might not make it.) Action: Action item: each XSI should be examined, and either made mandatory, a feature based upon some other option, or deleted. (I'm aware of the intent that XSI means "SUS extension to POSIX" to be published in the POSIX document". Whether that will happen remains to be seen.) _____________________________________________________________________________ Comment Enhancement Request Number 21 donn@interix.com BUG in XSH (rdvk# 252) [DT-XSH-9] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Take option 1 below _____________________________________________________________________________ Page: 21 Line: 626 Section: 2.1.5.2 Problem: The language here is, well, strange. Action: "shall be defined by the implementation". Or "...shall be defined". Personally, I think that making these implementation defined (and thus in the PCD) would be a good thing, so "...are implementation defined" would be even better. _____________________________________________________________________________ Editorial Enhancement Request Number 22 Lee.Damico@eng.sun.com Bug in XSH (rdvk# 447) [LD-XSH-10] Wed, 14 Jul 1999 19:56:42 -0700 (PDT) _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: This wording is from existing POSIX.1 and no better wording has been suggested. _____________________________________________________________________________ Page: 23 Line: 693-696 Section: 2.1.6 Problem: It's not clear what this statement is saying, specifically, the part of the sentence that reads "...reflect implementation options for this document that could warrant requirement by Conforming POSIX System Interfaces Applications, or in specifications of conforming systems, or both. Action: Clarify. I assume that what is being said, that though these are "Options", some of these will be required for POSIX System Interfaces Conformance. I'm not sure what requirement there is on the application. _____________________________________________________________________________ objection Enhancement Request Number 23 Frank Bug in XSH (rdvk# 6) [prindle.xsh-2] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 23-26 Line: 697-843 Section: 2.1.6 Problem: While I don't object to listing these options here, the margin codes used here have not been defined as to their meaning as margin codes. It would be best if one did not have to look in multiple places for codes, but that ALL codes be introduced in XBD section 1.3 (1.3.1?) Codes. Action: List and describe in section 1.3 (perhaps 1.3.1, since a level of section numbering seems to be missing there) all codes for specific XSH options, thereby creating a master reference for margin codes. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 24 donn@interix.com BUG in XSH (rdvk# 253) [DT-XSH-10] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: Required for XSI _____________________________________________________________________________ Page: 28 Line: 897 Section: 2.2.4 Problem: Remove section (and 2.2.5). There's no new class of conformance defined here, since this will be POSIX. (For the record...) Action: Remove. _____________________________________________________________________________ Objection Enhancement Request Number 25 donn@interix.com BUG in XSH (rdvk# 254) [DT-XSH-11] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: accept, leave as is, remove reviewers note on l929 _____________________________________________________________________________ Page: 30 Line: 931 Section: 2.4 Problem: To answer the question: no. We need to retain this wording in POSIX to avoid certain classes of toy (or useless) implementations: those that use a crippled linker that can handle only (e.g.) 6 character monocase identifiers. (If the C standard were to insist that a decent linker be used, then we could drop this.) There is just too much code in non-C languages that assumes a decent linker to consider programs limited old linkers as portable. (Otherwise, for a (e.g.) Fortran program to be POSIX conforming and portable, it would have to be have all (external) identifiers as 6 character monocase, which would be pretty onerous in today's world. (It would also require recasting all the identifiers in this document (when used from Fortran) to 6 character monocase. That would be painful.)) Action: Leave as is. _____________________________________________________________________________ Objection Enhancement Request Number 26 donn@interix.com BUG in XSH (rdvk# 255) [DT-XSH-12] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete line 979-981 _____________________________________________________________________________ Page: 32 Line: 979 Section: 3.1 Problem: This would force the "one header per function" rule on POSIX. I'm of mixed mind about that, and this needs to be discussed. Action: Arrive at a consensus for POSIX (not TOG) and implement that. If the consensus is to require multiple headers, fix the individual pages. _____________________________________________________________________________ Editorial Enhancement Request Number 27 donn@interix.com BUG in XSH (rdvk# 256) [DT-XSH-13] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 33 Line: 989 Section: 3.2 Problem: Spelling. Action: "headerin" -> "header in" _____________________________________________________________________________ Objection Enhancement Request Number 28 donn@interix.com BUG in XSH (rdvk# 257) [DT-XSH-14] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: mark as XSI specific, add text on how to compile a POSIX application _____________________________________________________________________________ Page: 33 Line: 994 Section: 3.2 Problem: Delete refs to X/Open and XOPEN_SOURCE; this is POSIX. Action: Delete. (Or if it becomes possible to mix SUS and POSIX in a single document, mark as SUS specific.) _____________________________________________________________________________ Editorial Enhancement Request Number 29 donn@interix.com BUG in XSH (rdvk# 258) [DT-XSH-15] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: See l 1012 _____________________________________________________________________________ Page: 33 Line: 1012 Section: 3.2.1 Problem: English problem (probably exacerbated in possible translations). Action: "reserved for use" -> "reserved for implementations" or "reserved to the implementation" (in several places). Yes, I realize that the first sentence says that, but the numbered sentences could be clearer. _____________________________________________________________________________ comment Enhancement Request Number 30 Frank Bug in XSH (rdvk# 7) [prindle.xsh-3] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Add nice() and mrand48() , add reviewers note for this to be checked. _____________________________________________________________________________ Page: 37 Line: 1155-1180 Section: 3.2 Problem: I suspect that line 1183 is a true statement; however, the table, as shown, is incomplete. Assuming it is supposed to list all the XSI marked function names, it certainly has missed some, for example, nice() and mrand48(). Action: Delete the table. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 31 donn@interix.com BUG in XSH (rdvk# 259) [DT-XSH-16] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_of_30 Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 37 Line: 1183 Section: 3.2.1 Problem: To answer the question: yes the table *can* be removed because the normative text covers it. However, like the similar Annex in the -1990 POSIX, such tables are very useful, so retaining them (and keeping them current) as rationale is still useful. Action: Move to rationale, but keep. _____________________________________________________________________________ objection Enhancement Request Number 32 Frank Bug in XSH (rdvk# 9) [prindle.xsh-5] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: A reviewers note will be added in the next draft to make the MAN marking more obvious _____________________________________________________________________________ Page: 37 Line: 1191 Section: 3.2 Problem: This is the first instance of the use of margin code MAN. It appears extensively throughout XBD and XCU as well as XSH. It is not defined in the codes or options sections of any of these documents (it is defined in reviewers notes, but this is not normative, nor part of this document). Action: Define the meaning of margin code MAN in the codes section of 1.3. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 33 donn@interix.com BUG in XSH (rdvk# 260) [DT-XSH-17] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: do -> shall 1217 does > shall 1222 _____________________________________________________________________________ Page: 38 Line: 1216,1222 Section: 3.3 Problem: These uses of "do" and "does" are particularly weak, as they sound more like observations than requirements: use shall. Action: Use shall. _____________________________________________________________________________ Objection Enhancement Request Number 34 donn@interix.com BUG in XSH (rdvk# 261) [DT-XSH-18] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_of_32 Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 38 Line: 1227 Section: 3.3 "MAN" is undefined; if I read it correctly, this means "mandatory extension", which is fine, and I hope that these will be edited into simple normative text. However, if I misunderstand the notation... Action: Get rid if it (probably by making it all normative). _____________________________________________________________________________ objection Enhancement Request Number 35 Frank Bug in XSH (rdvk# 180) [prindle.xsh-176] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Copy the strfmon() wording for these _____________________________________________________________________________ Page: 38 Line: 1229-1232 Section: 3.3 Problem: See also page 1245 line 37908 section . In addition to the description given here, this error is used in at least 2 other situations: 1. Lack of room in an output buffer (e.g.: strfmon()). 2. argument exceeding a system defined limit (e.g.: semop()) Action: Add two other definitions for this error number corresponding to the other uses. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 36 Lee.Damico@eng.sun.com Bug in XSH (rdvk# 448) [LD-XSH-11] Wed, 14 Jul 1999 19:56:42 -0700 (PDT) _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 38-44 Line: 1229-1483 Section: 3.3 Problem: The error description format in both the current XSH and POSIX specifications has the summary description on it's own line, followed by the more detailed description on the line below that. Action: Restore format as per current released specifications. _____________________________________________________________________________ objection Enhancement Request Number 37 Frank Bug in XSH (rdvk# 10) [prindle.xsh-6] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: errors will be combined rather than having multiple definitions of the same error _____________________________________________________________________________ Page: 40 Line: 1414 Section: 3.3 Problem: It is not clear why this error should be shaded in this way (given that MAN is an undefined code, but that it clearly must mean something, and in general in this section seems to mean that the error is generated by a function from XNS). Other error numbers to which this objection applies: EINPROGRESS (1st of 2) EINTR EINVAL ETIMEDOUT (2nd of 2) Action: Eliminate shading and margin code for this error, retaining an appropriate margin code and shading for the phrase "or offset maximum...description." if this is from an extension or optional interface (appears to be XSI???). For other 4 errors, remove shading and margin code. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 38 Frank Bug in XSH (rdvk# 8) [prindle.xsh-4] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: this is a troff error, EMULTIHOP belongs here _____________________________________________________________________________ Page: 41 Line: 1345-1346 Section: 3.3 Problem: The shading, shaded text, and margin code do not appear to belong here. Other error numbers to which this editorial comment applies: EMSGSIZE (2nd of 2) Action: Remove the margin code and the shaded text "Reserved" here and on the second EMSGSIZE. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 39 Frank Bug in XSH (rdvk# 11) [prindle.xsh-7] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 41 Line: 1362-1363 Section: 3.3 Problem: If EBADMSG was shaded and marked XSI, then ENODATA should be too. Action: Shade and mark this error number as XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 40 donn@interix.com BUG in XSH (rdvk# 262) [DT-XSH-19] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: action: refer to OGTGbase _____________________________________________________________________________ Page: 45 Line: 1520 Section: 3.4 Problem: How is stderr opened: input only (not likely), output only (of course) or both (there's the rub)? Action: My preference: "stderr is opened for input and output, although it is expected that under normal circumstances it will not be used for input". I'm OK with "stderr is opened for output. Implementations may open it for input as well, but a conforming application should not expect that." _____________________________________________________________________________ Objection Enhancement Request Number 41 donn@interix.com BUG in XSH (rdvk# 264) [DT-XSH-21] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: crib wording from posix, section 8.2.3 p 213 l 346 (~l298) _____________________________________________________________________________ Page: 46 Line: 1525-... Section: 3.4.1 Problem: It appears the definition of "underlying function" disappeared somewhere (or did I just miss it). Action: Crib from current POSIX. The real reason for "underlying function" references is to assure that as those functions may change, the change to stdio is handled automatically. _____________________________________________________________________________ Editorial Enhancement Request Number 42 donn@interix.com BUG in XSH (rdvk# 263) [DT-XSH-20] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: A reviewers note will be added in the next draft , giving the alternate wording below, so that the reviewers can take a choice _____________________________________________________________________________ Page: 46 Line: 1534 Section: 3.4.1 Problem: "This exception does not include" is somewhat ambiguous. Action: "As an exception to the exception, the file descriptor underlying a stream is not considered a handle, whether..." _____________________________________________________________________________ Objection Enhancement Request Number 43 donn@interix.com BUG in XSH (rdvk# 265) [DT-XSH-22] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 47 Line: 1586 Section: 3.4.1 Problem: Another wimpy observation that should be a requirement. Action: "implementations shall ensure that an application...". _____________________________________________________________________________ editorial Enhancement Request Number 44 Frank Bug in XSH (rdvk# 12) [prindle.xsh-8] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 51 Line: 1718-1723 Section: 3.6 Problem: The table is chopped off at the bottom. Action: Fix formatting so that whole table shows. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 45 Frank Bug in XSH (rdvk# 13) [prindle.xsh-9] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 51 Line: 1724-1725 Section: 3.6 Problem: The referenced functions are not XSI extensions, they are realtime options. Action: Remove "XSI" from this sentence. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 46 Frank Bug in XSH (rdvk# 14) [prindle.xsh-10] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Action on Frank to help with the shading. Delete "For the definition of realtime.." _____________________________________________________________________________ Page: 53-60 Line: 1763-2076 Section: 3.7 Problem: There is a curious mix of ways of denoting optional functionality in this section. Mostly, the section relies on "xxx is dependent on option yyy" text. But the memory management subsection 3.7.3 suffers from this when it says "Memory management is dependent on support of the Mapped Files option." because clearly it is dependent on any of a number of options (at least 4) in various ways; later in this subsection, the Shared Memory option is introduced using shading, as is the Memory Protection option. The Process Memory Locking and Range Memory Locking options are not addressed. Action: Since shading seems necessary in 3.7.3, use shading and margin markers throughout section to denote which option various text is dependent upon, eliminating the intro sentences. Since 3.7.3 does not address MLR or ML options, add these shadings where appropriate. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 47 donn@interix.com BUG in XSH (rdvk# 266) [DT-XSH-23] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: take the bulleted list, move to XBD. simplify the existing bullet list remaining here, "Semaphores, as defined in XBD section 2.x.x.x" _____________________________________________________________________________ Page: 53 Line: 1789-1797 Section: 3.7 Problem: These are definitions. They belong in the definitions section of the main volume. Action: Move to XBD. See prior comments on use of XBD. _____________________________________________________________________________ Objection Enhancement Request Number 48 donn@interix.com BUG in XSH (rdvk# 267) [DT-XSH-24] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: change "Extended signal" -> "Realtime signal" on l 1799 & 1798 _____________________________________________________________________________ Page: 53 Line: 1799 Section: 3.7 Problem: Not all signal generation, just extended. Action: "Signal generation and delivery" -> "Extended signal generation and delivery" (or something even more descriptive.) _____________________________________________________________________________ Editorial Enhancement Request Number 49 donn@interix.com BUG in XSH (rdvk# 268) [DT-XSH-25] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: We'll insert the wording that Donn provides, if any, as a reviewers note for the next draft. _____________________________________________________________________________ Page: 57 Line: 1941 Section: 3.7.3 Problem: This text is very choppy and hard to follow. Action: If others agree, I'll take an Action Item to try and improve it. _____________________________________________________________________________ Objection Enhancement Request Number 50 donn@interix.com BUG in XSH (rdvk# 269) [DT-XSH-26] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: accept as below, but the line reference is line 57 _____________________________________________________________________________ Page: 59 Line: 1969 Section: 3.7.4 Problem: Anathema: "may not" Action: "may or may not" -> "may but need not" _____________________________________________________________________________ Objection Enhancement Request Number 51 donn@interix.com BUG in XSH (rdvk# 270) [DT-XSH-27] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the wording at the moment is taken verbatim from .1, if thought to be incorrect an interpretation request should be filed. _____________________________________________________________________________ Page: 60 Line: 2071 Section: 3.7.5 Problem: Garbled so as to be at best wrong. As it stands, it sets a ceiling, not a floor, on the precision of the clock. Action: "The maximum allowable resolution" -> "The minimum allowable resolution" or "The maximum allowable interval". _____________________________________________________________________________ objection Enhancement Request Number 52 Frank Bug in XSH (rdvk# 96) [prindle.xsh-92] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 62-63 Line: 2155-2167 Section: 3.8.2 Problem: Function crypt() is missing from this table. Action: Add crypt() to the list of non thread-safe functions. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 53 Frank Bug in XSH (rdvk# 95) [prindle.xsh-91] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 62-63 Line: 2155-2167 Section: 3.8.2 Problem: See also line 2357,39212,40342,40394. Functions gamma() and getw() are not in this standard and should not be referenced here. Action: Delete references to gamma() and getw() wherever they appear. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 54 Frank Bug in XSH (rdvk# 218) [prindle.xsh-214] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: add after this line: "The wcrtomb() and wcsrtombs() functions need not be thread safe if passed a NULL ps argument." Also, add the other functions wcstombs() and wctomb() to the first (unshaded) table above. _____________________________________________________________________________ Page: 63 Line: 2169 Section: 3.8.2 Problem: The functions wcrtomb() and wcsrtombs() also may not be thread safe if they are passed a NULL ps argument (depends on the resolution of [prindle.xsh-213]). Action: If these functions are determined not to be thread safe, add after this line: "The wcrtomb() and wcsrtombs() functions need not be thread safe if passed a NULL ps argument." Also, add the other functions wcstombs() and wctomb() to the first (unshaded) table above. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 55 Frank Bug in XSH (rdvk# 97) [prindle.xsh-93] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete line 2170 _____________________________________________________________________________ Page: 63 Line: 2170 Section: 3.8.2 Problem: This is a sweeping generalization that applied to a former draft, but I don't see how it applies to the current draft. The only LEGACY functions which are inherently likely to be implemented as non-reentrant are already in the list above. Also, the other legacy functions (not in the list above) do not have words in their description that permit them to be non-reentrant (this paragraph and individual function descriptions need to be kept consistent). Action: Either delete this line (preferrable solution), or add the "non-reentrant, not thread safe" disclaimer to the DESCRIPTION section of each of the following LEGACY functions: bcmp(), bcopy(), bzero(), ftime(), getwd(), index(), mktemp(), rindex(), utimes(). ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 56 donn@interix.com BUG in XSH (rdvk# 271) [DT-XSH-28] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: the whole section 3.8.4 is rationale _____________________________________________________________________________ Page: 63 Line: 2183 Section: 3.8.4 Problem: This appears to be rationale, marked as a MAN extension. Action: Extract anything normative, and move the rest to rationale. _____________________________________________________________________________ objection Enhancement Request Number 57 Frank Bug in XSH (rdvk# 242) [prindle.xsh-238] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: add "as defined in pthread.h" _____________________________________________________________________________ Page: 66 Line: 2324-2335 Section: 3.8.9.1 Problem: Where are PTHREAD_CANCEL_DISABLE, PTHREAD_CANCEL_ENABLE, PTHREAD_CANCEL_ASYNCHRONOUS, and PTHREAD_CANCEL_DEFERRED defined? This is a P1003.1n issue. Action: Clarify they are defined in . Shade and mark MAN. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 58 Frank Bug in XSH (rdvk# 98) [prindle.xsh-94] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 68 Line: 2380 Section: 3.8.9.2 Problem: See also line 40352,40394. Function putw() is not in this standard and should not be referenced here. Action: Delete references to putw() wherever they appear. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 59 Frank Bug in XSH (rdvk# 243) [prindle.xsh-239] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Change "asynchronous cancelation request" to "cancelation request". _____________________________________________________________________________ Page: 68 Line: 2391 Section: 3.8.9.2 Problem: The standard does not define "asynchronous cancelation request". The distinction between asynchronous and deferred applies only to the cancelability state, not to requests. This is a P1003.1n issue. Action: Change "asynchronous cancelation request" to "cancelation request". Shade and mark MAN. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 60 donn@interix.com BUG in XSH (rdvk# 272) [DT-XSH-29] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: leave as an XSI extension, remove the reviewers note _____________________________________________________________________________ Page: 76 Line: 2524 Section: Problem: (This is the first of several such objections, so I'll be longer here than elsewhere.) There are a number of functions introduced into the X/Open (and/or TOG) documents that were carefully considered and discarded in the original POSIX work as (excessively) redundant, dangerous, negative contributions to program portability, or the like. They appear to have crept back in to this document through the TOG draft, and again need to be discarded. There's little benefit in including antiquated, dangerous, or non-portable functions in a standard. All it does is make programs that aren't really that portable LOOK portable, without being particularly portable. This function, not even marked legacy, is one such function. Action: Delete section. _____________________________________________________________________________ Comment Enhancement Request Number 61 donn@interix.com BUG in XSH (rdvk# 273) [DT-XSH-30] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: This was rejected as the proposed change is architecture specific _____________________________________________________________________________ Page: 81 Line: 2670 Section: a64l Problem: Be more precise; the current English adds nothing. Action: "is in the low-order 32 bits" -> "==x&0xffffffff". _____________________________________________________________________________ objection Enhancement Request Number 62 Frank Bug in XSH (rdvk# 16) [prindle.xsh-12] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: msg catalog descriptors should have stayed as an XSI extension (action: on AJ to check elsewhere) _____________________________________________________________________________ Page: 83 Line: 2693-2695 Section: abort() Problem: See also page 89, line 2969. See also page 175, line 5445-5447,5451,5453. See also page 250. NO ADDITIONAL PAGES WILL BE REPORTED HERE, BUT THIS REQUIRES A GLOBAL FIX. I cannot see how the reader should differentiate between margin code CX and margin code XSI. In these lines (marked CX) are extensions relating to fclose() [from POSIX] and extensions relating to message catalog descriptors [from UNIX]. It would appear that the latter extensions should be marked XSI to be consistent with such markings on page 89, line 2869. Similarly, the extensions on lines 2697-2698 and 3732-3733 do not appear to come from POSIX, yet they are marked CX. Also, see the curious mix of CX, XSI, and MAN on page 250, 266, etal. Action: Use CX margin code for all extensions to ANSI-C, regardless whether they came from POSIX or UNIX specs. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 63 donn@interix.com BUG in XSH (rdvk# 274) [DT-XSH-31] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: This is rejected since Application Usage is informative _____________________________________________________________________________ Page: 83 Line: 2702 Section: abort Problem: The observation about core files... if it's simply intended as an observation that's fine. However, this is potentially normative text, and is clearly phrased as normative text. Action: Either "a core dump may be produced" -> "some implementations produce core dumps", or move to a normative section. _____________________________________________________________________________ objection Enhancement Request Number 64 Frank Bug in XSH (rdvk# 15) [prindle.xsh-11] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: The Man margin code will be added to the codes section as a reviewers note for the next draft. _____________________________________________________________________________ Page: 86 Line: 2787,2797-2800 Section: access() Problem: I reiterate as in prindle.xsh-5 that I have no clue what the margin designation MAN means. Here, MAN appears on each of the three error codes mentioned, one of which is mandatory and the other two of which are optional. So clearly, MAN has nothing to do with mandatory errors. Nor can I tell from the context of the particular error descriptions what the designation is supposed to mean. The best clue is perhaps on lines 2249-2250, but how is this different from XSI? Action: Define the meaning of margin code MAN in the codes section of 1.3. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 65 Frank Bug in XSH (rdvk# 237) [prindle.xsh-233] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Add fdatasync() to the lists, as aio_fsync() may use either fsync() or fdatasync(). Shade and mark fdatasync() with margin code SIO _____________________________________________________________________________ Page: 95 Line: 3000,3005 Section: aio Problem: The function fdatasync() needs to be in these lists. This is a P1003.1n issue. Action: Add fdatasync() to the lists, as aio_fsync() may use either fsync() or fdatasync(). Shade and mark fdatasync() with margin code SIO|MAN. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 66 Frank Bug in XSH (rdvk# 239) [prindle.xsh-235] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 96 Line: 3065-3066 Section: aio Problem: This is a meaningless requirement. Remove it. This is a P1003.1n issue. Action: Delete these lines. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 67 donn@interix.com BUG in XSH (rdvk# 275) [DT-XSH-32] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: This is explicitly undefined. _____________________________________________________________________________ Page: 101 Line: 3208 Section: aio Problem: There's no explicit indicator that aio_return has been called with no status ready to retrieve. Action: Either: 1) Application usage section says how it should be coded to be sure that it doesn't return garbage. 2) Define a result that says it isn't ready. I slightly prefer the latter, but there may be good reasons for the former, which belong in the rationale. _____________________________________________________________________________ objection Enhancement Request Number 68 Frank Bug in XSH (rdvk# 238) [prindle.xsh-234] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Change "fails" to "may fail" _____________________________________________________________________________ Page: 101 Line: 3210 Section: aio Problem: This error code should be a may fail situation. Notice that it says this on line 3202. This is a P1003.1n issue. Action: Change "fails" to "may fail". Shade and mark MAN. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 69 Frank Bug in XSH (rdvk# 18) [prindle.xsh-14] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 104 Line: 3294-3296 Section: aio Problem: There is a slight screw-up in the shading and margin marking - the PIO marking appears to start one line too early. Action: Fix this to be like aio_read(). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 70 Frank Bug in XSH (rdvk# 19) [prindle.xsh-15] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 109 Line: 3483-3485 Section: asctime() Problem: This problem is right out of POSIX.1 - the format of the string returned by asctime_r() is not specified (i.e. any string would be conforming). Action: Replace "into a string" with "into a string (of the same form as that returned by asctime())" ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 71 Frank Bug in XSH (rdvk# 42) [prindle.xsh-38] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: ERANGE is defined in ISO C , so there is no action required. _____________________________________________________________________________ Page: 116 Line: 3642 Section: atan() Problem: See also asin(), atan2(), ceil(), cos(), fabs(), floor(), fmod(), sin(), tan(). Unfortunately, I don't have an ISO C handy, but do have several references to ANSI C. Are you sure ERANGE is an error defined for asin(), atan(), atan2(), ceil(), cos(), fabs(), floor(), fmod(), sin(), and tan() in ISO C? My references show ERANGE errors for some other functions (such as cosh() and exp()), but not these. Also, one ISO C reference I have says (regarding math function errors): "On a domain error, the function returns an implementation-defined value; whether the integer expression errno acquires the value EDOM is implementation-defined." Action: If ERANGE is defined for these functions in ISO C, I stand corrected. If not, shade these occurences of ERANGE as CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 72 donn@interix.com BUG in XSH (rdvk# 276) [DT-XSH-33] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: The wording aligns with that in ISO C _____________________________________________________________________________ Page: 121 Line: 3727 Section: atexit Problem: Garbled. Action: "The atexit() function registers the function func (which will be called without arguments) to be called at normal process termination. Functions..." _____________________________________________________________________________ Objection Enhancement Request Number 73 donn@interix.com BUG in XSH (rdvk# 277) [DT-XSH-34] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: These are XSI functions. Their withdrawal is being phased thru LEGACY _____________________________________________________________________________ Page: 128,129 Line: 3919,3952 Section: bcmp,bcopy Problem: Discard historical junk (see _longjmp). Action: Discard. _____________________________________________________________________________ Objection Enhancement Request Number 74 donn@interix.com BUG in XSH (rdvk# 278) [DT-XSH-35] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: This is an XSI extension _____________________________________________________________________________ Page: 130 Line: 3988 Section: bsd Problem: I don't see a justification for this except pandering to the lowest common denominator. Action: Delete. _____________________________________________________________________________ Editorial Enhancement Request Number 75 donn@interix.com BUG in XSH (rdvk# 279) [DT-XSH-36] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the current text aligns with ISO C _____________________________________________________________________________ Page: 135 Line: 4144 Section: btowc Problem: Does it determine or convert? Action: It does both, but the sentences alternate between one or the other. Replace "The btowc() function determines..." with "The btowc() function attempts to convert c to it's wide-character form in the initial shift state, and returns WEOF if it determines that c is not a valid one-byte character in the initial shift state". (It seems likely to me that the original C standard text (I don't have a copy of the supplement) probably continued this sentence with something to the effect "and returns...". Inserting the RETURN VALUE section may have changed the meaning of the text.) _____________________________________________________________________________ editorial Enhancement Request Number 76 Frank Bug in XSH (rdvk# 20) [prindle.xsh-16] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 147 Line: 4509 Section: cfgetispeed() Problem: The rationale for this function appears in a later function, cfgetospeed(). There is also a wording error in the rationale in cfgetospeed(). Action: Move the rationale from cfgetospeed() here, and make the rationale section of each of the other 3 functions which follow say "Refer to cfgetispeed()." Also, when the rationale (which is on lines 4543-4569) is moved here, make the following fix: change "functions do not take numbers as arguments" to "functions do not take arguments as numbers". While not entirely correct (the get functions return the baud rate), at least it is readable and the reader knows what is really meant. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 77 donn@interix.com BUG in XSH (rdvk# 280) [DT-XSH-37] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: The change history is informative and reflects what happened in the past. _____________________________________________________________________________ Page: 147 Line: 4521 Section: cfgetispeed Problem: I don't see what this change buys. If some other function can return a termios structure, great, say so. If not, then leaving it undefined is a good thing: this allows an implementation to look in several places to get the input speed without having to do extensive checking. (Don't overspecify the implementation.) Action: Drop (or justify). _____________________________________________________________________________ editorial Enhancement Request Number 78 Frank Bug in XSH (rdvk# 21) [prindle.xsh-17] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 150 Line: 4593 Section: cfsetispeed() Problem: Poor wording (not from POSIX, but then again its wording was poor also). Also on page 151, line 4634. Action: Change "on" to "with" on both line 4593 and line 4634. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 79 donn@interix.com BUG in XSH (rdvk# 281) [DT-XSH-38] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Leave existing text here for clarity. A new definition will be added to XBD (action HPA) _____________________________________________________________________________ Page: 154 Line: 4743 Section: chmod Problem: The material about S_ISVTX belongs in XBD under file access permissions, not here buried in a not particularly obvious place if you're looking for the effect, rather than the cause. Action: Move. _____________________________________________________________________________ Editorial Enhancement Request Number 80 donn@interix.com BUG in XSH (rdvk# 282) [DT-XSH-39] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete 4902-4904 in rationale _____________________________________________________________________________ Page: 158 Line: 4888,4902 Section: chown Problem: Identical paragraphs. Action: Remove one (either). _____________________________________________________________________________ comment Enhancement Request Number 81 Frank Bug in XSH (rdvk# 22) [prindle.xsh-18] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: accept, delete all this rationale _____________________________________________________________________________ Page: 165 Line: 5088 Section: clock Problem: Yes, it is incorrect. Amazing that this rationale snuck in to even the 96 POSIX standard! Action: Remove this rationale. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 82 Frank Bug in XSH (rdvk# 24) [prindle.xsh-20] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Add "If an I/O error occurred while reading from or writing to the file system during close(), it may return -1 with errno set to [EIO]; if this error is returned, the state of fildes is unspecified." (action on frank for the latter part of the proposed action below) _____________________________________________________________________________ Page: 166 Line: 5126-5127 Section: close() Problem: It is not clear what the state of fildes is if EIO is returned. Is a conforming implementation required to complete the close (deallocation) even if EIO is returned, or like so many other POSIX function, should the function have no effect if EIO is returned? In the very likely event that neither of these can be guaranteed, EIO should behave like EINTR. This should be addressed as a global problem wherever EIO can be returned. Action: Add "If an I/O error occurred while reading from or writing to the file system during close(), it may return -1 with errno set to [EIO]; if this error is returned, the state of fildes is unspecified." Globally check for EIO returns and see what effect this error has on semantics of functions which may return it. Generally, the occurence of this error should in some respects be treated as EINTR, since the operation may have done nothing, may have only partially completed, or may have completed to a large extent. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 83 donn@interix.com BUG in XSH (rdvk# 283) [DT-XSH-40] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: STREAMS pipes are discussed, see 5143- Its also an XSI extension _____________________________________________________________________________ Page: 166 Line: 5134 Section: close Problem: STREAMS pipes seem to be an implementation detail; it should be the case that "pipes are pipes" and discussing the implementation details of ones that choose to be implemented with STREAMS weakens the standard, because it introduces ambiguity in how to write an application. (This seems another "grab bag" feature.) Action: Remove this discussion. If a statement along the lines of "Pipes may be implemented on some systems so that bidirectional data movement is possible. Portable applications shall not use such a feature." is needed, that's fine. _____________________________________________________________________________ Editorial Enhancement Request Number 84 donn@interix.com BUG in XSH (rdvk# 284) [DT-XSH-41] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_of_85 Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 167 Line: 5178,5184 Section: close Problem: Redundant paragraphs. Action: Delete one. _____________________________________________________________________________ editorial Enhancement Request Number 85 Frank Bug in XSH (rdvk# 23) [prindle.xsh-19] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 167 Line: 5184-5188 Section: close() Problem: These lines are duplicated under APPLICATION USAGE. Clearly the first paragraph belongs to APPLICATION USAGE. The second paragraph is really implementation guidance, so shouldn't be in APPLICATION USAGE. Action: Delete lines 5184-5185 (keep first paragraph in APPLICATION USAGE). Delete lines 5180-5182 (keep second paragraph in RATIONALE). ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 86 Frank Bug in XSH (rdvk# 25) [prindle.xsh-21] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: At Austin/2 the decision was made to remove only. The OH marking is for XSI systems only _____________________________________________________________________________ Page: 179 Line: 5521 Section: creat() Problem: See also page 252, line 7764. See also page 640, line 20199. There may be others - consider this a global issue. Based on the definition of the margin code OH, I guess I don't understand the rationale for removing and keeping if neither is required by conforming systems. It certainly can't hurt to include or , but why keep here? In fact, what is the purpose of the OH code anyway? Same applies to before on pg 252 and before on pg 640. Action: Delete line 5521 and reflect this in the Issue 6 change history for creat(). Delete line 7764 and reflect this in the Issue 6 change history for fcntl(). Delete line 20199 and reflect this in the Issue 6 change history for open(). ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 87 Frank Bug in XSH (rdvk# 26) [prindle.xsh-22] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: No change for the first action (must is ok) On the second action restore the use of shall as noted _____________________________________________________________________________ Page: 183 Line: 5615,5623 Section: ctermid() Problem: Elided "shall"; substitution of "must" for "shall" (applies to these lines and entire document). Personally, I like the "must" for an application requirement rather than an implementation requirement, but I'm not sure how ISO will take this. But "shall" is definitely missing in the second line. See also page 235, line 7253 (shall replaced by do). See also page 711, line 22127(shall be replaced by are). Elided or renamed "shall" is a very common bug throughout document; consequences range from minor to very serious, not even considering the ISO issue. Action: In POSIX first line reads "...function shall be called...", while here a "must" is used. I don't see a problem with this, as it differentiates between an appl. rqmt. and an impl. rqmt. But check with ISO style guidance on this. Also, else- where, shall is being used for application requirements. It might be simpler in the long run to keep the POSIX style and use shall for both. In POSIX, second line reads "The ctermid() function shall return". Restore this wording and scan POSIX.1 "shall"s to ensure that none are lost in this document where an implementation requirement is intended. Be especially careful where "shall" has been changed to "can", as this is very misleading. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 88 donn@interix.com BUG in XSH (rdvk# 285) [DT-XSH-42] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 188 Line: 5779 Section: dbm Problem: Clarity. Action: "is not replaced with the new record" -> "is left unchanged and the new record ignored". _____________________________________________________________________________ Objection Enhancement Request Number 89 donn@interix.com BUG in XSH (rdvk# 286) [DT-XSH-43] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Add to Application Usage "Since the meaning of leading // is implementation defined the dirname "//foo" could return either "//" or "/" and nothing else." _____________________________________________________________________________ Page: 192 Line: 5908 Section: dirname Problem: Assuming that the // convention is retained, this table (and the corresponding text) need to be explicit that // is treated differently from /. Action: Add line: "//foo" "//" _____________________________________________________________________________ Objection Enhancement Request Number 90 donn@interix.com BUG in XSH (rdvk# 289) [DT-XSH-46] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to Base WG _____________________________________________________________________________ Page: 195 Line: 5984 Section: dlcolse Problem: A subsequent dlopen may have needed something this initially opened. Action: "are also closed" -> "are also closed if this is the last reference to it". _____________________________________________________________________________ Objection Enhancement Request Number 91 donn@interix.com BUG in XSH (rdvk# 287) [DT-XSH-44] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: The is not just a PASC document. The project scope brings these functions in from the XSH specification. _____________________________________________________________________________ Page: 197 Line: 6031 Section: dlerror Problem: According to the PASC rules, the dl* functions (and others) MUST be renamed to be posix_dl*. Action: I expect that rule to be followed scrupulously throughout this process. I see no reason that new interfaces introduced via this process should be subject to any less onerous restrictions than new interfaces introduced via any other process. (Although the dl* functions are found on a number of systems, it's arguable whether they are in "wide industry use"; the same applies to a number of other new interface groups.) _____________________________________________________________________________ objection Enhancement Request Number 92 Frank Bug in XSH (rdvk# 28) [prindle.xsh-24] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to the Base WG _____________________________________________________________________________ Page: 197 Line: 6033-6037 Section: dlerror() Problem: Given the semantics of this function, it clearly cannot be reentrant or thread- safe. Several threads may be manipulating different dl files, and each would be likely to clobber each other's error status (which could be fixed by passing the handle), not to mention the issue of several threads manipulating the same dl file while calling this function resets the error status (which would not be fixed by passing the handle). Action: Add the following to the description: "The dlerror() function need not be reentrant. A function that is not required to be reentrant is not required to be thread-safe." AND add dlerror() to the list of non-thread-safe functions on page 63, section 3.8.2. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 93 donn@interix.com BUG in XSH (rdvk# 288) [DT-XSH-45] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: Rejected since the revision does not have such reinvention within its scope. _____________________________________________________________________________ Page: 197 Line: 6051 Section: dlerror Problem: (Somebody's got to be the bad guy on this one....) This is awful. Returning (unspecified) strings makes it effectively impossible for an application to do what recovery it might be able to do on the failure of dlopen and friends. The functions should return return error codes/flags like any reasonable function, and there should be a way to TRANSLATE those into meaningful strings for printing. (Imagine an application that wanted to say "I couldn't find this, where else should I look?": it would need to know that it was a lookup failure, not something else, before asking.) Action: Rewrite the whole function group to return error codes. Introduce a new function to translate to these strings. It should be possible to do that without breaking existing applications. (I'll take an action item as long as I'm not just wasting my time.) _____________________________________________________________________________ Objection Enhancement Request Number 94 donn@interix.com BUG in XSH (rdvk# 290) [DT-XSH-47] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to Base WG _____________________________________________________________________________ Page: 198 Line: 6095 Section: dlopen Problem: Is "relocation" a defined concept? It's used heavily here, but without definition. If it's a "generally understood CS term", one of the dictionaries we refer to (of which I don't have copies) should define it. Action: If we can't find a supporting definition, I'll attempt one, but if we can, that would be better. _____________________________________________________________________________ Objection Enhancement Request Number 95 donn@interix.com BUG in XSH (rdvk# 291) [DT-XSH-48] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Add a section in DESCRIPTION that RTLD_NEXT is reserved (although also note that section 2 reserves the RTLD_ namespace) _____________________________________________________________________________ Page: 201 Line: 6206 Section: dlsym Problem: Reservation of symbol names is normative. This is in the Application Usage section (as noted earlier, that is frequently a problem). Action: Move the reservation (but not necessarily the explanation) to normative text. (Or move to Future Directions, and indicate that "it is likely".) _____________________________________________________________________________ Comment Enhancement Request Number 96 Andries.Brouwer@cwi.nl Bug in XSH (rdvk# 3) [dup2] Fri Jun 25, 3:21am +0200 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 206-207 Line: 6347,6383 Section: omitted Problem: Line 6383 contradicts line 6347. Action: Remove lines 6383-6384. _____________________________________________________________________________ comment Enhancement Request Number 97 Frank Bug in XSH (rdvk# 155) [prindle.xsh-151] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 210 Line: 6479 Section: encrypt() Problem: See also page 913 line 27970 section setkey(). See also page 1118 line 34146 section towctrans(). These function DESCRIPTIONS vary from the customary instruction about setting errno to zero before calling in order to test for failure. Action: Add some variation of the usual wording after this sentence, e.g.: An application wishing to check for error situations should set errno to 0 before calling encrypt(). If errno is non-zero on return, an error has occurred. In the case of towctrans(), these words need to be shaded and marked CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 98 donn@interix.com BUG in XSH (rdvk# 292) [DT-XSH-49] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_of_99 Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 212 Line: 6516 Section: endgrent Problem: Some systems cannot enumerate the list of groups, either as an implementation detail or as a security issue. Action: Remove the interfaces, or at least specify that without appropriate privilege, that only some, or possibly no, groups are enumerated. Note: this was explicitly discussed and discarded in the original POSIX work (because of security considerations), and seems to have come back in the "grab bag" mode. _____________________________________________________________________________ objection Enhancement Request Number 99 Frank Bug in XSH (rdvk# 30) [prindle.xsh-26] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: (restore these to XSI) _____________________________________________________________________________ Page: 212 Line: 6518-6521 Section: endgrent() Problem: Application usage section would indicate that these functions should be migrating toward legacy, not mandatory for conformance. It would seem to be counterproductive to include these under the POSIX umbrella when their usage is not recommended. The lack of a thread-safe alternative is also not consistent with POSIX. Also applies to: endpwent() and the 4 other referencing function pages. Action: Remove this note and do not make these mandatory. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 100 donn@interix.com BUG in XSH (rdvk# 293) [DT-XSH-50] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: These are in scope and will be left as XSI extensions. Delete the reviewers note on lines 6756-6759 _____________________________________________________________________________ Page: 214 Line: 6575 Section: endpwent Problem: As for endgrent(), remove. Action: Remove (family). _____________________________________________________________________________ Objection Enhancement Request Number 101 donn@interix.com BUG in XSH (rdvk# 294) [DT-XSH-51] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: These are in scope as XSI extensions _____________________________________________________________________________ Page: 216 Line: 6631 Section: endutxent Problem: This set of interfaces seems of very marginal use to portable applications (except possibly system accounting ones, which typically can't be portable for other reasons, anyway). It also probably introduces a security hole in that knowing who is logged in or not (at least accurately) is probably a security problem. Action: Either require appropriate privilege, or delete. _____________________________________________________________________________ objection Enhancement Request Number 102 Frank Bug in XSH (rdvk# 43) [prindle.xsh-39] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: add a reviewers note that further CX markings need to be defined _____________________________________________________________________________ Page: 223 Line: 6783 Section: errno Problem: This is an ISO C interface, and needs the standard ISO C disclaimer. Action: Add after this line (shaded an margin coded CX): "The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard are unintentional. This document defers to the ISO C standard." ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 103 Frank Bug in XSH (rdvk# 31) [prindle.xsh-27] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 225 Line: 6856-6859 Section: exec Problem: This text is dependent on the threads option. Action: Shade and mark this paragraph THR. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 104 H. Bug in XSH (rdvk# 435) Wed, 14 Jul 1999 13:31:29 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: No change to the spec. An action has been assigned to HPA to write a proposal and to submit it to the Base wg _____________________________________________________________________________ Page: 225 Line: 6862 Section: exec Problem: The so-called #!-hack is an expected feature of a modern Unix system, and is at the core of one of the very powerful features of the operating system: the seamless integration of various scripting languages. There are at least three ways of implementing the #!-hack: in the exec() functions of libc (usually only execve need to be modified since the other functions are usually implemented in terms of execve); in the kernel, exec server, or equivalent; or in /bin/sh. I believe it is overdue that this expected and essential feature is codified. The behaviour desired of the #!-hack is the following; this follows the behaviour of the existing systems. [[Issues that need to be discussed and should not be included in text are marked with double square brackets.]] [[For the sake of simplification, this discussion assumes execve() has been called, and that all other exec functions are implemented in terms of execve(). This is obviously not a requirement, and needs to be dealt with properly in the final text.]] If the file referenced by "path" exists, the current process has appropriate privileges, the length of the file is no less than two characters, and the first two characters of the file is the string "#!" then the content of the file will be parsed in the following manner: - The initial #! sequence and any following whitespace is skipped. - The next sequence of no more than {PATH_MAX} non-whitespace characters is stored as the "interpreter". - For the remainder of the line, any additional sequences of non-whitespace characters are individually stored as intrp_args[0..n-1] (for n == the number of such sequences. If there are no such sequences, n == 0.) [[Linux requires n <= 1. This causes problems with some existing scripts. Should we make the behaviour undefined if n > 1?]] If the line contains single or double quotation marks ('\'' or '\"') the behaviour is undefined. If the "interpreter" does not contain a leading '/', the behaviour is undefined. If the file begins with #! but the first line contains no non-whitespace characters, the file contains no '\n' character whatsoever, or the file referenced by "interpreter" does not exist, the behaviour is undefined. [[Should [ENOEXEC] be required here?]] If either the file referenced by "path" or the file referenced by "interpreter" has the set-user-ID or set-group-ID bit [[capability bits?]] set, the behaviour is undefined. [[There are two existing behaviours in use, and each has its advantages. Some systems honour the set-ID bits on the interpreter, others on the file, yet others on neither. Each variant has its advantages and drawbacks. Therefore it is probably not suitable for standardization, although one option would be to specify explicitly that each of these three alternatives are explicitly permitted.]] The argv array will then be modified in the following way: argv[0] is replaced with the basename of "interpreter" (using the same algorithm as basename().) [[Should it be permitted for argv[0] to simply be "interpreter"?]] argv[1] is replaced with the name of the file itself, as given by "path", except that if "path" lacks a leading '/', the current working directory is prepended, separated from '/' with slash characters as needed, thus making argv[1] independent of the current working directory. However, symlinks referenced in "path" shall not be canonicalized. argv[2..n+1] are replaced with intrp_args[0..n-1]. argv[n..n+m-2] are replaced with the original argv[1..m-1]. Finally, the file referenced by "interpreter" is invoked as the process image. If this file itself begins with #!, it is implementation-dependent if the result is to return [ENOEXEC] or the above process is recursed; otherwise the behaviour shall be as if execve() had been invoked directly using the above modified arguments. [[It may be preferrable to allow the return of [ENOEXEC] if the invocation of the interpreter would have returned [ENOENT].]] The #! issue is also described in XCU, where it is considered undefined. This needs to remain at least partially undefined, since kernel- and libc-based implementations will necessarily differ from shell-based implementations as to the behaviour of "sh script" where script starts with a legal #!-line with an interpreter *other* than "sh". However, it may be desirable to standardize the behaviour of the XCU shell encountering a #!-line which references itself. Action: This feature, and the lack thereof in the previous standard, is mentioned mentioned throughout the exec definition. The exec definition should be modified in all relevant places to incorporate the above described feature. _____________________________________________________________________________ objection Enhancement Request Number 105 Frank Bug in XSH (rdvk# 32) [prindle.xsh-28] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 226 Line: 6916 Section: exec Problem: This text is redundant and has the incorrect margin code. It is effectively repeated, with the correct margin code on lines 6924-6925 on the next page. Action: Remove this line. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 106 Frank Bug in XSH (rdvk# 33) [prindle.xsh-29] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 226 Line: 6917-6918 Section: exec Problem: Wrong margin code. Action: Change margin code from SHM to SEM. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 107 Frank Bug in XSH (rdvk# 34) [prindle.xsh-30] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X__ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 235 Line: 7245 Section: exit() Problem: Missing margin code. Action: Change margin code from MF to MF|SHM. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 108 donn@interix.com BUG in XSH (rdvk# 295) [DT-XSH-52] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 236 Line: 7289 Section: exit Problem: Choke... since this document DOES define exit... (Via the CX inclusions.) Action: Delete paragraph. I don't believe that this says anything useful in this context. _____________________________________________________________________________ Objection Enhancement Request Number 109 donn@interix.com BUG in XSH (rdvk# 298) [DT-XSH-55] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: STREAMS are in scope. they are an XSI extension and therefore not a reqt for POSIX conformance _____________________________________________________________________________ Page: 244 Line: 7504 Section: fattach Problem: Is this trip really necessary? That is, do we really need STREAMS in POSIX at all? It strikes me as a complex (albeit general) mechanism with a lot of glitches (some noted above) that was quasi-standardized before it was mature. It should be dropped, evolution of the interface re-enabled (by dropping ANY standardization) and reconsidered when it is mature. Action: Delete STREAMS. _____________________________________________________________________________ Objection Enhancement Request Number 110 donn@interix.com BUG in XSH (rdvk# 296) [DT-XSH-53] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: see l 7522-7523 _____________________________________________________________________________ Page: 244 Line: 7518 Section: fattach Problem: Is there ANY way then to change the attributes of a streams file? It would seem not. Action: Either say how to do it, or explicitly note that it can't be done. _____________________________________________________________________________ Objection Enhancement Request Number 111 donn@interix.com BUG in XSH (rdvk# 297) [DT-XSH-54] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to the BASE wg _____________________________________________________________________________ Page: 244 Line: 7518 Section: fattach Problem: If the original file had multiple links, the streams file still has only one? I presume that a stream is actually attached to an inode, not a filename. If so, there continue to exist multiple links to the object, even though it shows a link count of 1. If it associates the stream with a filename, then the first sentence of the description is wrong. Action: This needs a lot of clarification: the link count should reflect the number of paths to the file, and hardwiring it at one makes it either wrong, or implies that the description of the function is wrong. If the description is correct, and it is a link to the inode, having the link count be wrong could break programs like find or ftw(). (I'll be happy to write words if someone wants me to, but since I don't know what was intended...) _____________________________________________________________________________ Objection Enhancement Request Number 112 donn@interix.com BUG in XSH (rdvk# 299) [DT-XSH-56] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: no specific changes could be identified for this rdvk request. please submit a new rdvk request for the next review with further explanation and specific changes _____________________________________________________________________________ Page: 247 Line: 7614 Section: fchmod Problem: In fattach() you give some conditions where fchomd() won't work as expected. Here you give some others. The conditions should either always be with the function that won't work (fchmod in this case) or always with the feature (fattach in this case), with a cross reference to the other. The current inconsistency will only confuse things. Action: Determine a consistent rule for such exceptions, and apply it. I don't care which. (Again, I don't mind writing the text, I just don't know what to write.) _____________________________________________________________________________ objection Enhancement Request Number 113 Frank Bug in XSH (rdvk# 35) [prindle.xsh-31] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 247 Line: 7626-7627 Section: fchmod() Problem: The EINTR error and the first EINVAL error in the optional section are extensions to POSIX. Action: Shade these two errors and mark XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 114 donn@interix.com BUG in XSH (rdvk# 300) [DT-XSH-57] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 250 Line: 7699 Section: fclose Problem: Unclear. Implies untrue things. In normal English usage this text would imply "and if buffered data had not yet EVER been...". Action: Change to "and if buffered data remains that has not yet been written to the file." _____________________________________________________________________________ objection Enhancement Request Number 115 Frank Bug in XSH (rdvk# 37) [prindle.xsh-33] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 250 Line: 7700-7701 Section: fclose() Problem: Performance of a close() is also an extension to ISO C. Action: Shade the last sentence of this paragraph to be included with the previous sentence as CX coded text. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 116 Frank Bug in XSH (rdvk# 36) [prindle.xsh-32] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 250 Line: 7704-7705 Section: fclose() Problem: Setting errno for these functions is an extension to ISO C. Action: Shade "and sets errno to indicate the error" and mark CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 117 donn@interix.com BUG in XSH (rdvk# 301) [DT-XSH-58] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below__X__ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete the words "created using fork()" _____________________________________________________________________________ Page: 253 Line: 7847 Section: fcntl Problem: "using fork()"... as opposed to what? Spawn() and vfork() are the only alternatives I know of. Is this just gratuitous, or is it trying to say something (possibly important)? Action: Either: Delete "using fork()". or Say specifically which functions do what. I'd suggest: "Whether locks are inherited depends on how the child process was created, and is specified with each function capable of creating a child process: fork(), vfork(), and [presumably] spawn()." (And then make sure the specific functions say which.) _____________________________________________________________________________ Comment Enhancement Request Number 118 donn@interix.com BUG in XSH (rdvk# 302) [DT-XSH-59] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete 7921 "One is ...." _____________________________________________________________________________ Page: 255 Line: 7921 Section: fcntl Problem: "are not atomic". This was true, and either has been fixed or is in the process of being fixed (I forget which part it ended up in). In any case... Action: Delete. (Or qualify, if there are some non-atomic writes.) _____________________________________________________________________________ comment Enhancement Request Number 119 Frank Bug in XSH (rdvk# 38) [prindle.xsh-34] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: the comment is correct these should have been MAN shaded for d1. no change is necessary _____________________________________________________________________________ Page: 262 Line: 8115-8120 Section: fdopen() Problem: See also lines 8130-8131 on this page. See also lines 8136-8141 on this page. The "b" forms of the mode argument are extensions and I think should be marked MAN, though I still am unsure of the exact usage for MAN. Likewise the paragraph on offset maximum. Likewise the errors. Action: Shade and mark the "b" forms of mode, the offset max paragraph, and the errors as in issue 5, but margin coded MAN(?). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 120 Frank Bug in XSH (rdvk# 39) [prindle.xsh-35] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: this change should be left as is, and described as a new reqt on POSIX implementations in the CHANGE HISTORY _____________________________________________________________________________ Page: 262 Line: 8127-8128 Section: fdopen() Problem: The second sentence of this paragraph is an extension, and based on the the change history, appear to need to be shaded and coded XSI. Action: Shade and code the second sentence as XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 121 donn@interix.com BUG in XSH (rdvk# 303) [DT-XSH-60] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the group feels this is a quality of implementation issue and prefers the text left where it is _____________________________________________________________________________ Page: 263 Line: 8154 Section: fdopen Problem: The statement about "a good implementation of append (a) mode" is a good candidate for promotion to normative text. Action: Make normative (or delete, saying why it couldn't be made normative). _____________________________________________________________________________ Comment Enhancement Request Number 122 donn@interix.com BUG in XSH (rdvk# 304) [DT-XSH-61] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: do nothing _____________________________________________________________________________ Page: 268 Line: 8313 Section: ffs Problem: This function really belongs in the C standard (more than most of the POSIX additions). Action: Oh well... Leave it. (But if there's someone from C-land out there....) _____________________________________________________________________________ comment Enhancement Request Number 123 Frank Bug in XSH (rdvk# 41) [prindle.xsh-37] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: the entire errors section should be CX shaded _____________________________________________________________________________ Page: 269 Line: 8373-8376 Section: fgetc() Problem: See also page 274, line 8542-8545. Parts of this error description are not shaded. Clearly, since ISO C defines no such error description, these must be shaded and coded with margin code CX. Action: Shade these lines and give them the CX margin code. Also page 274. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 124 Frank Bug in XSH (rdvk# 40) [prindle.xsh-36] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: MAN -> CX for the next draft for these errors, the change history is correct as is. _____________________________________________________________________________ Page: 271 Line: 8441-8446,8464-8465 Section: fgetpos() Problem: This function did not appear in the POSIX specification, and therefore was not a requirement on a POSIX implementation. I believe those lines should have been coded CX. Action: Change MAN to CX, and reword issue 6 change history to reflect that these are extensions to ISO C, not new requirements on POSIX. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 125 Frank Bug in XSH (rdvk# 44) [prindle.xsh-40] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 291 Line: 9042 Section: fopen() Problem: See also page 328 line 10406 section fscanf(). See also page 366 line 11667 section fwscanf(). If every error enumerated in the section below (line 9043) is an ISO C extension, then this function must not set errno at all in ISO C. So the last part of this sentence must also be an ISO C extension. Action: Shade and mark ", and errno is set to indicate the error" with margin code CX. Also do this on line 10406 in fscanf() and line 11667 in fwscanf(). ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 126 donn@interix.com BUG in XSH (rdvk# 305) [DT-XSH-62] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: add text "For process characteristics not defined by this document, their inheritance is not defined by this document. Process characteristics defined by this document have their inheritance explicitly defined." _____________________________________________________________________________ Page: 295 Line: 9169 Section: fork Problem: Careful... "not defined by this document". Is it the process characteristics not defined by the standard, or the inheritance that is not defined by the standard. And do all the process characteristics introduced by realtime (etc.) meet the requirement of saying how they are inherited? Action: For the moment, flag this as an area to be sure is correct after all the various new addenda are rolled in. The following phrasing change could be applied as well: "For process characteristics not defined by this document, their inheritance is not defined by this document. Process characteristics defined by this document have their inheritance explicitly defined." _____________________________________________________________________________ Comment Enhancement Request Number 127 donn@interix.com BUG in XSH (rdvk# 306) [DT-XSH-63] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the group feels that the rationale is ok and provides useful information _____________________________________________________________________________ Page: 296 Line: 9224 Section: fork Problem: This rationale is antique, and is no longer timely. It could be dropped or rephrased. Action: I'd keep just the second sentence "A system that..." and discard the rest. _____________________________________________________________________________ Comment Enhancement Request Number 128 donn@interix.com BUG in XSH (rdvk# 307) [DT-XSH-64] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: please file the rdvk again at the appropriate time _____________________________________________________________________________ Page: 296 Line: 9253 Section: fork Problem: Clean up after spawn() is integrated (so we know what to say). Action: Flag for later attention. _____________________________________________________________________________ objection Enhancement Request Number 129 Frank Bug in XSH (rdvk# 47) [prindle.xsh-43] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 306 Line: 9660-9662 Section: fprintf() Problem: See also page 358 line 11392-11394 section fwprintf(). These lines are an extension (see fputc(), fwrite()). Action: Shade and code these lines CX - see [prindle.xsh-12]. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 130 Frank Bug in XSH (rdvk# 58) [prindle.xsh-54] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: it is this way to match historic practise _____________________________________________________________________________ Page: 306 Line: 9668-9669,9671 Section: fprintf() Problem: It seems to be an inconsistency that snprintf(), apparently added for consistency with swprintf()'s arguments, is inconsistent with swprintf()'s handling of exceeding n characters in the output string. Here truncation occurs if n>0 and unspecified if n==0; while in swprintf() (on line 11399) considers it an error for any value of n if n or more characters are written (change history denotes this as corrigenda item U040/1). I will assume this is ISO corrigenda since the change is not marked CX or XSI. Action: The same corrigenda should be applied to snprintf() to make it consistent with swprintf(). If this corrigenda is not applied also to the ISO C standard, then shade and mark these lines CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 131 Frank Bug in XSH (rdvk# 46) [prindle.xsh-42] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: shade and code these lines as XSI _____________________________________________________________________________ Page: 306 Line: 9668-9669,9671,9681-9683 Section: fprintf() Problem: These lines are associated with the XSI extension snprintf(). Action: Shade and code these lines XSI (or preferrably CX - see [prindle.xsh-12]). ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 132 Frank Bug in XSH (rdvk# 45) [prindle.xsh-41] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: leave as is, as per ISO C _____________________________________________________________________________ Page: 306 Line: 9670 Section: fprintf() Problem: See also page 358 line 11397,11399 section fwprintf(). Are you sure ISO C says an error returns a negative value? I thought it was supposed to return EOF. Also, this function appears to set errno. Also, shouldn't the error indicator for the stream be set? See fputc(), which appears to do this correctly. Action: Either change "a negative value" to "EOF" or shade "a negative value" and mark CX. Also add ", and errno is set to indicate the error", shaded and marked CX. Also add ", the error indicator for the stream is set" (not shaded) as in fputc() [check this for all stdio functions]. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 133 Frank Bug in XSH (rdvk# 48) [prindle.xsh-44] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 309 Line: 9768-9772 Section: fputc() Problem: See also page 312, line 9890-9894. See also page 331, line 10532-10536. The remainder of this error description is an ISO C extension and should be shaded and marked CX as in the other functions. Action: Shade and code the remaining text of this error description CX (may be a challange given that part of the first line is coded differently (see [prindle.xsh-12]). Do same on pages 312 and 331. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 134 Frank Bug in XSH (rdvk# 101) [prindle.xsh-97] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: nothing has changed, do nothing _____________________________________________________________________________ Page: 319 Line: 10093 Section: freopen() Problem: See also page 291 line 9070 section fopen() I'm interested in why this function checks against OPEN_MAX while fopen() checks against FOPEN_MAX or its POSIX equivalent STREAM_MAX. Both functions deal with FILE* objects, not int FDs, and such functions typically check against FOPEN_MAX/STREAM_MAX. Action: If this was changed in error, change it back to "FOPEN_MAX or STREAM_MAX streams" ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 135 Frank Bug in XSH (rdvk# 49) [prindle.xsh-45] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 319 Line: 10094-10096 Section: freopen() Problem: This error is also an ISO C extension. Action: Shade and mark CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 136 Frank Bug in XSH (rdvk# 50) [prindle.xsh-46] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: shade -1 and mark as CX _____________________________________________________________________________ Page: 330 Line: 10514 Section: fseek() Problem: Are you sure ISO C says -1 on error, and not "nonzero". I don't have ISO C handy, but several references to ANSI C say "nonzero". Action: Either change -1 to nonzero, or shade -1 and mark as CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 137 Frank Bug in XSH (rdvk# 51) [prindle.xsh-47] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 330 Line: 10514 Section: fseek() Problem: You failed to shade "and set". Action: Shade those words to be included as CX with the words that follow. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 138 Frank Bug in XSH (rdvk# 56) [prindle.xsh-52] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: restore these functionalities here marked XSI _____________________________________________________________________________ Page: 346 Line: all Section: ftruncate() Problem: Splitting ftruncate() and truncate() onto separate pages has introduced 2 losses in functionality from Issue 5 for ftruncate(): namely 1) that SIGXFSZ is no longer generated by ftruncate(), only truncate() -and- 2) EFBIG is no longer generated if offset maximum is exceeded. Action: Either restore these functionalities here marked XSI, or include this change in the issue 6 change history (why changed?). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 139 Frank Bug in XSH (rdvk# 52) [prindle.xsh-48] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: mark man this time _____________________________________________________________________________ Page: 338 Line: 10788 Section: fsync() Problem: This error condition was not in POSIX either. Action: Shade and mark the same as EINVAL just above. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 140 Frank Bug in XSH (rdvk# 53) [prindle.xsh-49] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: redo as in If the memory protection option is.... otherwise, the result of such references is undefined." _____________________________________________________________________________ Page: 346 Line: 11008 Section: ftruncate() Problem: The last sentence of this paragraph is only true (according to POSIX) if the MPR option is supported. Action: Shade and mark the last sentence MPR. There is also the small issue of what to do with the otherwise phrase from POSIX: "otherwise, the result of such references is undefined." I don't have a good suggestion other than omitting it as it currently stands. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 141 Frank Bug in XSH (rdvk# 55) [prindle.xsh-51] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: shade and mark this phrase as MAN, add note to CHANGE HISTORY _____________________________________________________________________________ Page: 346 Line: 11010 Section: ftruncate() Problem: The phrase ", if the file size is changed, " is an extension to POSIX. Action: Shade and mark this phrase as XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 142 Frank Bug in XSH (rdvk# 54) [prindle.xsh-50] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Shade and mark the ",and if...may be cleared" as MAN and add note to CHANGE HISTORY _____________________________________________________________________________ Page: 346 Line: 11011-11012 Section: ftruncate() Problem: The phrase following the comma is an extension to POSIX. Action: Shade and mark the ",and if...may be cleared" as XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 143 donn@interix.com BUG in XSH (rdvk# 335) [DT-XSH-92] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the proposed action is out of scope. these are XSI functions _____________________________________________________________________________ Page: 349,633 Line: 20013,11059 Section: ftw, Problem: Choose one of ftw() or nftw(), but not both. Action: Delete ftw, or at least state that ftw() can be implemented in terms of nftw() with a specific set of flags. _____________________________________________________________________________ objection Enhancement Request Number 144 Frank Bug in XSH (rdvk# 59) [prindle.xsh-55] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 358 Line: 11398,11399 Section: fwprintf() Problem: Neither of these error conditions indicate that errno will get set to indicate the error. Action: Add wording, shaded and coded CX, which says in effect "and sets errno to indicate the error" (there is some problem with nesting here, but that is the desired effect). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 145 Frank Bug in XSH (rdvk# 60) [prindle.xsh-56] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the group is reticent to extend the ISO C printf family _____________________________________________________________________________ Page: 358 Line: 11399 Section: fwprintf() Problem: There is no errno code enumerated below to go with this new error contition (see [prindle.xsh-55]). Action: Add [ERANGE] to the list of errno's (ERANGE is what getcwd(), getlogin_r(), etc. use for similar error situations) and describe this error condition. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 146 Frank Bug in XSH (rdvk# 57) [prindle.xsh-53] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 358 Line: 11407 Section: fwprintf() Problem: Based on fprintf(), it appears that the ENOMEM error should also be an XSI extension. Action: Shade and mark XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 147 donn@interix.com BUG in XSH (rdvk# 308) [DT-XSH-65] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: name funcs as in "current funcs" -> getc(), getchar(), putc() and putchar() functions _____________________________________________________________________________ Page: 369 Line: 11781 Section: getc Problem: "the current functions" is "current in time" and is no longer current (sorry :-)). Action: Use "historical" or the names, as in "the older functions such as getc". _____________________________________________________________________________ Comment Enhancement Request Number 148 donn@interix.com BUG in XSH (rdvk# 309) [DT-XSH-66] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete l 11969-11972 _____________________________________________________________________________ Page: 375 Line: 11969 Section: 374 Problem: This PATH_MAX+2 stuff is now sufficiently ancient history that it should be discarded or reworked. Action: Discard. Rework acceptable. _____________________________________________________________________________ editorial Enhancement Request Number 149 Frank Bug in XSH (rdvk# 61) [prindle.xsh-57] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 380 Line: 12152 Section: getdate() Problem: The British spelling is used for practise. Action: Change to practice. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 150 Frank Bug in XSH (rdvk# 62) [prindle.xsh-58] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: await the merger of .1a, add a reviewers note that this page will be updated when .1a is merged _____________________________________________________________________________ Page: 393 Line: 12505-12506 Section: getgroups() Problem: This text does not appear in POSIX. It is not particularly normative either. Action: Move these lines to Application Usage, or at least shade them and code them XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 151 Frank Bug in XSH (rdvk# 63) [prindle.xsh-59] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Use the appropriate wording, "This document does not define" or whatever is decided in the style discussions _____________________________________________________________________________ Page: 395 Line: 12570 Section: gethostid() Problem: Perhaps this should not mention The Open Group. Action: Change to "This standard does not define...". ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 152 Frank Bug in XSH (rdvk# 64) [prindle.xsh-60] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 396 Line: 12594 Section: getitimer() Problem: Should tell where "struct itimerval" is specified. Action: Add ", specified in " after "structure". ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 153 Frank Bug in XSH (rdvk# 65) [prindle.xsh-61] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 398 Line: 12661 Section: getlogin() Problem: This line does not apply to getlogin_r. Some words were dropped from POSIX.1. Action: Restore "from getlogin()" after "return value". ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 154 Frank Bug in XSH (rdvk# 66) [prindle.xsh-62] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 398 Line: 12665-12668 Section: getlogin() Problem: See also page 387 line 12356-12360 section getgrid(). See also page 390 line 12438-12442 section getgrnam(). See also page 416 line 13262-13266 section getpwnam(). See also page 419 line 13351-13355 section getpwuid(). I'll suppose that the set of errors listed in this document cover the phrase "if the user's login name cannot be found", which appeared in the original POSIX.1. But why wouldn't these errors apply to getlogin_r()? The same argument applies to the other _r functions in the sections listed above. Action: Change 12665 to "The getlogin() and getlogin_r() functions may fail if:" and shade "and getlogin_r()" marked MAN. Make similar fixes in the other sections listed above. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 155 Frank Bug in XSH (rdvk# 67) [prindle.xsh-63] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 406 Line: 12953-12955 Section: getopt() Problem: 5 missing newlines render example unreadable. Action: Add 5 newlines, one before each occurrence except first of "cmd". ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 156 Frank Bug in XSH (rdvk# 68) [prindle.xsh-64] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 413 Line: 13182-13183 Section: getpriority() Problem: See also page 636 line 20109-20111 section nice(). Technically, this shading should be marked PS|TPS. Action: Mark PS|TPS. Here and on page 636. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 157 donn@interix.com BUG in XSH (rdvk# 310) [DT-XSH-67] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Insert an example into the next draft - provided by Ulrich. _____________________________________________________________________________ Page: 429 Line: 13652 Section: getsubopt Problem: This function's use is not obvious from the text (although the text seems right in the sense of a standard). It desperately needs an example. Action: I haven't a clue how to write one, or I would. _____________________________________________________________________________ Objection Enhancement Request Number 158 donn@interix.com BUG in XSH (rdvk# 311) [DT-XSH-68] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: The proposed action is out of scope. Its an XSI function, now marked LEGACY in this issue _____________________________________________________________________________ Page: 436 Line: 13802 Section: getwd Problem: This is a leftover that's grown mold in the fridge. Action: Delete the function. (No, it wasn't an accident 10 years ago, either.) _____________________________________________________________________________ comment Enhancement Request Number 159 Frank Bug in XSH (rdvk# 69) [prindle.xsh-65] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: The group feels that the existing wording is ok as is. _____________________________________________________________________________ Page: 436 Line: 13814-13815 Section: getwd() Problem: The wording for the return is vague. As stated, an implementation could return some string other than path_name. I think it was intended that only path_name or NULL could be returned, like gets() for example. Action: Change "a pointer to the string...directory" to "path_name". ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 160 Frank Bug in XSH (rdvk# 70) [prindle.xsh-66] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: replace errno with eerrno add a reviewers note that this page will be changed when the .1a merger occurs _____________________________________________________________________________ Page: 437 Line: 13840-13841 Section: glob() Problem: This declaration will not parse correctly if errno is a macro. P1003.1a has fixed this by renaming the errno argument to *errfunc as "eerrno". Actually, this whole section will eventually need be reconciled with the .1a version if .1a is approved in time. Action: For now, replace "errno" with "eerrno" where it appears in this section. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 161 Frank Bug in XSH (rdvk# 71) [prindle.xsh-67] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the group feels that the existing text is ok as is. _____________________________________________________________________________ Page: 441 Line: 14015-14016 Section: gmtime() Problem: Verbose wording. I tried to get this fixed in Issue 5, but lost because the words, ugly as they are, came right out of POSIX.1. Now would be a good time to fix this here and anywhere else it says "the address of the pointed to by". Action: Delete "the address of the structure pointed to by" ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 162 Frank Bug in XSH (rdvk# 72) [prindle.xsh-68] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: accept "null pointer" (global style change) _____________________________________________________________________________ Page: 441 Line: 14016-14017 Section: gmtime() Problem: I generally see there has been some effort to replace "NULL pointer" (from POSIX) throughout this document with "null pointer", leaving "NULL" to be used without the following word "pointer" to be synonymous with "null pointer" as defined by ISO C. Here is one instance where that effort failed. I think there are others. Action: As a matter of style, avoid "NULL pointer", since NULL is already a specific pointer. Here and globally, replace "NULL pointer" with either "NULL" or "null pointer". ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 163 donn@interix.com BUG in XSH (rdvk# 312) [DT-XSH-69] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 443 Line: 14061 Section: grantpt Problem: spelling Action: counter part -> counterpart. _____________________________________________________________________________ objection Enhancement Request Number 164 Frank Bug in XSH (rdvk# 73) [prindle.xsh-69] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: add the standard wording regarding thread safety and reentrancy. Add this to the table in the front matter regarding the non thread safe functions in section 3.8.2 _____________________________________________________________________________ Page: 444-446 Line: 14174 Section: hcreate() Problem: It appears that, since hcreate() returns no handle, nor do the other functions take a handle, there can be at most one such table per process at any time. The application usage section should point this out, including the implications to a multi-threaded process (threads must cooperate, as this is a shared resource) or a process which calls a library function which may use these functions. Also, what are the implications of calling hcreate() or hdestroy() twice in a row (undefined, I assume); POSIX functions normally address such anomalies. Action: Beef up the Application Usage section to address serious restrictions of using a set of functions which rely on an anonymous per-process resource. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 165 donn@interix.com BUG in XSH (rdvk# 313) [DT-XSH-70] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: change 14201 "The hypot() function shall compute the value of the square root of x2 + y2" [the 2's need to be super] _____________________________________________________________________________ Page: 447 Line: 14201 Section: hypot Problem: I know what a right triangle is, and so does a mathematician. A right-angled triangle... is that an open 3-sided figure? Action: "right-angled" -> "right" (per the conventional mathematical definition). _____________________________________________________________________________ Objection Enhancement Request Number 166 donn@interix.com BUG in XSH (rdvk# 314) [DT-XSH-71] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: The action does not make sense (aardvark actions need to be self contained) . Assume this is asking for deletion, the action is out of scope. This is an XSI function. _____________________________________________________________________________ Page: 454 Line: 14408 Section: ilogb Problem: See scalb below. Action: See scalb below. _____________________________________________________________________________ Objection Enhancement Request Number 167 donn@interix.com BUG in XSH (rdvk# 315) [DT-XSH-72] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject__X__ Rationale for rejected or partial changes: the proposed action is out of scope. This is an XSI function now marked LEGACY in this issue. _____________________________________________________________________________ Page: 455 Line: 14438 Section: index Problem: Again, part of the grab-bag of ancient history that doesn't really belong in a standard. Action: Delete. (This was the toughest such call for me to make.) _____________________________________________________________________________ Objection Enhancement Request Number 168 donn@interix.com BUG in XSH (rdvk# 316) [DT-XSH-73] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to the Base WG _____________________________________________________________________________ Page: 456 Line: 14487 Section: initstate Problem: Is 1 really the only value that will generate a repeatable sequence, and does that really apply to rand(), too? That's what the sentence says. (Or is this escaped rationale?). Action: Change to "...by calling srandom() with a known seed.". _____________________________________________________________________________ Objection Enhancement Request Number 169 donn@interix.com BUG in XSH (rdvk# 317) [DT-XSH-74] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to the Base WG _____________________________________________________________________________ Page: 456 Line: 14489 Section: initstate Problem: This paragraph is confusing, in part because it's confused. E.g. "For values greater than or equal to 8, or less than 32": I think that covers all numbers. Below it's clearly intended as "and" (see 14501), but the whole paragraph needs to be edited for clarity and mathematical precision. Action: I'll be happy to take a shot at it some other time. _____________________________________________________________________________ Editorial Enhancement Request Number 170 donn@interix.com BUG in XSH (rdvk# 318) [DT-XSH-75] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 459 Line: 14593 Section: insque Problem: Unbalanced paren. Action: Add at end of paragraph, to match ( on prior line. _____________________________________________________________________________ comment Enhancement Request Number 171 Frank Bug in XSH (rdvk# 74) [prindle.xsh-70] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 488 Line: 15684-15686 Section: iswcntrl() Problem: The SEE ALSO list is missing iswctype(). Action: Add iswctype() here and in all SEE ALSO sections for all the functions listed in this SEE ALSO. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 172 Frank Bug in XSH (rdvk# 75) [prindle.xsh-71] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 490 Line: 15738-15739 Section: iswctype() Problem: See also page 491 line 15776 section iswdigit(). The SEE ALSO list is missing setlocale(). Action: Add setlocale() to SEE ALSO of all isw*() functions (it's already in some). ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 173 donn@interix.com BUG in XSH (rdvk# 319) [DT-XSH-76] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: l 16171 should read The user ID tests described above shall not be applied when sending .... _____________________________________________________________________________ Page: 503 Line: 16171 Section: kill Problem: (I think this is editorial, but...) State this positively, rather than as a double negative, which doesn't translate well into (at least) Russian. Action: Change to: "When sending SIGCONT to a process that is a member of the same session as the sending process, the user ID tests described above shall be skipped, allowing SIGCONT to be sent to any member of the session." _____________________________________________________________________________ Objection Enhancement Request Number 174 donn@interix.com BUG in XSH (rdvk# 320) [DT-XSH-77] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the proposed change is out of scope, this is an XSI function (as for item 2 below , XSI requires ownership) _____________________________________________________________________________ Page: 510 Line: 16347 Section: lchown Problem: POSIX.1a was very, very careful to avoid implying that a symbolic link has an inode, and implementations of file systems from at least HP and Apollo (R.I.P.) have the characteristic that symbolic links do not have inodes. Implying that symbolic links have owners (which this does) implies that such an implementation is not possible. (The inode-less implementation has definite speed, and likely space, advantages.) Also, if there's a lchown(), where's lchmod()? Note that lstat() is careful to provide only a few, critical, fields for a symbolic link, all of which can be synthesized if the symlink doesn't actually have an inode. Action: Choose one (I prefer "delete"). 1) Delete. 2) Add "lchown() may have no effect if the implementation does not support file ownership on symbolic links". _____________________________________________________________________________ objection Enhancement Request Number 175 Frank Bug in XSH (rdvk# 76) [prindle.xsh-72] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 519-520 Line: 16582-16584 Section: link() Problem: First of all, there is some sort of editorial error here, since the MAN on line 16582 is somehow detached from the shading on line 16584. But it shouldn't be MAN. Throughout the document, XSI is used to shade STREAMS dependent text. Action: Change MAN to XSI and align the margin code with the shaded text. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 176 Frank Bug in XSH (rdvk# 77) [prindle.xsh-73] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 527 Line: 16847 Section: localeconv() Problem: Based on the text in the RETURN VALUE section, this function need not be reentrant. Action: Add to description at the end (before this line) shaded and coded CX: "The localeconv() function need not be reentrant. A function that is not required to be reentrant is not required to be thread-safe." ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 177 donn@interix.com BUG in XSH (rdvk# 321) [DT-XSH-78] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the proposed action is out of scope, this is an XSI function _____________________________________________________________________________ Page: 531 Line: 16955 Section: lockf Problem: Redundant with fcntl() locking. This was fought over massively (ironically, "right next door" in Toronto) lo these many years ago, and lockf was not included at the time, for various good and bad reasons. It's now mostly redundant, and appears to be more of the "grab bag". Action: Delete. _____________________________________________________________________________ Objection Enhancement Request Number 178 donn@interix.com BUG in XSH (rdvk# 322) [DT-XSH-79] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the proposed action is out of scope, this is an XSI function _____________________________________________________________________________ Page: 538 Line: 17154 Section: log1p Problem: Why? Either justify or delete. (More grab-bag features.) If included, it really belongs in C, not here, but... Action: Delete function. _____________________________________________________________________________ Objection Enhancement Request Number 179 donn@interix.com BUG in XSH (rdvk# 323) [DT-XSH-80] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: Assuming the action is a request to delete (aardvark requests need to be self contained) the proposed action is out of scope, this is an XSI function _____________________________________________________________________________ Page: 539 Line: 17188 Section: logb Problem: See scalb. Action: See scalb. _____________________________________________________________________________ Objection Enhancement Request Number 180 donn@interix.com BUG in XSH (rdvk# 324) [DT-XSH-81] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 543 Line: 17302 Section: lsearch Problem: Misuse of "may". Action: "It returns...found." -> "It returns a pointer into the table for the matching entry". _____________________________________________________________________________ Comment Enhancement Request Number 181 donn@interix.com BUG in XSH (rdvk# 325) [DT-XSH-82] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: The use of gap is existing .1 wording and used throughout this section. The change was considered but rejected on the grounds that it was not felt to be an improvement, and the "gap" would still need to have been used in this section in parts. _____________________________________________________________________________ Page: 545 Line: 17370 Section: lseek Problem: <> "in the gap" is not defined. " Action: "In the region of the file not actually written". _____________________________________________________________________________ Objection Enhancement Request Number 182 donn@interix.com BUG in XSH (rdvk# 327) [DT-XSH-84] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 549 Line: 17487 Section: makecontext Problem: See my objection to line 17491 for context. In this case, "should" may be OK, but those more expert than I should concur. Action: "should"->"must". (I'm not sure about this one, and if it's really "should", that's OK... it just looks suspicious.) _____________________________________________________________________________ Objection Enhancement Request Number 183 donn@interix.com BUG in XSH (rdvk# 326) [DT-XSH-83] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 549 Line: 17491 Section: makecontext Problem: The use of "should" in this context is strange. Either it need not be initialized under some circumstances (and those circumstances enumerated), or it must be initialized for the function to work correctly. (I have trouble imagining how this and related functions could work correctly if uc_link is never initialized, and I suspect that there are implementations that would like to know which thread they are using at the time of a makecontext() call. (Particularly if dealing with inhomogeneous multiprocessor systems.)) Action: "should" -> "must". _____________________________________________________________________________ objection Enhancement Request Number 184 Frank Bug in XSH (rdvk# 78) [prindle.xsh-74] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 552 Line: 17592-17593 Section: mblen() Problem: See also page 561 line 17826-17827 section mbstowcs(). See also page 562 line 17874-17875 section mbtowc(). The only errno value documented is shown as an extension. Therefore so should be the setting of errno. Action: Shade "and may set errno...error" and mark it CX (see [prindle.xsh-12]). Also the same thing on pages 561, 562. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 185 Frank Bug in XSH (rdvk# 93) [prindle.xsh-89] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 556 Line: 17701 Section: mbrtowc() Problem: This line is an ISO C extension (see [prindle.xsh-0]). Action: Shade and mark CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 186 donn@interix.com BUG in XSH (rdvk# 328) [DT-XSH-85] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 574 Line: 18226 Section: mkfifo Problem: "It"... which "It"? Action: "It" -> "The mknod() function". (But see objection to mknod() below). _____________________________________________________________________________ Objection Enhancement Request Number 187 donn@interix.com BUG in XSH (rdvk# 329) [DT-XSH-86] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete " For portability ... document," and look for these globally in APP USAGE and do the same _____________________________________________________________________________ Page: 576 Line: 18266 Section: mknod Problem: This was excluded from POSIX for a reason. That reason remains true: it's not portably useful. I find the APPLICATION USAGE particularly strange: "For portability to implementations *conforming to earlier versions of this document*...." The text at line 18238 is itself all the case needed to delete this function. Action: Delete. If that proves politically impossible, at least state that in APPLICATION USAGE that its use should be replaced with mkfifo() or the application is not portable. _____________________________________________________________________________ Objection Enhancement Request Number 188 donn@interix.com BUG in XSH (rdvk# 330) [DT-XSH-87] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 579 Line: 18369 Section: mkstemp Problem: The name is unique for all time...? I doubt it. Action: add "at the time of call to mkstemp().". _____________________________________________________________________________ objection Enhancement Request Number 189 Frank Bug in XSH (rdvk# 81) [prindle.xsh-77] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Accept as below, but we need to review the whole paragraph _____________________________________________________________________________ Page: 587 Line: 18669-18675 Section: mmap() Problem: See also page 588 line 18708-18710. These lines are all dependent on the MPR option. Action: Shade and mark these lines with margin code MPR (only the last word of line 18708 needs shading). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 190 Frank Bug in XSH (rdvk# 84) [prindle.xsh-80] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to the Base WG _____________________________________________________________________________ Page: 588 Line: 18684 Section: mmap() Problem: Elided text relating to MPR option. POSIX.1 allows [ENOTSUP] if MAP_PRIVATE is specified for implementations not supporting memory protection. Action: Restore elided text, shade and mark MPR (a curious use of shading, since the text describes semantics associated with MPR, but true only if MPR is NOT supported). Add optional error [ENOTSUP] for the case where MAP_PRIVATE is not supported. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 191 Frank Bug in XSH (rdvk# 83) [prindle.xsh-79] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to the Base WG _____________________________________________________________________________ Page: 588 Line: 18691-18692 Section: mmap() Problem: The optional error condition stated here ([EINVAL] if MAP_FIXED not supported) is not listed in the ERRORS section. Furthermore, POSIX.1 requires [ENOTSUP] for this condition. Why the change? Action: Add optional error [ENOTSUP] for the case where MAP_FIXED is not supported. Change [EINVAL] here to [ENOTSUP]. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 192 Frank Bug in XSH (rdvk# 79) [prindle.xsh-75] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: change "unspecified" to "implementation-dependent" _____________________________________________________________________________ Page: 588 Line: 18694 Section: mmap() Problem: In POSIX, the effect of addr on pa when MAP_FIXED is not set is "implementation defined". Here it is "unspecified". I can't quite remember why this was changed or if it was unintentional. Action: Either change "unspecified" to "implementation-dependent" (if unintentional change) or shade and mark "unspecified" as MAN (see [prindle.xsh-5]) or XSI and update the Issue 5 or 6 change history accordingly. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 193 Frank Bug in XSH (rdvk# 80) [prindle.xsh-76] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Use MAN markings to show this new requirement on POSIX implementations _____________________________________________________________________________ Page: 588 Line: 18701 Section: mmap() Problem: See also page 595 line 18961 section mprotect(). See also page 624 line 19773 section msync(). See also page 628 line 19871 section munmap(). This paragraph in this draft is more restrictive than the corresponding paragraph in POSIX.1. Namely, this paragraph requires page alignment, while POSIX.1 allowed page alignment but suggested that future amendments would disallow implementations from imposing a page alignment requirement. Action: Either restore the paragraph from POSIX.1 and make the corresponding [EINVAL] optional; or (if there is rationale for the change and it is included in RATIONALE) mark the current paragraph MAN (see [prindle.xsh-5]) or XSI and update the Issue 6 change history accordingly. Note: for mprotect() and msync(), it was already marked MAN and appears in the change history, but there is still no rationale to depart from the expected POSIX direction. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 194 Frank Bug in XSH (rdvk# 235) [prindle.xsh-231] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 588 Line: 18711 Section: mmap() Problem: The word "deliver" should be "generate". This is a P1003.1n issue. Action: Change "deliver" to "generate". Shade and mark MAN. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 195 donn@interix.com BUG in XSH (rdvk# 331) [DT-XSH-88] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_of_196 Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 589 Line: 18723 Section: mmap Problem: I don't believe the intent is to allow the file time stamps to never be updated. Action: Replace last sentence with "If there is no such call, these fields shall be marked for update at some time after a write reference and before the final munmap() of the region or process termination, and if the underlying file is modified as a result." _____________________________________________________________________________ objection Enhancement Request Number 196 Frank Bug in XSH (rdvk# 236) [prindle.xsh-232] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 589 Line: 18723-18724 Section: mmap() Problem: The last sentence of the paragraph is unclear. This is a P1003.1n issue. Action: Change the last sentence to: "If there is no such call and if the underlying file is modified as a result of a write reference, then these fields shall be marked for update at some time after the write reference." Shade and mark MAN. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 197 Frank Bug in XSH (rdvk# 82) [prindle.xsh-78] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 589 Line: 18748-18749 Section: mmap() Problem: This error condition is identical to POSIX, so it shouldn't be shaded. Action: Unshade a remove margin code for 2nd EINVAL. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 198 Frank Bug in XSH (rdvk# 89) [prindle.xsh-85] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 610 Line: all Section: mp Problem: See also page 860 line all section rewinddir(). This page is blank. Action: I assume there is an extraneous blank line or page break in the source. Remove it. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 199 donn@interix.com BUG in XSH (rdvk# 332) [DT-XSH-89] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 593 Line: 18919 Section: modf Problem: It would be helpful to state the identity this represents. Action: Add "This function computes the function result and *iptr such that: a = modf(x, &iptr) x == a+iptr allowing for the usual floating point inaccuracies." _____________________________________________________________________________ Comment Enhancement Request Number 200 donn@interix.com BUG in XSH (rdvk# 333) [DT-XSH-90] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: The text is not a complete duplication. The group felt for clarity of requirement for users that it does need to be specified in both places. _____________________________________________________________________________ Page: 595 Line: 18953 Section: mprotect Problem: This paragraph is long and complex, and is replicated in mmap(). For conciseness, but far more importantly to avoid duplication of the same specification that could get out of sync, replace with a reference. Action: Change to: "The actual protections that an implementation may apply in response to this request are described under mmap()." _____________________________________________________________________________ comment Enhancement Request Number 201 Frank Bug in XSH (rdvk# 85) [prindle.xsh-81] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: (change to mmap page) move the corresponding paragraph in mmap() lines 18734-18736 into the DESCRIPTION _____________________________________________________________________________ Page: 595 Line: 18964-18965 Section: mprotect() Problem: This paragraph appears in the RETURN VALUE section in POSIX, and a corresponding paragraph appears in the return value section in mmap() in this draft. Action: Be consistent. Either move the corresponding paragraph in mmap() lines 18734-18736 into the DESCRIPTION, or move this one back into RETURN VALUE. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 202 Frank Bug in XSH (rdvk# 86) [prindle.xsh-82] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 604 Line: 19228-19231 Section: mq Problem: The text here in the APPLICATION USAGE section is curiously a misplaced copy of text from the RATIONALE section of the msync() function. Action: Replace this text by "None." as in Issue 5. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 203 Frank Bug in XSH (rdvk# 87) [prindle.xsh-83] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: check for missing rationale (mq_open) _____________________________________________________________________________ Page: 604 Line: 19246 Section: mq Problem: Says here "Rationale is added". It isn't. Action: Locate the wayward rationale and add it or delete this line. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 204 Frank Bug in XSH (rdvk# 88) [prindle.xsh-84] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Move to app usage _____________________________________________________________________________ Page: 608 Line: 19353-19354 Section: mq Problem: This doesn't look like rationale to me. Action: Move to Description or, perhaps, Application Usage section. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 205 donn@interix.com BUG in XSH (rdvk# 334) [DT-XSH-91] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the proposed action is out of scope, this is an XSI extension _____________________________________________________________________________ Page: 614 Line: 19462 Section: msgctl Problem: The system V messaging stuff is now redundant with the similar functions provided by POSIX.4 (or .1?), and should be removed. Action: Delete msg*() interfaces. _____________________________________________________________________________ editorial Enhancement Request Number 206 Frank Bug in XSH (rdvk# 90) [prindle.xsh-86] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: This is issue 4 change history that reflects history _____________________________________________________________________________ Page: 615 Line: 19526 Section: msgctl() Problem: See also page 619 line 19672 section msgrcv(). See also page 622 line 19758 section msgsnd(). Reference to IEEE 1003.4 is wrong. Action: Change to ISO POSIX-1. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 207 Frank Bug in XSH (rdvk# 91) [prindle.xsh-87] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: replace MF SIO with "MF & SIO" _____________________________________________________________________________ Page: 624 Line: 19765 Section: msync() Problem: Margin code "MF SIO" perhaps would be clearer if written "MF&SIO". Action: Replace "MF SIO" with "MF&SIO" unless there is some convention that I messed where "blank" means "and". ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 208 Frank Bug in XSH (rdvk# 92) [prindle.xsh-88] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: remove APP USAGE replace with None _____________________________________________________________________________ Page: 628 Line: 19890-19891 Section: munmap() Problem: These two lines are not Application Usage, nor are they correct. Action: Remove these lines. Add, if desired, to Change History Issue 6, but make EX be MAN (see [prindle.xsh-5]). ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 209 Frank Bug in XSH (rdvk# 94) [prindle.xsh-90] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 636 Line: 20124-20126 Section: nice() Problem: These lines should be (by convention, and as in getpriority()) in DESCRIPTION. Action: Move to DESCRIPTION. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 210 Frank Bug in XSH (rdvk# 99) [prindle.xsh-95] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 640 Line: 20240 Section: open() Problem: The statement here "If O_CREAT is not set, the effect is undefined." is a bit misleading due to elided words from POSIX.1. Action: Replace with "If O_EXCL is set and O_CREAT is not set, the result is undefined." (As it was in POSIX.1). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 211 Frank Bug in XSH (rdvk# 100) [prindle.xsh-96] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 641 Line: 20265-20266 Section: open() Problem: See also page 1225 line 37369-37370 section write(). These lines are dependent on the synchronized I/O option. Action: Shade and use margin code SIO (as with previous paragraph). ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 212 donn@interix.com BUG in XSH (rdvk# 336) [DT-XSH-93] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: the concensus of the group is to keep both, with poll as an XSI extension _____________________________________________________________________________ Page: 660 Line: 20766 Section: poll Problem: Duplication, poll() vs. select(). Although in general I object to duplication of functionality, I find myself in a difficult position on this one: is the duplication here justified? It might be. Although select is probably in somewhat wider usage, poll is a bit more flexible. Action: Poll (sorry) the membership as to whether it makes sense to delete one or the other, or keep both. _____________________________________________________________________________ objection Enhancement Request Number 213 Frank Bug in XSH (rdvk# 102) [prindle.xsh-98] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the ERANGE error is ok _____________________________________________________________________________ Page: 665 Line: 20951,20955-20957 Section: pow() Problem: To the best of my knowledge (not having a real ISO C standard), no math function requires that errno be set, only that it may be set. Action: If errno IS set to [ERANGE] on line 20951, that is an ISO C extension and should be coded CX (see also [prindle.xsh-0] and [prindle.xsh-12]). Otherwise make line 20951 be a MAY and delete 20955-20957. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 214 Frank Bug in XSH (rdvk# 103) [prindle.xsh-99] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Add a reviewers note that P1003.1n proposes that the only #include be #include , this may cause applications to break who had followed the interpretation _____________________________________________________________________________ Page: 669 Line: 21001-21002 Section: pthread Problem: Part 1: Why keep the requirement for when it has been removed from virtually every other function synopsis? Part 2: I realize it may not have been the intention of this draft, but lest it get forgotten, the next draft would be a good time to fix this anomaly and make these two lines just "#include " as they should have been all along. This is a P1003.1n issue. Action: Replace these two lines by "#include ". ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 215 Frank Bug in XSH (rdvk# 104) [prindle.xsh-100] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: See markup copy, split into two cases for each function, for the pthread_attr_getdetachstate fn, can->shall, for the pthread_attr_setdetachstate fn, can->must _____________________________________________________________________________ Page: 674 Line: 21196 Section: pthread Problem: The definition of the word "can" in section 1.4 is clearly contradictory. Its application here to imply "must" or "shall" conveys the wrong information, regardless of its definition (see [prindle.xsh-22].) A shall is very explicit, both for setting (the caller shall input a valid value) and getting (the implementation shall output a valid value). Action: Replace "can" by "shall". Consider this a global concern about the use of the word "can" in general. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 216 Frank Bug in XSH (rdvk# 241) [prindle.xsh-237] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Do nothing , since the pthread.h manpage is normative in this document. _____________________________________________________________________________ Page: 674 Line: 21196-21200 Section: pthread Problem: Where are PTHREAD_CREATE_DETACHED and PTHREAD_CREATE_JOINABLE defined? This is a P1003.1n issue. Action: Clarify they are defined in . Shade and mark MAN. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 217 Frank Bug in XSH (rdvk# 109) [prindle.xsh-105] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: add the "This function shall not return an error code of [EINTR]" statement to to every pthread_* function where it doesn't occur at the moment _____________________________________________________________________________ Page: 674 Line: 21209 Section: pthread Problem: See also all pthread_* functions. This line is extraneous information, since it is already stated in section 3.3 lines 1221-1222. However, if it is desired here for emphasis, then it should appear in the ERRORS section of every pthread_* function. Action: Either delete this line from every pthread_* function where it appears, or add it (suitably modified) to every pthread_* function where it doesn't appear. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 218 Frank Bug in XSH (rdvk# 105) [prindle.xsh-101] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 676 Line: 21247-21252 Section: pthread Problem: These lines are not normative, they are rationale. Action: Move to RATIONALE section. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 219 Frank Bug in XSH (rdvk# 106) [prindle.xsh-102] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to Base WG _____________________________________________________________________________ Page: 677 Line: 21275 Section: pthread Problem: This error is a break with the other pthread_attr_*et*() functions, which are not normally required to detect an invalid attribute object. POSIX only requires this error when the object is used, not when it is being modified/queried. However, it's not a bad idea, if it were consistent. In fact, during this revision, if the potential for breakage does not scuttle it, all attribute manipulations (even those introduced by amendments) ought to detect and return the same fundamental set of error conditions, those that can be detected before the attribute object is actually used. Action: Remove this error (for consistency with POSIX); or (more difficult, introducing possible breakage) modify all the *attr_*et*() functions to be required to detect an invalid attr. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 220 Frank Bug in XSH (rdvk# 107) [prindle.xsh-103] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to Base WG _____________________________________________________________________________ Page: 677 Line: 21276-21277 Section: pthread Problem: I don't understand the difference between these two errors. I don't think there is one as currently stated. What I suspect is that one of these should apply only to the "set" function and should say guardsize contains an invalid value; and that the other should apply only to the "get" function, should be optional (may), and should say guardsize is an invalid pointer. Unfortunately, this opens a real can of worms regarding all the other "attribute" get/set functions throughout the document. The conservative approach is suggested below. Action: Delete line 21277. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 221 Frank Bug in XSH (rdvk# 108) [prindle.xsh-104] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 678 Line: 21318 Section: pthread Problem: See also page 680 line 21360. See also page 681 line 21403. See also page 683 line 21447. Since these functions were broken up, using the proper names of the attribute being set in each case would be more readable (what is here is ambiguous, since it could apply to either of two objects). Action: Change the error description to "The value of inheritsched was not valid." Perform the corresponding fix in the other places. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 222 jzepeda@cup.hp.com Bug in XSH (rdvk# 425) {2} Tue, 13 Jul 1999 15:22:11 -0700 (PDT) _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 681 Line: 21392 Section: pthread Problem: The sentence "The pthread_attr_setschedpolicy() and pthread_attr_getschedpolicy(), functions, respectively, get and set the schedpolicy attribute in the attr argument" has the incorrect order. Action: The sentence should be "The pthread_attr_getschedpolicy() and pthread_attr_setschedpolicy(), functions, respectively, get and set the schedpolicy attribute in the attr argument." _____________________________________________________________________________ objection Enhancement Request Number 223 Frank Bug in XSH (rdvk# 110) [prindle.xsh-106] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 685 Line: 21473,21507 Section: pthread Problem: See also page 694 line 21609 section pthread_attr_setstackaddr(). The margin code on this line is wrong. It should be THR&TSA. The change history is wrong. It should be {_POSIX_THREADS} and {_POSIX_THREAD_ATTR_STACKADDR}. Action: Change margin code to THR&TSA. Add after {_POSIX_THREADS}: "and {_POSIX_THREAD_ATTR_STACKADDR}". ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 224 jzepeda@cup.hp.com Bug in XSH (rdvk# 426) {3} Tue, 13 Jul 1999 15:22:11 -0700 (PDT) _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 685 Line: 21479 Section: pthread Problem: The sentence "The pthread_attr_setstackaddr() and pthread_attr_getstackaddr(), functions, respectively, get and set the thread creation stackaddr attribute in the attr object." has the incorrect order. Action: The sentence should be "The pthread_attr_getstackaddr() and pthread_attr_setstackaddr(), functions, respectively, get and set the thread creation stackaddr attribute in the attr object." _____________________________________________________________________________ Objection Enhancement Request Number 225 jzepeda@cup.hp.com Bug in XSH (rdvk# 427) {4} Tue, 13 Jul 1999 15:22:11 -0700 (PDT) _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Refer to the Base WG _____________________________________________________________________________ Page: 685 Line: 21489 Section: pthread Problem: The error no. 'EINVAL' is not returned for invalid attribute. For all the other 'pthread_attr_setxxxx" the EINVAL error no. is returned for invalid attributes. Action: The error no. 'EINVAL' should be returned for pthread_attr_setstackaddr() to maintain the consistency with other pthread_attr_setxxxxx" functions. Replace line 21489 with The pthread_attr_setstackaddr() function may fail if: [EINVAL] The value of the attribute being set is not valid. _____________________________________________________________________________ objection Enhancement Request Number 226 Frank Bug in XSH (rdvk# 111) [prindle.xsh-107] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 686 Line: 21511,21546 Section: pthread Problem: See also page 695 line 21617 section pthread_attr_setstacksize(). The margin code on this line is wrong. It should be THR&TSS. The change history is wrong. It should be {_POSIX_THREADS} and {_POSIX_THREAD_ATTR_STACKSIZE}. Action: Change margin code to THR&TSS. Add after {_POSIX_THREADS}: "and {_POSIX_THREAD_ATTR_STACKSIZE}". ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 227 Frank Bug in XSH (rdvk# 112) [prindle.xsh-108] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 696 Line: 21629 Section: pthread Problem: Need possessive. Action: Change "threads" to "thread's". ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 228 jzepeda@cup.hp.com Bug in XSH (rdvk# 424) {1} Tue, 13 Jul 1999 15:22:11 -0700 (PDT) _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 696 Line: 21640 Section: pthread Problem: Function name is misspelled. _____________________________________________________________________________ editorial Enhancement Request Number 229 Frank Bug in XSH (rdvk# 113) [prindle.xsh-109] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: On page 706 (not 696) Move paragraph to after line 22020. _____________________________________________________________________________ Page: 696 Line: 22012-22015 Section: pthread Problem: Paragraph out of position. Logically (and in POSIX) belongs at end of description. Action: Move paragraph to after line 22020. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 230 donn@interix.com BUG in XSH (rdvk# 337) [DT-XSH-94] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 698 Line: 21696 Section: pthread Problem: I think a language cleanup changed meaning, again. The probable deletion of a "shall" allowed a "may" to span too far. Action: "These functions..." -> "These functions may be implemented as macros. They must appear as statements, and in pairs within the same lexical scope." _____________________________________________________________________________ comment Enhancement Request Number 231 Frank Bug in XSH (rdvk# 114) [prindle.xsh-110] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: move to examples _____________________________________________________________________________ Page: 707-708 Line: 22049-22087 Section: pthread Problem: This is prime material to be moved to the EXAMPLES section. In other cases, the boundary is less clear. (Perhaps these two sections should be merged if we aren't going to provide an example usage for every function.) Action: Move to EXAMPLES. Consider alternatives to present EXAMPLES/RATIONALE sections. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 232 Frank Bug in XSH (rdvk# 115) [prindle.xsh-111] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 711 Line: 22123 Section: pthread Problem: Missing argument names in synopsis. Apparently the corrigenda referenced on line 22310 were applied incorrectly! Action: Add "cond" before comma, and "mutex" before closing ). ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 233 Frank Bug in XSH (rdvk# 116) [prindle.xsh-112] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: there was no concensus for the change, leave as is. _____________________________________________________________________________ Page: 711 Line: 22129-22130 Section: pthread Problem: The wording regarding the phrase atomically that were added here (to POSIX) should at least be shaded and marked MAN. Although they do not seem to introduce a new requirement, they appear to generalize an existing requirement. Action: Shade new wording regarding "atomically" and mark MAN (but see [prindle.xsh-5]). ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 234 Frank Bug in XSH (rdvk# 117) [prindle.xsh-113] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 712 Line: 22184-22193 Section: pthread Problem: This application usage appears to be located in the wrong function. Action: Move these lines to pthread_cond_broadcast() page. Delete change history note that says these lines were added (line 22312 on page 715). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 235 Frank Bug in XSH (rdvk# 118) [prindle.xsh-114] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 719,720 Line: 22376,22425 Section: pthread Problem: See also page 722 line 22437 section pthread_condattr_setpshared(). See also page 769,770 line 23895,23941 section pthread_mutexattr_getpshared(). See also page 776 line 24044 section pthread_mutexattr_setpshared(). The margin code on this line is wrong. It should be THR&TSH. The change history is wrong. It should be {_POSIX_THREADS} and {_POSIX_THREAD_PROCESS_SHARED}. Action: Change margin code to THR&TSH. Add after {_POSIX_THREADS}: "and {_POSIX_THREAD_PROCESS_SHARED}". ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 236 donn@interix.com BUG in XSH (rdvk# 338) [DT-XSH-95] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 731 Line: 22699 Section: pthread Problem: There's a (English) tense problem here, leading to a potential ambiguity, particularly when translated. Action: "was never called." -> "had never been called". _____________________________________________________________________________ Comment Enhancement Request Number 237 donn@interix.com BUG in XSH (rdvk# 339) [DT-XSH-96] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: the group feels that the text is ok as is, and no change is required. _____________________________________________________________________________ Page: 737 Line: 22866 Section: pthread Problem: Possible non-sequeteur. Action: I'm not sure whether this statement belongs here or elsewhere where it is more likely to be seen. Is there a better place (pthreads experts?) _____________________________________________________________________________ objection Enhancement Request Number 238 Frank Bug in XSH (rdvk# 119) [prindle.xsh-115] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 737 Line: 22867 Section: pthread Problem: _POSIX_THREAD_THREADS_MAX is the incorrect constant in this context. Action: Change to PTHREAD_THREADS_MAX (which is correct in POSIX.1, and reflects the actual maximum number of threads per process, not the minimum number). ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 239 donn@interix.com BUG in XSH (rdvk# 340) [DT-XSH-97] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: The group requests that Donn asks the experts and then resubmits for the next draft _____________________________________________________________________________ Page: 740 Line: 22969 Section: pthread Problem: Is it reasonable to require that the number of non-NULL destructor values decrease with each one, n or PTHREAD_DESTRUCTOR_INTERACTIONS or a loop is declared and the process of calling destructors stopped as a lost cause. Action: Ask experts. _____________________________________________________________________________ objection Enhancement Request Number 240 Frank Bug in XSH (rdvk# 234) [prindle.xsh-230] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject__X__ Rationale for rejected or partial changes: this is being handled consistently the other way (we have the header as a normative man page) _____________________________________________________________________________ Page: 747 Line: 23196 Section: pthread Problem: See also page 706 line 22013 section pthread_cond_destroy(). Where are PTHREAD_MUTEX_INITIALIZER and PTHREAD_COND_INITIALIZER defined? This is a P1003.1n issue. Action: Add "(defined in )" after PTHREAD_MUTEX_INITIALIZER and PTHREAD_COND_INITIALIZER. Shade and mark MAN. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 241 Frank Bug in XSH (rdvk# 120) [prindle.xsh-116] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: remove this error. add some appropriate CH regarding reqts on POSIX conforming implementations _____________________________________________________________________________ Page: 752 Line: 23400-23401 Section: pthread Problem: If the implementation provides the functions (regardless of whether _POSIX_THREAD_PRIO_PROTECT is defined or not), they must function as in the description, and therefore the priority ceiling protocol for mutexes is supported by the implementation. Therefore, this ENOSYS could never be returned. This appears to be an anomaly in POSIX. Action: Strike through this error and mark the deletion MAN (but see [prindle.xsh-5]). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 242 Frank Bug in XSH (rdvk# 121) [prindle.xsh-117] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: add additional CH as to why the text was deleted _____________________________________________________________________________ Page: 755 Line: 23449 Section: pthread Problem: There are words from POSIX that were deleted here due to the Aspen threads additions which follow. Action: Restore the deleted code shaded, struck-through, and marked XSI. Struck through text that loses the XSI designation in a later draft can then be deleted, but needs to be retained if XSI functionality remains optional. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 243 Frank Bug in XSH (rdvk# 122) [prindle.xsh-118] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: need to document that ENOSUP has gone and why in the CH / Rationale _____________________________________________________________________________ Page: 765 Line: 23794 Section: pthread Problem: Currently POSIX requires implementations to return [ENOTSUP] for these functions if the value of the protocol argument is not supported. But this appears to be an error in POSIX.1 since these functions have no such argument. Action: Add back in the POSIX [ENOTSUP] error with strike-through and marked MAN (but see [prindle.xsh-5].) ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 244 Frank Bug in XSH (rdvk# 123) [prindle.xsh-119] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 767 Line: 23832,23833 Section: pthread Problem: PTHREAD_PRIO_INHERIT is only valid if TPI option supported, PTHREAD_PRIO_PROTECT is only valid if the TPP option supported. Action: Shade PTHREAD_PRIO_INHERIT margin coded TPI, and shade PTHREAD_PRIO_PROTECT margin coded TPP. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 245 Frank Bug in XSH (rdvk# 124) [prindle.xsh-120] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 767 Line: 23836-23839 Section: pthread Problem: These lines describe semantics which only apply if the TPI option is supported. Action: Shade this paragraph and margin code TPI. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 246 Frank Bug in XSH (rdvk# 125) [prindle.xsh-121] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 767 Line: 23840-23843 Section: pthread Problem: These lines describe semantics which only apply if the TPP option is supported. Action: Shade this paragraph and margin code TPP. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 247 Frank Bug in XSH (rdvk# 126) [prindle.xsh-122] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 767 Line: 23844,23845,23848 Section: pthread Problem: The names of the protocols in this paragraph on these lines are missing the leading "PTHREAD_" used everywhere else in this section. This was an editorial glitch in POSIX. Action: Insert "PTHREAD_" in front of every "PRIO..." in this paragraph, shade, and mark MAN (but see [prindle.xsh-5].) ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 248 jzepeda@cup.hp.com Bug in XSH (rdvk# 428) {5} Tue, 13 Jul 1999 15:22:11 -0700 (PDT) _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_of_247 Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 767 Line: 23844-23849 Section: pthread Problem: Protocol attribute names is inconsistent with names used in other places in this page. Action: Change names to PTHREAD_PRIO_INHERIT and PTHREAD_PRIO_PROTECT from PRIO_INHERIT and PRIO_PROTECT respectively. _____________________________________________________________________________ Comment Enhancement Request Number 249 donn@interix.com BUG in XSH (rdvk# 341) [DT-XSH-98] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the group requests that a interp request be filed. this could then bring this into scope _____________________________________________________________________________ Page: 767 Line: 23844 Section: pthread Problem: This paragraph refers to "moving to the end of the scheduling queue", which I presume refers to line 26741 of sched_setparam(), but with which it shares no common terminology. As worded, this sets things up for an interpretation request. Action: Instead of "moving to the tail of the scheduling queue"... Change (starting at the *): "While a thread is holding...protocol attributes *is not subject to the requirement that it resume execution after all other runnable processes at equal or greater priority have been scheduled to run as required by sched_setparam() and similar calls". (2 places). Also, add at 26742: "except as specified under pthread_mutexattr_getprotocol()". _____________________________________________________________________________ objection Enhancement Request Number 250 Frank Bug in XSH (rdvk# 127) [prindle.xsh-123] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Shade this paragraph and margin code TPI. Remove the phrase "the symbol _POSIX_THREAD_PRIO_INHERIT is defined and". Move paragraph after line 23839. _____________________________________________________________________________ Page: 767 Line: 23852-23859 Section: pthread Problem: This paragraph describe semantics which only apply if the TPI option is supported. Also, they contain an "if" to that effect, while current style dictates that that if be removed and shading/margin code be used to show the option dependency. Note that this paragraph expands the semantics described more tersely on lines 23836-23839, and more properly belongs after that paragraph (perhaps some merging of the concepts in these two slightly redundant paragraphs is in order). Clearly priority inheritance protocol is more difficult to describe than priority protection protocol, but does it need all this? Action: Shade this paragraph and margin code TPI. Remove the phrase "the symbol _POSIX_THREAD_PRIO_INHERIT is defined and". Move paragraph after line 23839. Consider rewording/merging these two paragraphs without losing any semantics. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 251 Frank Bug in XSH (rdvk# 128) [prindle.xsh-124] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 768 Line: 23865 Section: pthread Problem: The [ENOTSUP] error applies only to pthread_mutexattr_setprotocol(), not the get (because the value in the recepticle is of no consequence - it will be overwritten with a supported protocol.) This appears to be a bug in POSIX.1 and changing it shouldn't affect any implementations. Action: Strike-through "pthread_mutexattr_getprotocol()", mark the strike-through MAN (see [prindle.xsh-5]), and change "functions fail" to "function fails". ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 252 jzepeda@cup.hp.com Bug in XSH (rdvk# 429) {6} Tue, 13 Jul 1999 15:22:11 -0700 (PDT) _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 768 Line: 23868 Section: pthread Problem: typo: or is misspelled as ro. Action: change ro to or. _____________________________________________________________________________ objection Enhancement Request Number 253 Frank Bug in XSH (rdvk# 233) [prindle.xsh-229] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: see ERN 240 _____________________________________________________________________________ Page: 769 Line: 23905-23911 Section: pthread Problem: See also page 719 line 33286 section pthread_condattr_getpshared(). Where are PTHREAD_PROCESS_SHARED and PTHREAD_PROCESS_PRIVATE defined? This is a P1003.1n issue. Action: Clarify they are defined in . Shade and mark MAN. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 254 Frank Bug in XSH (rdvk# 129) [prindle.xsh-125] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 772 Line: 23991 Section: pthread Problem: The first [EINVAL] error applies only to pthread_mutexattr_settype(), not the get (because the value in the recepticle is of no consequence - it will be overwritten with a valid type.) This change should not affect any implementations. Action: Delete "pthread_mutexattr_gettype() and", and change "functions fail" to "function fails". ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 255 jzepeda@cup.hp.com Bug in XSH (rdvk# 430) {7} Tue, 13 Jul 1999 15:22:11 -0700 (PDT) _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to Base WG _____________________________________________________________________________ Page: 778 Line: 24081 Section: pthread Problem: No error is returned for invalid parameters. This is inconsistent with other interfaces. Validation is always done in other interfaces. Action: Replace line 24081 with: The pthread_once() function may fail if: [EINVAL] if either once_control or init_routine is invalid. _____________________________________________________________________________ Objection Enhancement Request Number 256 donn@interix.com BUG in XSH (rdvk# 342) [DT-XSH-99] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_of_257 Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 780 Line: 24132 Section: pthread Problem: What is the relationship between this and the reader/writer locks in .1j. Action: Delete these, use approved .1j text. _____________________________________________________________________________ comment Enhancement Request Number 257 Frank Bug in XSH (rdvk# 130) [prindle.xsh-126] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: add a reviewers note : "the reader/writer lock specifications are subject to change if/when .1j is approved" _____________________________________________________________________________ Page: 780-796 Line: 24132-24552 Section: pthread Problem: These functions, with somewhat different semantics, may be introduced into this revision if P1003.1j is approved in time, and these functions will need to be revised to conform to that standard. Even if not approved in time, the ballot group is moving these interfaces in specific directions, addressing priority inversion and starvation issues differently, and it would be wise to adapt to the .1j semantics eventually anyway to satisfy the majority of the balloters (assuming similar makeup of the .1 revision ballot group.) Action: Enumerate the differences from these functions in .1j, and migrate toward the .1j semantics (long term). ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 258 jzepeda@cup.hp.com Bug in XSH (rdvk# 431) {8} Tue, 13 Jul 1999 15:22:11 -0700 (PDT) _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 781 Line: 24177 Section: pthread Problem: "The value specified by attr is invalid" should be "The value specified by rwlock is invalid" Action: change attr to rwlock _____________________________________________________________________________ Objection Enhancement Request Number 259 jzepeda@cup.hp.com Bug in XSH (rdvk# 432) {9} Tue, 13 Jul 1999 15:22:11 -0700 (PDT) _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to Base WG _____________________________________________________________________________ Page: 781 Line: 24187 Section: pthread Problem: Should pthread_rwlock_init() also return [EINVAL] if argument rwlock is invalid? Action: Add after line 24187: [EINVAL] The value specified by rwlock is invalid. _____________________________________________________________________________ objection Enhancement Request Number 260 Frank Bug in XSH (rdvk# 131) [prindle.xsh-127] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: refer to Base WG _____________________________________________________________________________ Page: 803 Line: 24675-24676 Section: pthread Problem: The paraphrasing of POSIX.1 that occurs here introduces additional semantics. A function capable of sending a signal to a specific process or thread includes pthread_kill(), while POSIX.1 excludes that function. It appears, at first glance, that Action: Either restore the original POSIX wording (excluding pthread_kill()); or shade the phrase "a function ... thread." and mark it XSI or MAN, as appropriate (see [prindle.xsh-5].) ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 261 Frank Bug in XSH (rdvk# 133) [prindle.xsh-129] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the text as is is intentional, the mean differs _____________________________________________________________________________ Page: 816 Line: 24986,25009 Section: puts Problem: Curiously, my references (not exactly ISO C) would seem to indicate that ISO C uses the phrase "null character". Action: Replace "null byte" by "null character" unless there is justification for deviating from ISO C. If there is, the word "byte" needs to be shaded and marked CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 262 Frank Bug in XSH (rdvk# 132) [prindle.xsh-128] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 816 Line: 24992 Section: puts() Problem: My references seem to indicate that ISO C does not address puts() setting errno. The fputs() function has this shaded and marked CX. Action: Shade ", and errno is set to indicate the error" and mark CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 263 donn@interix.com BUG in XSH (rdvk# 343) [DT-XSH-100] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: accept, mark CX, add rationale that the term "thread" is an extension to ISO C _____________________________________________________________________________ Page: 822 Line: 25140 Section: raise Problem: Should "executing thread" have "thread" marked in grey? The C standard doesn't know from threads that I know of. Action: Mark in grey. _____________________________________________________________________________ objection Enhancement Request Number 264 Frank Bug in XSH (rdvk# 232) [prindle.xsh-228] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Change CX margin code to THR (we'll need to make it clear on the codes page that all codes are extensions to ISO C for interfaces that occur in the C standard) _____________________________________________________________________________ Page: 822 Line: 25142 Section: raise() Problem: This is true only if the THR option is supported. This is a P1003.1n issue. Action: Change "CX" margin code to "THR". Shade and mark MAN. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 265 Frank Bug in XSH (rdvk# 134) [prindle.xsh-130] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 823 Line: 25185 Section: rand() Problem: These lines are an extension to ISO C. Action: Shade and mark CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 266 donn@interix.com BUG in XSH (rdvk# 344) [DT-XSH-101] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: the editors will decide this one appropriately _____________________________________________________________________________ Page: 827 Line: 25282 Section: read Problem: English issue; I think "effects" is more precise. Action: "results" -> "effects". _____________________________________________________________________________ objection Enhancement Request Number 267 Frank Bug in XSH (rdvk# 135) [prindle.xsh-131] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the text is ok as is, its not a POSIX extension _____________________________________________________________________________ Page: 827 Line: 25305-25308 Section: read() Problem: These lines (starting with "For example" in the case of line 25305) are an extension to POSIX. Action: Shade and mark XSI or MAN as appropriate. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 268 Frank Bug in XSH (rdvk# 140) [prindle.xsh-136] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: This is not necessary _____________________________________________________________________________ Page: 828 Line: 25315-25318 Section: read() Problem: These lines were added to POSIX.1 as a result of the FIPS requirement. Action: Shade and mark MAN to conform with the Issue 6 change history. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 269 Frank Bug in XSH (rdvk# 136) [prindle.xsh-132] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: The FIPS changes are not for debate. _____________________________________________________________________________ Page: 829 Line: 25382-25383 Section: read() Problem: See also page 1223 line 37292-37293 section write(). Text was elided here from POSIX to meet the FIPS requirement. This creates confusion among readers of this draft. Action: Restore elided text, strike-through, shade, and mark MAN. Generally, this should be done for all changes resulting from applying FIPS, throughout the document. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 270 Frank Bug in XSH (rdvk# 137) [prindle.xsh-133] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 830 Line: 25404-25409 Section: read() Problem: All of these lines are also XSI extension related. Action: Shade and code XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 271 donn@interix.com BUG in XSH (rdvk# 345) [DT-XSH-102] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 830 Line: 25426 Section: read Problem: common usage is dead. Action: delete parenthetical "(and not...". _____________________________________________________________________________ comment Enhancement Request Number 272 Frank Bug in XSH (rdvk# 138) [prindle.xsh-134] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete l 25451-25456 _____________________________________________________________________________ Page: 831 Line: 25451-25456 Section: read() Problem: What to do about this rationale regarding select(). Action: I don't see anything wrong with just deleting it. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 273 donn@interix.com BUG in XSH (rdvk# 346) [DT-XSH-103] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 831 Line: 25455 Section: read Problem: Obsolete rationale. Action: delete paragraph. _____________________________________________________________________________ comment Enhancement Request Number 274 Frank Bug in XSH (rdvk# 139) [prindle.xsh-135] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete existing 2 paragraphs from rationale 25457-25466 _____________________________________________________________________________ Page: 831 Line: 25457-25466 Section: read() Problem: This rationale does not match the FIPS requirement for partial transfers on interrupted read(). Action: Replace this rationale with rationale on why this was made mandatory for FIPS. Is this documented somewhere? ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 275 donn@interix.com BUG in XSH (rdvk# 347) [DT-XSH-104] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_of_274 Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 831 Line: 25463 Section: read Problem: Line 25317 disagrees with this handwave. Line 25317 is right. Action: Delete his paragraph (and any similar). _____________________________________________________________________________ Objection Enhancement Request Number 276 donn@interix.com BUG in XSH (rdvk# 348) [DT-XSH-105] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 834 Line: 25542 Section: readdir Problem: Make part of the main standard. (Drop XSI, shading.) Action: As above. _____________________________________________________________________________ objection Enhancement Request Number 277 Frank Bug in XSH (rdvk# 141) [prindle.xsh-137] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 834 Line: 25542 Section: readdir() Problem: The POSIX.1 requirement that readdir() not return directory entries containing empty names was deleted here (probably unintentionally). Action: Restore "The readdir() function shall not return directory entries containing empty names." ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 278 donn@interix.com BUG in XSH (rdvk# 349) [DT-XSH-106] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject__X__ Rationale for rejected or partial changes: the proposed action is not in scope, this is an XSI function _____________________________________________________________________________ Page: 834 Line: 25552 Section: readdir Problem: The specification of readdir (and in particular seekdir) appears to mandate a potentially impossible implementation. Consider a VERY large directory on a system using b-trees to create directories. (It's unlikely that any system NOT using b-trees or other such mechanisms could actually support big enough directories, but that only reinforces my point.) If seekdir() is required to return to a specific point in the directory, in the face of possible insertion or deletion of files by other processes (no, let's NOT discuss directory locking), this would seem to imply that a full copy of the directory must be kept in memory. For very large directories, this could be a particularly onerous requirement. (Consider a hosted implementation on a filesystem that tends to be flat rather than deep.) Seekdir was omitted from the original .1 for exactly this reason. Action: Delete seekdir. _____________________________________________________________________________ objection Enhancement Request Number 279 Frank Bug in XSH (rdvk# 142) [prindle.xsh-138] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 834 Line: 25565 Section: readdir() Problem: If readdir() is going to have XSI extension to always return dot and dot-dot if they exist, then readdir_r should have the same extension. Action: Change the last sentence to: "If entries for dot or dot-dot exist, one entry is returned for dot and one entry is returned for dot-dot; otherwise they are not returned." Shade and mark XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 280 Frank Bug in XSH (rdvk# 143) [prindle.xsh-139] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 838 Line: 25671-25672 Section: readlink() Problem: The behavior is incompletely specified (as regards the contents of the symlink being larger than bufsize). Action: Add "If the number of bytes in the symbolic link is greater than bufsize, the first bufsize bytes shall be placed in buf." (This is consistent with .1a, and I assume from the lack of an error for this, that this is consistent with existing implementations). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 281 Frank Bug in XSH (rdvk# 144) [prindle.xsh-140] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 843 Line: 25803 Section: realpath() Problem: The description does not state that the returned pathname is a null-terminated string. It should, because other functions such as readlink() do not store the returned data this way. Action: Add "as a null-terminated string" after "stored". ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 282 donn@interix.com BUG in XSH (rdvk# 350) [DT-XSH-107] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: the line number is 25868 _____________________________________________________________________________ Page: 845 Line: 25858 Section: regcomp Problem: spelling (number). Action: "place" -> "places" _____________________________________________________________________________ Objection Enhancement Request Number 283 donn@interix.com BUG in XSH (rdvk# 351) [DT-XSH-108] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 846 Line: 25923 Section: regcomp Problem: Ambiguity. Literal reading of "but within the substring reported in pmatch[j] rather than the whole string" would seem to imply that the byte offsets are relative to the byte offset of the beginning of pmatch[j]. (See 25905, where it defines the byte offset, and this text then sys "as described in 1 and 2 above".) Action: "but within" -> "but describing the substring found within the substring reported in pmatch[j] rather than within the whole string. The byte offsets are relative to the whole string." (If I've misread the intent, and the byte offsets are to be relative to pmatch[j], as long as the text says that in so many words, that's fine.) _____________________________________________________________________________ Editorial Enhancement Request Number 284 donn@interix.com BUG in XSH (rdvk# 352) [DT-XSH-109] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Add div(), ldiv() to the See Also section. _____________________________________________________________________________ Page: 850 Line: 26080 Section: remainder Problem: This function seems redundant, given the div() function required for ISO C (and deletion would be fine). Action: Delete, or failing that, Add div(), ldiv() to the See Also section. _____________________________________________________________________________ comment Enhancement Request Number 285 Frank Bug in XSH (rdvk# 145) [prindle.xsh-141] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: change name entry to "remove a file" _____________________________________________________________________________ Page: 851 Line: 26086 Section: remove() Problem: Name misnamed. This function removes at most one file. Action: Replace "files" with "file". ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 286 Andries.Brouwer@cwi.nl aardvark food (rdvk# 434) [] Wed, 14 Jul 1999 14:52:08 +0200 (MET DST) _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 854 Line: 26148 Section: rename Problem: It is not clear what "both refer to and both link to" means, if it is not equivalent to "both refer to". This sentence requires unintuitive behaviour, against historical practice, and causes security problems. The actual historical practice makes sure that rename("x","x") does not remove "x", but not that rename("x","x.bak") can succeed in such a way that afterwards both "x" and "x.bak" exist. Action: Change lines 26148-26149 to: If the old argument and the new argument are pathnames with the same final element, and these pathnames refer to the same file, and their path prefixes (the predecessors of the respective final elements, as defined in 2.3.6) refer to the same directory, the rename() function shall return successfully and perform no other action. _____________________________________________________________________________ Editorial Enhancement Request Number 287 donn@interix.com BUG in XSH (rdvk# 353) [DT-XSH-110] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 854 Line: 26148 Section: rename Problem: I think this is editorial, but it may be more than that. Either "both refer to and both link to" is redundant, or it's saying something I'm totally missing. If it's redundant, delete one clause. If not, then this is an objection and since I haven't a clue what IS meant, I can't suggest a fix. Action: Delete one clause (or fix right). _____________________________________________________________________________ Editorial Enhancement Request Number 288 donn@interix.com BUG in XSH (rdvk# 354) [DT-XSH-111] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 854 Line: 26159 Section: rename Problem: We're talking about directories here. (Yeah, I know, a directory is a file, but...). Action: "either to the file" -> "either to the directory". _____________________________________________________________________________ Editorial Enhancement Request Number 289 donn@interix.com BUG in XSH (rdvk# 355) [DT-XSH-112] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: The editors will resolve appropriately _____________________________________________________________________________ Page: 854 Line: 26160 Section: rename Problem: "Thus" is too far from the reason for the "thus". Action: "Thus..." -> "Because if new names an existing directory, it will be deleted, it must be an empty directory." _____________________________________________________________________________ editorial Enhancement Request Number 290 Frank Bug in XSH (rdvk# 146) [prindle.xsh-142] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 855 Line: 26185,26195 Section: rename() Problem: Shading misplaced. Action: Move shading and accompanying margin codes up one line to encompass these lines in each case. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 291 Frank Bug in XSH (rdvk# 147) [prindle.xsh-143] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Change margin codes to XSI , ensure new errors are consistent _____________________________________________________________________________ Page: 855 Line: 26189,26192,26217-26221 Section: rename() Problem: These lines are also XSI extensions (you have been using CX for extensions introduced by POSIX, XSI for extensions introduced by UNIX.) Action: Change margin codes to XSI (but see [prindle.xsh-12].) ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 292 Andries.Brouwer@cwi.nl aardvark food (rdvk# 433) [] Wed, 14 Jul 1999 14:52:08 +0200 (MET DST) _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 856 Line: 26234 Section: rename Problem: 1. [Editorial] this sentence is incomplete 2. [Objection] If I read the sentence as "The specification that if old and new refer to the same file then no action is taken describes existing, although undocumented 4.3 BSD behaviour", then this sentence is false for 4.4 BSD, and there is no reason to suppose that it is true for 4.3 BSD. Action: Change rationale text to: The specification that if old and new refer to the same file using pathnames with the same final element and with path prefixes referring to the same directory then no action is taken describes existing 4.3 and 4.4 BSD behaviour. It is intended to guarantee that rename("x","x"); does not remove the file. _____________________________________________________________________________ objection Enhancement Request Number 293 Frank Bug in XSH (rdvk# 148) [prindle.xsh-144] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 858 Line: 26302 Section: rename() Problem: This text is normative where it appears in other functions. Action: Move to end of DESCRIPTION section. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 294 Frank Bug in XSH (rdvk# 149) [prindle.xsh-145] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: add "The result of using a directory stream after one of the exec family of functions is undefined." before "After a call.." on line 26325 _____________________________________________________________________________ Page: 859 Line: 26325 Section: rewinddir() Problem: Missing text from POSIX telling that result of using a directory stream after an exec is undefined. Action: Restore missing text from POSIX.1 (before this sentence). ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 295 donn@interix.com BUG in XSH (rdvk# 356) [DT-XSH-113] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the proposed action is out of scope, this is an XSI extension _____________________________________________________________________________ Page: 861 Line: 26359 Section: rindex Problem: Redundant. (Grab bag.) Action: Delete section. _____________________________________________________________________________ Objection Enhancement Request Number 296 donn@interix.com BUG in XSH (rdvk# 357) [DT-XSH-114] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject__X__ Rationale for rejected or partial changes: the spec1170 analysis found this routine in use by some of the top ten applications, hence its inclusion as an XSI extension. _____________________________________________________________________________ Page: 866 Line: 26524 Section: scalb Problem: I have two problems with this page: 1) It's very marginally portably useful (along with ilogb/logb). 2) Given that it is useful, the programmer needs to know r, which is FLT_RADIX as defined in float.h. However, float.h is not included as a required header, and not even referenced in the See Also section. (Neither is ilogb/logb. And conversely for those pages.) Action: Delete it. If that's politically impossible, at least: 1) Explain what it's portably good for (I can't). (I can explain NON portable uses, and "useless portable uses".) 2) Add references to float.h. 3) Add reference to ilogb/logb (and conversely on those pages). _____________________________________________________________________________ comment Enhancement Request Number 297 Frank Bug in XSH (rdvk# 150) [prindle.xsh-146] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Insure that the CH/rationale says why [ESRCH] has been removed. _____________________________________________________________________________ Page: 868 Line: 26588 Section: sched Problem: Currently POSIX requires implementations to return [ESRCH] for these functions if the pid argument is not a valid pid. But this appears to be an error in POSIX.1 since these functions have no such argument. Action: Add back in the POSIX [ESRCH] error with strike-through and marked MAN (but see [prindle.xsh-5].) ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 298 donn@interix.com BUG in XSH (rdvk# 358) [DT-XSH-115] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 872 Line: 26751 Section: schec Problem: I don't understand what "including SCHED_OTHER" is trying to say... if it's just another "or" then it's strangely phrased. If not, I'm completely baffled. Action: Say what it means. _____________________________________________________________________________ Comment Enhancement Request Number 299 donn@interix.com BUG in XSH (rdvk# 359) [DT-XSH-116] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 872 Line: 26762 Section: sched Problem: A reference here is made to "two level scheduling policy". I know what it is, and I vaguely remember reading something about it (possibly in these documents) recently, but I can't find a definition, a index entry, or anything else to tell me what it really means. Action: Add appropriate cross-references if they exist, and create them if they don't exist. _____________________________________________________________________________ objection Enhancement Request Number 300 Frank Bug in XSH (rdvk# 151) [prindle.xsh-147] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 878 Line: 26929-26930 Section: seekdir() Problem: This is an XSI extension. Action: Shade synopsis and margin code XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 301 Frank Bug in XSH (rdvk# 152) [prindle.xsh-148] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 878 Line: 26966-26970 Section: seekdir() Problem: As a result of [prindle.xsh-147], this change history no longer applies. Action: Delete these lines. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 302 Frank Bug in XSH (rdvk# 153) [prindle.xsh-149] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: add reviewers note that this page to be revised when the .1g/XNS5v2 text is merged in _____________________________________________________________________________ Page: 880 Line: 26975 Section: select() Problem: If 1003.1g is approved in time, there will have to be considerable harmonization among this and .1g versions (and XNS version if different). I particular, select() is deprecated and pselect() is supported in .1g. This was significant in POSIX because this was the only function that used struct timeval, while all other POSIX timeouts used struct timespec. Harmonization will now need to account for the fact that several other functions in this document (not deprecated) still use struct timeval. The wording in .1g is also considerably different, as a result of the balloting process. For example, the synopsis includes . Action: If .1g is approved in time, use .1g semantics for this function, including both select() and pselect(). Mark select() LEGACY. Consider whether other uses of struct timeval might also benefit from this treatment. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 303 donn@interix.com BUG in XSH (rdvk# 360) [DT-XSH-117] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below__X__ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Change to "All implementations shall support a maximum timeout interval of at least 31 days." _____________________________________________________________________________ Page: 881 Line: 27019 Section: select Problem: The phrase "On all implementations..." sounds far too much like and observation, and too little like a requirement. "All implementations are required to..." or "All implementations (here comes that dirty word) shall..." is far clearer. Action: Use stricter phrasing suggested above. _____________________________________________________________________________ Comment Enhancement Request Number 304 donn@interix.com BUG in XSH (rdvk# 361) [DT-XSH-118] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 881 Line: 27020 Section: select Problem: (This one is even vaguer than most of my vague ones, but the topic needs to be touched upon, or consciously skipped (probably with rationale)). It's not at all unreasonable for a regular file over a network to not be ready at all times. Since network file systems are not discussed in POSIX (yet, that I know of), it may not be useful to make any requirements in this regard. However, networked file systems ARE quite common, and guidance to the implementor of select (and the user) would help with application portability until they are standardized. Action: One or more of: 1) Add rationale suggesting that select on an ordinary file which is on a networked file system may be in a non-ready condition at some times. 2) Delete this paragraph, or weaken it. ("... although files on certain types of file systems may not always be ready.") 3) Add rationale strengthening it so that networked file systems are explicitly disallowed as an exception. Note: Some of the above are mutually contradictory, so choose wisely. _____________________________________________________________________________ objection Enhancement Request Number 305 Frank Bug in XSH (rdvk# 154) [prindle.xsh-150] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 891 Line: 27356-27361 Section: sem Problem: These lines (ending with the word "unblocked.") are dependent on the PS option. Action: Shade and margin code PS. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 306 donn@interix.com BUG in XSH (rdvk# 362) [DT-XSH-119] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 891 Line: 27385 Section: sem Problem: Does this text belong in a central place that discusses scheduling policy? It would make implementation a lot easier if there were not special cases scattered about. Action: Move to central scheduling policy discussion, replace with "The effects on scheduling of this and other processes are discussed in ______". _____________________________________________________________________________ Comment Enhancement Request Number 307 donn@interix.com BUG in XSH (rdvk# 363) [DT-XSH-120] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept__X__ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 893 Line: 27422 Section: sem Problem: It would probably be helpful to define priority inversion in just one place, rather than repeating it in just about every application usage section where it might happen. It would allow for a better discussion of the topic (although what's here isn't bad) with much less ink. Action: Move existing text to XBD definitions (or extended definitions/concepts) and replace with "Applications using semaphores may be subject to priority inversion, as discussed in ______. Users of semaphores should understand that concept before using them.". _____________________________________________________________________________ Objection Enhancement Request Number 308 donn@interix.com BUG in XSH (rdvk# 364) [DT-XSH-121] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the proposed action is out of scope, these are XSI extensions. We'd welcome specific changesfor the other part of the action. _____________________________________________________________________________ Page: 897 Line: 27498 Section: semctl Problem: Two different semaphore mechanisms!?!?!! Action: Drop these (the System V (extremely) heavyweight ones). If not, at least make it clear there are two kinds of semaphores in the document, and make it blatantly clear which of the two a given page is discussing. Note the comment at P899, l 27582 that would seem to reinforce this. _____________________________________________________________________________ comment Enhancement Request Number 309 Frank Bug in XSH (rdvk# 156) [prindle.xsh-152] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 915 Line: 28010-28047 Section: setlocale() Problem: A succession of departures from ISO C is noticed here. Without an exact ISO C reference, I can't outline all of them. However, there are some wording differences for sure, most likely some semantic difference or vagueness, and mention of "regular expressions" which are not shaded/coded CX. See [prindle.xsh-0] for the more general case. Action: Align this more closely with ISO C, marking all extensions, and using more precise ISO C wording rather than vague generalizations such as "collation functions". ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 310 Frank Bug in XSH (rdvk# 157) [prindle.xsh-153] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 915 Line: 28036 Section: setlocale() Problem: This makes sense only if THR option supported. Action: Shade and mark THR. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 311 donn@interix.com BUG in XSH (rdvk# 365) [DT-XSH-122] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 916 Line: 28058 Section: setlocale Problem: Apparent space in what should be a null string. Action: " " -> "". _____________________________________________________________________________ Comment Enhancement Request Number 312 Jeffrey bug in XSH (rdvk# 437) [Copeland-xsh-1] Wed, 14 Jul 1999 13:55:24 -0600 (MDT) _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 916 Line: 28075-27079 Section: setlocale Problem: The normative text on page 915 discusses LC_MESSAGES, but the rationale doesn't. Action: Add LC_MESSAGES to this list. Also, page 917 line 28103-28104 section setlocale Comment _____________________________________________________________________________ Editorial Enhancement Request Number 313 donn@interix.com BUG in XSH (rdvk# 366) [DT-XSH-123] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the source is ok, looks like a pdf viewer/printer font issue _____________________________________________________________________________ Page: 917 Line: 28127 Section: setlocale Problem: Apparent space in what should be a null string. Action: " " -> "". _____________________________________________________________________________ editorial Enhancement Request Number 314 Frank Bug in XSH (rdvk# 158) [prindle.xsh-154] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 920 Line: 28188,28191 Section: setpgid() Problem: By editorial convention elsewhere, multiple paragraphs for the same error code are each prefixed by that error code. Here that is not done. Action: Add [EPERM] to the beginning of both of these lines. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 315 donn@interix.com BUG in XSH (rdvk# 367) [DT-XSH-124] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Change "Under 4.3BSD. The second", to "Under 4.3BSD the second " (as per POSIX.1) _____________________________________________________________________________ Page: 921 Line: 28218 Section: setpgid Problem: The sentence "Under 4.3 BSD" isn't. (A sentence). Action: I'm not sure how to fix this, because I don't know the intent. _____________________________________________________________________________ Objection Enhancement Request Number 316 donn@interix.com BUG in XSH (rdvk# 368) [DT-XSH-125] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the proposed action is out of scope, its an XSI extension _____________________________________________________________________________ Page: 923 Line: 28262 Section: setpgrp Problem: Duplicates setpgid. Action: Drop it. _____________________________________________________________________________ comment Enhancement Request Number 317 Frank Bug in XSH (rdvk# 159) [prindle.xsh-155] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below__X__ Duplicate_____ Reject_____ Rationale for rejected or partial changes: CX shade "and may set errno" _____________________________________________________________________________ Page: 935 Line: 28550 Section: setvbuf() Problem: Should you add text re setting errno. Certainly, shaded and marked CX just like virtually everywhere else. Action: Answer this question yes. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 318 donn@interix.com BUG in XSH (rdvk# 369) [DT-XSH-126] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept__X__ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete the sentence _____________________________________________________________________________ Page: 939 Line: 28671 Section: shm Problem: But this *is* POSIX! Action: Minimally, delete sentence. Is there more going on here than I see? _____________________________________________________________________________ Objection Enhancement Request Number 319 donn@interix.com BUG in XSH (rdvk# 370) [DT-XSH-127] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 941 Line: 28741 Section: shm Problem: Does reusing the name attach to the old shared memory object? (Of course not). Action: Add text (cribbed from memory from somewhere else): "Even if the object continues to exist after the last shm_unlink(), reuse of the name will cause a new shared memory object to be created." _____________________________________________________________________________ comment Enhancement Request Number 320 Frank Bug in XSH (rdvk# 160) [prindle.xsh-156] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 941 Line: 28758-28761 Section: shm Problem: See also page 987 line 30283-30286 section sigsuspend(). This text is more APPLICATION USAGE than RATIONALE. Action: Move to APPLICATION USAGE section. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 321 donn@interix.com BUG in XSH (rdvk# 371) [DT-XSH-128] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject__X__ Rationale for rejected or partial changes: the action is out of scope, these are XSI extensions, provided on registered UNIX systems. _____________________________________________________________________________ Page: 943 Line: 28777 Section: shmat Problem: Duplication; heavyweight stuff not needed. See line 28816. Action: Delete the whole shm* family. If not, at least rename as posix_shmat (etc.) because they clearly are NOT in wide industry use: only ONE of the UNIX families provides them that I know of. _____________________________________________________________________________ editorial Enhancement Request Number 322 Frank Bug in XSH (rdvk# 161) [prindle.xsh-157] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 945 Line: 28886-28887 Section: shmctl() Problem: This section is an XSI extension in its entirety. This shading is unnecessary. Action: Remove shading and margin code on these lines. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 323 Frank Bug in XSH (rdvk# 166) [prindle.xsh-162] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 951 Line: 29059-29061 Section: sigaction() Problem: The sentence beginning "If the sa_handler..." incorrectly specifies information that is correctly specified below in lines 29065-29070. Action: Replace this sentence by lines 29062-29070 and delete those lines where they currently appear. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 324 Frank Bug in XSH (rdvk# 167) [prindle.xsh-163] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 952 Line: 29093,29099 Section: sigaction() Problem: The font and attributes used for "signo" on both of these lines is different. Action: Choose a single font/attributes for this and use for info and context (on the second line) too. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 325 Frank Bug in XSH (rdvk# 170) [prindle.xsh-166] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 952 Line: 29097-29107 Section: sigaction() Problem: These lines are dependent on the Realtime Signals option. Note that POSIX.1 requires that ENOTSUP error occur if SA_SIGINFO bit set when RTS not supported. Action: Shade and mark with margin code RTS. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 326 Frank Bug in XSH (rdvk# 168) [prindle.xsh-164] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 952 Line: 29109-29111 Section: sigaction() Problem: See also page 952-953 line 29118-29125 section sigaction(). These lines are an XSI extension. Action: Shade and code XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 327 Frank Bug in XSH (rdvk# 169) [prindle.xsh-165] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 952 Line: 29112-29115 Section: sigaction() Problem: >From "If the value..." to "...of the sender." is an XSI extension. Action: Shade this sentence and code XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 328 donn@interix.com BUG in XSH (rdvk# 372) [DT-XSH-129] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 952 Line: 29121 Section: sigaction Problem: The English is tortured at best. (I pity the translators.) Action: Bare minimum: "unwaited for" -> "unwaited-for". (Yes, it makes a difference.) Or "... there are no child processes which terminated and were converted to zombie processes, and which had not been wait()ed for..." (But see next objection.) _____________________________________________________________________________ Objection Enhancement Request Number 329 donn@interix.com BUG in XSH (rdvk# 373) [DT-XSH-130] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 952 Line: 29122 Section: sigaction Problem: In addition to the prior problem with this sentence, it is pretty twisted. Here's a shot at a fix, but I'm not particularly tied to it. Action: Change to: "If the calling process subsequently: - waits for its children, (That is, calls wait(), wait3() waitid(), waitpid() or other similar function (??).) - has no children which are ready to be waited for, (That is, has no children that were converted to a zombie process and which have not be previously waited for). the function called to do the wait will block until all the children of the process terminate, and then return return an error with errno set to [ECHILD]." _____________________________________________________________________________ Editorial Enhancement Request Number 330 donn@interix.com BUG in XSH (rdvk# 374) [DT-XSH-131] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 954 Line: 29177 Section: sigaction Problem: (Depending on how this is fixed, it may not be editorial.) There is part of a sentence missing, between "thread" and "If". Action: Editors restore. (And flag so it can be checked for content.) _____________________________________________________________________________ Comment Enhancement Request Number 331 donn@interix.com BUG in XSH (rdvk# 377) [DT-XSH-134] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 956 Line: 29291 Section: sigaction Problem: "made available to queue other signals"... that seems to overspecify the implementation (although how it could be tested I don't know). I recognize that the specification allows a fixed pool of signal queuing resources, but I doubt it intends to require that implementation. Rather, I suspect that it's intended to require something "at least as good" as that. However, this phrase, I think unintentionally, sets a ceiling: the resource MUST be returned to the signal queue. Action: Rephrase to: "and returned to the system for other use". Note: the above objections also apply near 29302 and 29310. _____________________________________________________________________________ Comment Enhancement Request Number 332 donn@interix.com BUG in XSH (rdvk# 375) [DT-XSH-132] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 956 Line: 29294 Section: sigaction Problem: There is a rat's nest developing here in the attempt to define (or rather, not define) synchronous signal. It would be better to define the term in XBD, and use it here (and elsewhere where this occurs). Action: 1) Define "synchronous signal" and "asynchronous signal". (Note, these are operational definitions, not theoretical ones, because that opens another rat's nest. Rationale to be inserted follows.) "asynchronous signal". A signal generated by a call to kill(), sigqueue(), or raise(), or as a consequence of scheduling a signal using timers or alarms, or by any other function defined in this standard or by the implementation to explicitly result in the generation of a signal. (Note, "function" here is used in its strict sense of a callable interface.) Calls directed to a process by itself, by of any of the means listed above, are considered asynchronous. In particular, a call to a function whose purpose includes generating a signal, and which completes successfully causing that signal to be generated, is always considered to generate an asynchronous signal. "synchronous signal". The generation of one of SIGFPE, SIGILL, SIGSEGV or SIGBUS caused by the program being signaled by means other than those defined for an asynchronous signal. There may be additional, implementation-defined, signals that are potentially synchronous signals. No signal name is inherently synchronous, it is a property of how the specific signal event was generated. Generation of a signal by any of the means defined for "asynchronous signal" can never result in a synchronous signal. Rat: Synchronous signals are difficult to define formally across all architectures, but in effect they are those that are generated by the failure of some specific instruction to complete correctly; for example a bad memory access or a floating point error. By defining asynchronous signal to be "most signals" and synchronous signals very narrowly in terms of the operations (not) performed to generate them, an effective definition is available to use elsewhere in the standard. 2) Add notes to the definition of the 4 signals above "may be generated synchronously" (all others, not). 3) Change sigaction (and elsewhere) to read: "The behavior of a process which is blocking or ignoring a potentially synchronous signal, should that signal be generated synchronously, is undefined." _____________________________________________________________________________ Editorial Enhancement Request Number 333 donn@interix.com BUG in XSH (rdvk# 376) [DT-XSH-133] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: either fixing the spelling, or reword the sentence back in terms of shall. _____________________________________________________________________________ Page: 956 Line: 29296 Section: sigaction Problem: Spelling. Action: "odes"->"does". (An ode to sigaction? More than one... I hope not :-) ). _____________________________________________________________________________ comment Enhancement Request Number 334 Frank Bug in XSH (rdvk# 171) [prindle.xsh-167] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 957 Line: 29320-29350 Section: sigaction() Problem: POSIX.1 appears to be in error here because it does not make the semantics of these lines (wholly) dependent on the RTS option, yet sigaction() clearly disallows the SA_SIGINFO bit to be set when the RTS option is not supported. Action: Shade and mark with margin code RTS. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 335 donn@interix.com BUG in XSH (rdvk# 378) [DT-XSH-135] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 957 Line: 29330 Section: sigaction Problem: is "si_value" the only thing that should be shaded on this line? It seems strange. Action: Don't know what was intended, but from looking at -1996, it seems it should not be shaded. _____________________________________________________________________________ Objection Enhancement Request Number 336 donn@interix.com BUG in XSH (rdvk# 379) [DT-XSH-136] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 958 Line: 29352 Section: sigaction Problem: More asynchronous signal. Action: -> "after it returns normally from a signal catching function for a synchronous signal". _____________________________________________________________________________ comment Enhancement Request Number 337 Frank Bug in XSH (rdvk# 172) [prindle.xsh-168] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 958 Line: 29365-29383 Section: sigaction() Problem: Has anyone really ever checked to see if this list is complete (or, for that matter correct) based on this revision? For example, fpathconf() was supposed to be marked as an XSI extension, but isn't. Action: A comprehensive check of all functions re async-signal safety needs to be in the queue somewhere (and re cancelation points, for that matter). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 338 Frank Bug in XSH (rdvk# 173) [prindle.xsh-169] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 959 Line: 29416 Section: sigaction() Problem: Why was [ENOTSUP] removed? POSIX requires this if SA_SIGINFO is set when the RTS option is not supported. The words on page 962, line 29553-29554 don't really tell me why this happened, and I can't remember back to the Issue 5 discussion. Nonetheless, as a POSIX.1 revision, I think it needs to be back the POSIX way. I don't think it's within the scope of this revision to redefine the POSIX options (it may make them mandatory for POSIX/UNIX conformance, but can't force them on a profile). Action: Add back in the [ENOTSUP] error with the POSIX.1 description. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 339 donn@interix.com BUG in XSH (rdvk# 380) [DT-XSH-137] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 960 Line: 29460 Section: sigaction Problem: This *is* POSIX! Action: I'm not sure what was intended here: it looks as if either a change to POSIX is being proposed, or that the interface here needs to align with the old interface. I don't care which, but this needs to be cleaned up. _____________________________________________________________________________ Editorial Enhancement Request Number 340 donn@interix.com BUG in XSH (rdvk# 381) [DT-XSH-138] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: the editors will make the appropriate change _____________________________________________________________________________ Page: 969 Line: 29757 Section: sigfillset Problem: I'm just confused as to the decision criteria for having separate pages for a function vs. combining them. I haven't identified a pattern yet. Specifically, why are the almost identical sigfillset and sigempty set on separate pages? Action: Editors: what is the rule? _____________________________________________________________________________ comment Enhancement Request Number 341 Frank Bug in XSH (rdvk# 174) [prindle.xsh-170] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 973 Line: 29881-29902 Section: siglongjmp() Problem: See also page 985 line 30187-30209 section sigsetjmp(). This text is technically aligned with ISO C, as POSIX.1 describes this in terms of longjmp() with additional semantics regarding restoring the signal mask. POSIX.1 avoided this problem by referencing longjmp(). We should too. See also the broader issue in [prindle.xsh-0]. Action: Since longjmp() in this document will hopefully be aligned with ISO C, revert to the POSIX.1 wording except it is not necessary to say "in the C standard {2}" because it is also in this standard. If we don't do this, and insist on copying, there will always be some chance for misalignment. Same with sigsetjmp(). ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 342 donn@interix.com BUG in XSH (rdvk# 382) [DT-XSH-139] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject__X__ Rationale for rejected or partial changes: the proposed actions did not gain consensus. They are XSI extensions and hence its not appropriate to delete. Specifics would be needed for the other proposals. _____________________________________________________________________________ Page: 975 Line: 29927 Section: signal Problem: sighold, sigignore and friends seem to be mostly convenience functions on top of more basic functions. My first inclination is to get rid of them, but at least state them directly in terms of the more basic functions rather than defining them in words: it's far safer to do that than to introduce a potential inconsistency in the standard. Secondly, including them on the signal page only complicates it further, which it doesn't need any help with. Action: Choose the first possible of: 1) Delete 2) Move to new page and state in terms of more fundamental functions. 3) State in terms of more fundamental functions. _____________________________________________________________________________ objection Enhancement Request Number 343 Frank Bug in XSH (rdvk# 175) [prindle.xsh-171] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Agree that the non XSI shaded errors should now be CX shaded on lines 29998, 30001 _____________________________________________________________________________ Page: 976 Line: 29997-30002 Section: signal() Problem: These error codes are an extension to ISO C (to the best I can tell, that std. says the value in errno is indeterminate). Action: Shade and mark with margin code CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 344 Frank Bug in XSH (rdvk# 176) [prindle.xsh-172] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: ok, but does imply now that defines pid_t or includes _____________________________________________________________________________ Page: 982 Line: 30098 Section: sigqueue() Problem: The first line of the synopsis is extraneous. Not in POSIX.1. Action: Delete "#include " line. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 345 Frank Bug in XSH (rdvk# 178) [prindle.xsh-174] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: At best we could make both EAGAIN or ETIMEDOUT errors allowable _____________________________________________________________________________ Page: 989 Line: 30339 Section: sigtimedwait() Problem: ETIMEDOUT is used for pthread_cond_timedwait() in exactly the same context. Normally EAGAIN is reserved for use when some resource limit temporarily causes failure of an API, while ETIMEDOUT is specified for a user-specified timeout. Also, all of the realtime amendments in progress use ETIMEDOUT for this. I believe there is either an interp request or an unresolved objection against .1a calling for this to be made consistent. Action: Consider changing this to ETIMEDOUT unless the potential for breakage is too great. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 346 donn@interix.com BUG in XSH (rdvk# 383) [DT-XSH-140] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: -> "this document" or the phrasing decided by the style issues _____________________________________________________________________________ Page: 990 Line: 30363 Section: sigdimedwait Problem: It's no longer a proposal. Action: "This proposal" -> "This standard". _____________________________________________________________________________ Objection Enhancement Request Number 347 donn@interix.com BUG in XSH (rdvk# 385) [DT-XSH-142] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 990 Line: 30363 Section: sigtimedwait Problem: What IS the relationship to the approved POSIX documents w.r.t. these? Action: Resolve (by deleting excess interfaces) in favor of approved POSIX interfaces. _____________________________________________________________________________ Comment Enhancement Request Number 348 donn@interix.com BUG in XSH (rdvk# 384) [DT-XSH-141] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: the text is taken from .1-1996 rationale. Change the wording as follows "by the IEEE P1003.1c draft standard" -> "this document" (or the style agreed ... this part of ISO...) _____________________________________________________________________________ Page: 990 Line: 30374 Section: sigtimedwait Problem: This *is* POSIX, and isn't 1.c approved? Action: I'm not sure, based on other issues. When they are resolved, this will fall out. Leave as a place to be checked after all new text is integrated. _____________________________________________________________________________ objection Enhancement Request Number 349 Frank Bug in XSH (rdvk# 177) [prindle.xsh-173] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 992 Line: 30456-30458 Section: sigwait() Problem: These lines are dependent on the RTS option. Action: Shade and margin code with RTS. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 350 Frank Bug in XSH (rdvk# 179) [prindle.xsh-175] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept__X__ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1013 Line: 30874-30891 Section: stdin Problem: These originate in ISO C, and are defined in an ISO C header. Need the ISO C standard alignment disclaimer. Then, because ISO C says very little about these, 30883-30887 (at least) need to be shaded and marked CX. Also see [prindle.xsh-0] for the more general concern about quoting ISO C herein. Action: Include the standard ISO C alignment disclaimer at the top of the description, then shade and code lines 30883-30887 with CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 351 donn@interix.com BUG in XSH (rdvk# 386) [DT-XSH-143] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: remove the CX shading on line 31028 and also line 31648 (strncmp) _____________________________________________________________________________ Page: 1017 Line: 31028 Section: strcmp Problem: (This is where I first noticed this, but it may not be the only or first instance). My copy of the C standard makes it clear that the CX shading at this line is incorrect: the phrase is explicitly in the C standard, just not at this point. Since most of the phrasing doesn't match the C standard anyway, it seems strange to shade this. (ANSI C, paragraph 4.11.4, says "unsigned character". I'm not sure of the ISO C paragraph.) Action: No shading. (Or make the rest of the text exactly match ISO C!) _____________________________________________________________________________ Comment Enhancement Request Number 352 donn@interix.com BUG in XSH (rdvk# 387) [DT-XSH-144] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1022 Line: 31186 Section: strdup Problem: Agreed. Action: Make mandatory. _____________________________________________________________________________ comment Enhancement Request Number 353 w.mueller@baumanagement.bremen.de (rdvk# 2) {strftime-%G} Fri Jun 4, 2:53pm +0100 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1029 Line: 31440 Section: strftime() Problem: The %V specifier allows inclusion of the ISO8601 week number in the output generated by strftime(), but there is no means to include the corresponding year. For example, 02 January 1999 is day 6 of week 53 of 1998. While the day number and the week number are available, the year is not. Action: I would propose to include the specifiers %g and %G as propsed for ANSI C9X to allow inclusion of the last two and all digits, respectively, of the year corresponding to the week number produced with %V. _____________________________________________________________________________ comment Enhancement Request Number 354 Frank Bug in XSH (rdvk# 181) [prindle.xsh-177] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1035 Line: 31602 Section: strncat() Problem: See also page 1183 line 35989 section wcsncat(). Name misnamed. This function, in fact, always uses the entire first string. Action: Replace "concatenate part of two strings" with "concatenate a string with part of another". Add "wide-character" to the wcsncat() version of this fix. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 355 Frank Bug in XSH (rdvk# 182) [prindle.xsh-178] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X*___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1042 Line: 31879 Section: strrchr() Problem: I find it difficult to believe that strchr() converts its "c" argument to unsigned char, yet strrchr() converts its "c" argument to char. This looks like an accidental omission. Action: Replace "a" with "an unsigned", shaded and marked CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 356 Frank Bug in XSH (rdvk# 186) [prindle.xsh-182] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1045 Line: 31980 Section: strtod() Problem: See also page 1070 line 32766 section system(). This originates in ISO C. Need the ISO C standard alignment disclaimer. Action: Include the standard ISO C alignment disclaimer at the top of the description. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 357 Frank Bug in XSH (rdvk# 184) [prindle.xsh-180] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Change the wording to "In other than the C or POSIX locales, other implementation-dependent subject sequences may be accepted." shade the "or POSIX" as CX _____________________________________________________________________________ Page: 1045 Line: 32004-32005 Section: strtod() Problem: See also page 1049 line 32172-32173 section strtol(). See also page 1052 line 32264-32265 section strtoul(). See also page 1192 line 36299-36300 section wcstod(). See also page 1196 line 36430-36431 section wcstol(). See also page 1200 line 36556-36557 section wcstoul(). See [prindle.xsh-0] about deleted ISO C text (concerning "C" locale) that these lines replace. Action: Replace ISO C text and strike-through. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 358 Frank Bug in XSH (rdvk# 183) [prindle.xsh-179] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: ISO C specifies ERANGE/underflow _____________________________________________________________________________ Page: 1045 Line: 32017 Section: strtod() Problem: See also page 1046 line 32020 section strtod(). See also page 1193 line 36312 section wcstod(). See also page 1193 line 36315 section wcstod(). Again, I am unsure of my ISO C reference material, but it would indicate that setting errno in this case is unspecified. Action: Shade "and errno is set to [ERANGE]" and mark CX if ISO C does not specify that errno is set in this case. On line 32020 and 36315, shade and mark "or underflow" as CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 359 Frank Bug in XSH (rdvk# 185) [prindle.xsh-181] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept__X__ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1048 Line: 32106 Section: strtok() Problem: Alas, cut-and-paste has failed here. In this case, unlike most of the _r functions, the problem was not where the return values were stored, but rather where the intermediate state was stored. This state needs to be overwritten, but only during the parsing of the same string. Action: Replace "returns values" with "stores its state". Replace "by each call" with "by an unrelated call from another thread". ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 360 Frank Bug in XSH (rdvk# 187) [prindle.xsh-183] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept__X__ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1049 Line: 32177-32180 Section: strtol() Problem: See also page 1052-1053 line 32269-32272 section strtoul(). See also page 1201 line 36561-36564 section wcstoul(). See also page 1192 line 36304-36306 section wcstod(). See also page 1196-1197 line 36435-36438 section wcstol(). Like strtod() (according to my references and the RETURN VALUE section), this function is required to return ERANGE in at least one circumstance. Therefore, these lines are part of the ISO C functionality. Action: Remove shading and margin code CX on these lines. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 361 Frank Bug in XSH (rdvk# 188) [prindle.xsh-184] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1053 Line: 32286-32288 Section: strtoul() Problem: See also page 1201 line 36579-36581 section wcstoul(). I can't seem to understand what these lines are trying to say. Action: Clarify this APPLICATION USAGE, or remove it. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 362 Frank Bug in XSH (rdvk# 190) [prindle.xsh-186] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1063 Line: 32533 Section: sysconf() Problem: See also page 1065 line 32639 section sysconf(). See also page 1067 line 32711 section sysconf(). Reference to for CLK_TICK needs to be removed now that CLK_TICK itself has been removed from this section. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 363 Frank Bug in XSH (rdvk# 189) [prindle.xsh-185] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: need specifics _____________________________________________________________________________ Page: 1063 Line: 32537 Section: sysconf() Problem: There is far more wrong about the table than the shading in that area. Such as the names _SC_AIO_* being missing, the name _SC_CLK_TCK being missing, etc. Action: Realign this table with POSIX.1 and POSIX.2 configurable system variables, then re-apply the XSI extensions. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 364 donn@interix.com BUG in XSH (rdvk# 388) [DT-XSH-145] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1063 Line: 32552 Section: sysconf Problem: PASS_MAX: legacy (which means that the original POSIX discarded it probably for some good reason). Action: Delete. _____________________________________________________________________________ comment Enhancement Request Number 365 Frank Bug in XSH (rdvk# 192) [prindle.xsh-188] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1067 Line: 32704 Section: sysconf() Problem: This asks question - should reference to CLK_TCK be removed. Action: Yes, it only makes sense since CLK_TCK itself has been removed. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 366 donn@interix.com BUG in XSH (rdvk# 389) [DT-XSH-146] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_of_365 Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1067 Line: 32706 Section: sysconf Problem: Delete CLK_TCK. Action: Delete it. _____________________________________________________________________________ comment Enhancement Request Number 367 Frank Bug in XSH (rdvk# 191) [prindle.xsh-187] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1068 Line: 32751-32752 Section: sysconf() Problem: But this was never done, i.e. "clock ticks per second" and _SC_CLK_TCK are missing from the table. Action: Do what this change history says. Also, see [prindle.xsh-185]. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 368 Frank Bug in XSH (rdvk# 193) [prindle.xsh-189] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1070 Line: 32767-32790 Section: system() Problem: These words differ CONSIDERABLY from ISO C. ISO C appears to say very little in detail about this function, whereas here we find all sorts of UNIX-isms. Considerable alignment with ISO C required (marking the CXs). Change history indicates nothing done since issue 4. Perhaps this got skipped in the D1 edit, knowing that .1a is in the same boat. Action: See [prindle.xsh-0]. Align with ISO C, then add and mark C extensions as was done with other ISO C functions. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 369 donn@interix.com BUG in XSH (rdvk# 390) [DT-XSH-147] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below__X__ Duplicate_____ Reject_____ Rationale for rejected or partial changes: the future direction is being removed since EIO is mandated replace lines 329772-32975 with None _____________________________________________________________________________ Page: 1076 Line: 32972 Section: tcdrain Problem: Huh!?!?! It looks as if some global search and replace garbled this. (In most other tc* functions as well.) Action: I think this is trying to say that in an older revision, but the change to an internal-to-this document seems scrambled. Rather than fix the language, just do what it intends (reclassify the error) and drop the section. Also, "shall" in rationale? (Not that it matters.) (This probably should have been "will".) _____________________________________________________________________________ objection Enhancement Request Number 370 Frank Bug in XSH (rdvk# 194) [prindle.xsh-190] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1078 Line: 33003 Section: tcflow() Problem: There is a word missing here, as it was in POSIX.1. What depends on action is whether it is a suspend or restart as well as whether it is input or output (i.e. there are 4 possibilities). Action: Replace "suspends" with "suspends or restarts". ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 371 donn@interix.com BUG in XSH (rdvk# 391) [DT-XSH-148] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1083 Line: 33175 Section: tcgetattr Problem: Concur with future direction. Action: Do as noted. _____________________________________________________________________________ comment Enhancement Request Number 372 Frank Bug in XSH (rdvk# 195) [prindle.xsh-191] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1083 Line: 33175-33176 Section: tcgetattr() Problem: Perhaps this is the right time to invoke this change. Action: Delete this future direction, and change the XSI extension on lines 33140-33141 to the other option (i.e. return the output rate as the input rate). If this isn't done, at least show as part of the XSI extension the deleted POSIX.1 text, struck-through, so that this future direction will make sense to someone reading this standard who never saw POSIX.1-1996. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 373 Frank Bug in XSH (rdvk# 196) [prindle.xsh-192] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: leave to the editors to sort appropriately _____________________________________________________________________________ Page: 1087 Line: 33281 Section: tcsendbreak() Problem: POSIX.1 uses comma as the decimal point. Action: Resolve the proper character to use for a decimal point, and apply uniformly throughout (I don't know the right answer, but suspect for an ISO standard, the comma is correct.) ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 374 Frank Bug in XSH (rdvk# 197) [prindle.xsh-193] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1088 Line: 33319,33324 Section: tcsendbreak() Problem: I don't see where anything in this function was ever conditional on _POSIX_ JOB_CONTROL. This turns up in a lot of the tc*() functions, but does not apply to all of them. Perhaps it is residual from when they were all on one page or something like that. Action: Remove these pieces of change history where they do not apply (here and in other tc*() functions.) Retain them only in functions where they apply. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 375 donn@interix.com BUG in XSH (rdvk# 392) [DT-XSH-149] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1089 Line: 33356 Section: tcsetattr Problem: Phrasing. Action: Change "The tcsetattr function does not change..." to "The tcsetatter() shall not change the values found in the termios structure under any circumstances." _____________________________________________________________________________ Editorial Enhancement Request Number 376 donn@interix.com BUG in XSH (rdvk# 393) [DT-XSH-150] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1089 Line: 33365 Section: tcsetattr Problem: Confusing (the right hand giveth and the left hand taketh away.) Action: When tcsetattr() is called from a process which is a member of a background process group, on a filedes associated with it's controlling terminal: - if the calling process is blocking or ignoring SIGTTOU signals, the operation completes normally. - otherwise a SIGTTOU signal shall be sent to the process group. _____________________________________________________________________________ Comment Enhancement Request Number 377 donn@interix.com BUG in XSH (rdvk# 394) [DT-XSH-151] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_of_378 Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1092 Line: 33448 Section: tcsetpgrp Problem: The original wording apparently existed so that EINVAL was given precedence over EPERM in the case of a bad pgrp_id. Giving that precedence seems to be quite reasonable, but I'm not sure it's important. (Elsewhere it's explicit that there is no lexical precedence of possible errno values.) If someone can make a case for retaining that precedence I will happily support them. If no-one can, then let the change become permanent. Action: Someone respond, or declare that no-one did. _____________________________________________________________________________ comment Enhancement Request Number 378 Frank Bug in XSH (rdvk# 198) [prindle.xsh-194] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1092 Line: 33448-33450 Section: tcsetpgrp() Problem: Editor notes a difference from POSIX.1. Action: Use the POSIX.1 wording as it makes it clear which error occurs in both not supported and not matching. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 379 donn@interix.com BUG in XSH (rdvk# 395) [DT-XSH-152] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1092 Line: 33448 Section: tcsetpgrp Problem: typo Action: "pf" -> "of". _____________________________________________________________________________ Objection Enhancement Request Number 380 donn@interix.com BUG in XSH (rdvk# 396) [DT-XSH-153] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: it stays as per seekdir as an XSI extension _____________________________________________________________________________ Page: 1095 Line: 33491 Section: telldir Problem: See seekdir(). Action: Whatever happens with seekdir() decides this as well. _____________________________________________________________________________ Comment Enhancement Request Number 381 donn@interix.com BUG in XSH (rdvk# 397) [DT-XSH-154] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1099 Line: 33617 Section: time Problem: 2038 is not much further in the future than 2000 was in 1970. Need I say more... Action: Under Future Directions: In a future version of this document, time_t is likely to be required to be capable of representing times far in the future. Whether this will be mandated as a 64-bit type or a requirement that a specific date in the future be representable (e.g. 10000 AD) is not yet determined. Systems purchased after the approval of this standard should be evaluated to determine if their lifetime will extend past 2038. (Doing it now would be fine with me.) _____________________________________________________________________________ objection Enhancement Request Number 382 Frank Bug in XSH (rdvk# 199) [prindle.xsh-195] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1101 Line: 33632-33633 Section: timer Problem: The headers are reversed. comes first in POSIX.1. Action: Reverse header order. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 383 donn@interix.com BUG in XSH (rdvk# 398) [DT-XSH-155] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept__X__ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1101 Line: 33668 Section: timer Problem: Infelicitous page break. Action: Is there a "need" in the RATIONALE header macro? _____________________________________________________________________________ comment Enhancement Request Number 384 Frank Bug in XSH (rdvk# 200) [prindle.xsh-196] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete this change history on l33726-33728 _____________________________________________________________________________ Page: 1103 Line: 33726-22728 Section: timer Problem: is already required by POSIX. Action: Delete this change history entry or provide the correct reason (did you mean to align the UNIX spec with POSIX?). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 385 Frank Bug in XSH (rdvk# 201) [prindle.xsh-197] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1105 Line: 33783-33785 Section: timer Problem: The last sentence of this paragraph is not part of the RTS option (it describes the semantics of calling this function if the option is not supported, i.e. the default situation.) Action: Remove shading on last sentence of this paragraph. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 386 donn@interix.com BUG in XSH (rdvk# 399) [DT-XSH-156] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1105 Line: 33784 Section: timer Problem: English. Action: "the meaning is undefined" sounds a bit strange. "...the meaning..." -> "...the value returned in the overrun count field or as the result of timer_getoverrun is unspecified." _____________________________________________________________________________ Objection Enhancement Request Number 387 donn@interix.com BUG in XSH (rdvk# 400) [DT-XSH-157] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1105 Line: 33796 Section: timer Problem: Meaning unclear (possible typo?). should "a timer on pending expiration" be "a timer with pending expiration"? Action: As above, or clarify if I didn't guess right. _____________________________________________________________________________ Objection Enhancement Request Number 388 donn@interix.com BUG in XSH (rdvk# 401) [DT-XSH-158] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1106 Line: 33814 Section: timer Problem: The language is unclear. Action: "are subject to the resolution of the timer" -> "may have been rounded to the resolution of the timer". (That's a guess as to intent.) _____________________________________________________________________________ objection Enhancement Request Number 389 Frank Bug in XSH (rdvk# 202) [prindle.xsh-198] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1106 Line: 33819-33820 Section: timer Problem: The last sentence, "If an error...", applies to all 3 functions. This is clear from POSIX.1 in its Errors section, but unclear in its Returns section. Here, unlike POSIX, the return semantics are given only once, so it better be clear here. Action: Make the last sentence into a new paragraph, and replace "either of these functions" by "any of these functions". ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 390 Frank Bug in XSH (rdvk# 240) [prindle.xsh-236] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below__X__ Duplicate_____ Reject_____ Rationale for rejected or partial changes: do action as specified below and also add change history _____________________________________________________________________________ Page: 1106 Line: 33826-33827 Section: timer Problem: The wording of this error requires the error be returned even if the it_value member of the value argument is zero and the timer is being disarmed. This is a P1003.1n issue resulting from PASC Interp request 1003.1-1996 #89. Action: Add to end of sentence: "and the it_value member of that structure did not specify zero seconds and nanoseconds." Shade that addition and mark MAN. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 391 donn@interix.com BUG in XSH (rdvk# 402) [DT-XSH-159] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1111 Line: 33937 Section: tmpfile Problem: Unclear: who does the putative unlink(), the user or the system? (Yes, we know it's the system, but does the standard?) It also implies implementation. Action: -> "In some implementations, a permanent file may be left behind if the process calling tmpfile() is killed while it is processing a call to tmpfile()". _____________________________________________________________________________ Objection Enhancement Request Number 392 donn@interix.com BUG in XSH (rdvk# 403) [DT-XSH-160] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the domain of this function is intentional (the name gives it away) _____________________________________________________________________________ Page: 1115 Line: 34033 Section: toascii Problem: Dangerous, not very portable (particularly as defined in "return value", because it assumes an ASCII (ISO 646) character set as input). Action: Delete. The alternatives are: -define as a function that forcibly converts the native character set to ASCII, possibly losing internationalized data. -define as a function that forcibly converts the native character set to just the subset of that character set which matches ASCII. (No... I don't like either.) _____________________________________________________________________________ comment Enhancement Request Number 393 Frank Bug in XSH (rdvk# 203) [prindle.xsh-199] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1116 Line: 34066-34071 Section: tolower() Problem: See also toupper(), same place. See also towlower(), same place. See also towupper(), same place. The ISO C description of this function appears to state this considerably differently. Particularly, the words about unsigned char, EOF, and domain are apparently not present. Whether these words are technically and legally equivalent is not terribly clear. Action: Why not use the ISO C wording? (see [prindle.xsh-0].) ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 394 donn@interix.com BUG in XSH (rdvk# 404) [DT-XSH-161] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1118 Line: 34146 Section: towctrans Problem: Overspecified. We don't need to know what happens when its broken. Action: "implementation->dependent" -> "unspecified" (or "undefined"). _____________________________________________________________________________ objection Enhancement Request Number 395 Frank Bug in XSH (rdvk# 204) [prindle.xsh-200] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1118 Line: 34151-34152 Section: towctrans() Problem: See also page 1172 line 35703 section wcrtomb(). See also page 1177 line 35836-35837 section wcrtomb(). See also page 1188 line 36187 section wcsrtombs(). See also page 1209 line 36824-36825 section wctrans(). This error is not specified by ISO C. Action: Shade and mark CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 396 donn@interix.com BUG in XSH (rdvk# 405) [DT-XSH-162] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete "With truncate(), " on line 34256 _____________________________________________________________________________ Page: 1121 Line: 34256 Section: truncate Problem: This appears to be a leftover from splitting truncate and ftruncate. Since the page is talking solely about truncate().... Action: ... delete "For truncate()". (Or recombine the pages?) _____________________________________________________________________________ comment Enhancement Request Number 397 Frank Bug in XSH (rdvk# 205) [prindle.xsh-201] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1127 Line: 34488-34489 Section: ttyname() Problem: Several other functions (e.g.: strfmon()) use [E2BIG] for this situation. Neither error includes this situation in its description (see [prindle.xsh-176].) Action: Changing this (for ttyname_r()) will cause some breakage, but these really ought to be consistent. So far, this is the only misuse of ERANGE I've seen, and since it is defined by ISO C (and therefore we shouldn't be playing with it), I think E2BIG is the better choice (as modified by action in [prindle.xsh-176].) ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 398 Frank Bug in XSH (rdvk# 206) [prindle.xsh-202] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1131 Line: 34544 Section: tzset() Problem: In POSIX.1, tzname is required to be of dimension 2. Action: Change this line to: "extern char *tzname[2];" ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 399 donn@interix.com BUG in XSH (rdvk# 406) [DT-XSH-163] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1131 Line: 34557 Section: tzset Problem: The example belongs in rationale or (preferably) the Examples section. Action: Move it. _____________________________________________________________________________ comment Enhancement Request Number 400 Frank Bug in XSH (rdvk# 207) [prindle.xsh-203] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete the app usage _____________________________________________________________________________ Page: 1133 Line: 34624-34625 Section: ualarm() Problem: This would seem to be too implementation-dependent. The possible interactions are already covered in the description. Action: Replace "is" by "may be implemented as" or similar words. Or just delete this app-usage. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 401 donn@interix.com BUG in XSH (rdvk# 408) [DT-XSH-165] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_X___ Rationale for rejected or partial changes: the proposed action is out of scope , this is an XSI extension _____________________________________________________________________________ Page: 1135 Line: 34640 Section: ulimit Problem: Is this "Legacy" in spirit if not in letter. If so... Action: Delete page. _____________________________________________________________________________ Objection Enhancement Request Number 402 donn@interix.com BUG in XSH (rdvk# 407) [DT-XSH-164] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1135 Line: 34643 Section: ulimit Problem: Nowhere does this say what the file size limit is FOR. It can be sort-of inferred, and write() makes it clear, but it would be helpful here. Action: Add: The process limits that can be controlled by this function include: - The maximum size of a single file that can be written. Write This is equivalent to using setrlimit() with RLIMIT_FSIZE. _____________________________________________________________________________ objection Enhancement Request Number 403 Frank Bug in XSH (rdvk# 228) [prindle.xsh-224] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1135 Line: 34646,34650,34653 Section: ulimit() Problem: There is constant reference to hard and soft file size limits. Yet there is only one resource limit defined for this, RLIMIT_FSIZE. There is no independent way to set hard and soft limits, nor is there any semantic distinction (i.e. what happens if a process hits the soft limit, vs. what happens if it hits the hard limit. There is only one error defined in write() for example. Action: Delete references to hard and soft limits, and just reference "the" file size limit (RLIMIT_FSIZE). ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 404 Frank Bug in XSH (rdvk# 208) [prindle.xsh-204] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1135 Line: 34668 Section: ulimit() Problem: First, this text (if valid) is misplaced, because it traditionally has been moved to the DESCRIPTION section. Second, I don't understand how -1 is a valid return value from this function. This would imply that the soft limit of the process was read as a value between -512 and -1023 or set to -512. While this may be legal for the function, what does it mean to set the soft limit negative? Action: Either move text to DESCRIPTION following line 34656; or delete entirely and add an error condition for a negative value being set. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 405 Frank Bug in XSH (rdvk# 209) [prindle.xsh-205] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1150 Line: 35074-35075 Section: usleep() Problem: Personally, I wouldn't use any of these. I'd use nanosleep(). Action: Replace all this with a recommendation for nanosleep(). Move all this to the app-usage section of ualarm() in place of what is there (see [prindle.xsh-203].) ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 406 Frank Bug in XSH (rdvk# 210) [prindle.xsh-206] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1151 Line: 35109 Section: utime() Problem: "and errno" should be ", errno". Action: Change "and errno" to ", errno". ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 407 donn@interix.com BUG in XSH (rdvk# 409) [DT-XSH-166] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject__X__ Rationale for rejected or partial changes: the action is out of scope, this is an XSI extension made LEGACY in this issue as a phased withdrawal _____________________________________________________________________________ Page: 1154 Line: 35179 Section: utimes Problem: Legacy: delete. However, I do have mixed feelings about this one, given that filesystems ever get file time stamps more accurate than the second. Action: Delete, or make other changes appropriate to force filesystems to take more accurate times. (At least, for now, as a Future Direction.) _____________________________________________________________________________ comment Enhancement Request Number 408 Frank Bug in XSH (rdvk# 211) [prindle.xsh-207] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept__X__ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1155 Line: 35220-35221 Section: utimes() Problem: I think not. Action: Change "determine the current working directory" to "set file access and modification times". ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 409 donn@interix.com BUG in XSH (rdvk# 410) [DT-XSH-167] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1157 Line: 35287 Section: vfork Problem: see line 35256... "any other function" Does that include dup/dup2, e.g.? (Does "function" mean user function?) This constraint does not appear on the man pages for the other vfork() implementations I investigated, and it would make it difficult to remap file descriptors after the vfork() and before the exec(). This discussion of signals makes it even weirder. Action: 1) Consider simply deleting vfork. The caveats are even worse here than they are in the real world. 2) If not, either allow system calls such as dup/dup2 (those that were discussed during the development of spawn() provides a good list) or explain what the additional conditions that require this might be. (I don't immediately see any reason why a call to dup() would do any more damage than a call to exec() to the parent.) _____________________________________________________________________________ objection Enhancement Request Number 410 Frank Bug in XSH (rdvk# 212) [prindle.xsh-208] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1159 Line: 35318,35320,35330 Section: vfprintf() Problem: Indirect reference. Should be fprintf(), the primary page. Action: Change "printf()" on all these lines to "fprintf()". ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 411 Frank Bug in XSH (rdvk# 215) [prindle.xsh-211] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1164 Line: 35414 Section: wait() Problem: The antecedent for "its" is "the calling thread", but a thread technically cannot have a child process. Use the words from POSIX.1. Action: Replace "its terminated child processes" by "the terminated child processes of the calling process". ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 412 donn@interix.com BUG in XSH (rdvk# 411) [DT-XSH-168] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1167 Line: 33539 Section: wait Problem: What "Job control option?". It's not optional any more, is it? Action: "the Job Control option" -> "Job Control". _____________________________________________________________________________ objection Enhancement Request Number 413 Frank Bug in XSH (rdvk# 213) [prindle.xsh-209] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1166 Line: 35496-35498 Section: wait() Problem: Can't find this semantic in POSIX.1. Action: Shade these lines and mark XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 414 Frank Bug in XSH (rdvk# 214) [prindle.xsh-210] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1168 Line: 35591 Section: wait() Problem: Spelling error. Action: Change "WNOHUNG" to "WNOHANG". ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 415 donn@interix.com BUG in XSH (rdvk# 412) [DT-XSH-169] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject__X__ Rationale for rejected or partial changes: the proposed action is out of scope , this is an XSI extension _____________________________________________________________________________ Page: 1169 Line: 35614 Section: waitid Problem: More grab-bag of stuff. Action: Delete, or if politically impossible, define in terms of waitpid(). _____________________________________________________________________________ objection Enhancement Request Number 416 Frank Bug in XSH (rdvk# 216) [prindle.xsh-212] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ POPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1169 Line: 35633 Section: waitid() Problem: I am confused here. In the errors section, it says that the function always returns -1 if there are no children to wait for. Perhaps this was meant to say the same thing as WNOHANG in wait()? But if so, a distinguished return code is needed so that the caller knows that no information was stored at infop. Action: Resolve the true meaning of this flag, and if like wait(), add a distinguished return value to mean no status change. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 417 Frank Bug in XSH (rdvk# 217) [prindle.xsh-213] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1172 Line: 35694 Section: wcrtomb() Problem: See also page 1188 line 36177 section wcsrtombs(). See also page 1198 line 36488 section wcstombs(). See also page 1207 line 36776 section wctomb(). Are these functions always required to be thread safe? When these functions maintain an internal state (for those with a ps argument, when that argument is NULL, for the others always), is that state thread-specific data? If so, there ought to be a note in app-usage. I am concerned that it is not thread- specific data. In that case, the customary text is missing that requires ps to be non-null for thread safety (in the case of those with a ps argument) or says the function may not be thread-safe (in the case of those without ps argument). Action: Add the following paragraph after this line: If the application uses any of the {_POSIX_THREAD_SAFE_FUNCTIONS} or {_POSIX_THREADS} interfaces, the wcrtomb() [resp. wcsrtombs()] function must be called with a non-NULL ps argument. For functions with no ps argument, Add the following paragraph: The dlerror() function need not be reentrant. A function that is not required to be reentrant is not required to be thread-safe. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 418 Frank Bug in XSH (rdvk# 219) [prindle.xsh-215] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1177 Line: 35825-35827,35832-35833 Section: wcscoll() Problem: These lines are an ISO C extension (only last sentence on 35832). Action: Shade and code CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 419 Frank Bug in XSH (rdvk# 220) [prindle.xsh-216] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: delete the last sentence _____________________________________________________________________________ Page: 1180 Line: 35940-35941 Section: wcsftime() Problem: The last sentence is a curious statement. Either an ENOTSUP error code should correspond to this, or it should not be here. Why should an implementation be permitted not to support this - it isn't part of an option? Action: Delete this last sentence. Or, if rationale for allowing this not to be implemented, add an [ENOTSUP] error condition. Looking at the Issue 5 change history, I think the former is the correct action i.e.: this was left over from when ENOSYS was being used. ------------------------------------------------------------------------------- _____________________________________________________________________________ Editorial Enhancement Request Number 420 donn@interix.com BUG in XSH (rdvk# 413) [DT-XSH-170] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1192 Line: 36268 Section: wcstod Problem: "radix" refers to the base in which a number is represented. "radix point" (or "radix character") refers to the "decimal point". Action: "radix" -> "radix point". Check for other instances. _____________________________________________________________________________ editorial Enhancement Request Number 421 Frank Bug in XSH (rdvk# 221) [prindle.xsh-217] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept__X__ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1192 Line: 36309 Section: wcstod() Problem: Margin code is #, which is not defined. Action: Change margin code to CX. ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 422 Frank Bug in XSH (rdvk# 222) [prindle.xsh-218] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: mark this page as LEGACY _____________________________________________________________________________ Page: 1202 Line: 36601 Section: wcswcs() Problem: Any good reason not to delete this or at least mark LEGACY? Action: Do the right thing. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 423 Frank Bug in XSH (rdvk# 223) [prindle.xsh-219] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1203 Line: 36639-36641 Section: wcswidth() Problem: See also page 1212 line 36892-36894 section wcwidth(). These lines do not belong. This function is not in ISO C. Action: Delete the lines. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 424 ajosey@opengroup.org Bug in XSH (rdvk# 1) {tog-001} Wed, 2 Jun 1999 13:24:04 +0100 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1204 Line: 36690 Section: wcsxfrm Problem: The return value for wcsxfrm() states: "On error, the wcsxfrm() function returns (size_t) -1, and sets errno to indicate the error.". This return value of -1 is not defined in ISO C amendment 1/draft c9x , and is inconsistent with strxfrm() and also the app usage in wcsxfrm() on line 36697. This wording was carried over from Issue 4 (and thus looks like a difference between the draft MSE and the final). I believe this should be "On error, the wcsxfrm() function may set errno but no return value is reserved to indicate an error." Action: Replace the text with the following: "On error, the wcsxfrm() function may set errno but no return value is reserved to indicate an error." and remove the CX shading _____________________________________________________________________________ comment Enhancement Request Number 425 Frank Bug in XSH (rdvk# 224) [prindle.xsh-220] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1204 Line: 36703-36704 Section: wcsxfrm() Problem: By convention, this statement should be moved to DESCRIPTION. Action: Move to DESCRIPTION section after line 36685. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 426 Frank Bug in XSH (rdvk# 225) [prindle.xsh-221] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: "and may set errno to indicate the error" _____________________________________________________________________________ Page: 1209 Line: 36819 Section: wctrans() Problem: This needs to also say that errno is set (as an extension). Action: After "returns 0", add wording, shaded and coded CX, which says in effect "and sets errno to indicate the error". ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 427 Frank Bug in XSH (rdvk# 226) [prindle.xsh-222] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1209 Line: 36823-36825 Section: wctrans() Problem: See also page 1210 line 36867 section wctype(). I am curious why it was felt necessary to add setting errno to EINVAL to wctrans() but not to wctype()? These two functions appear to be doing similar things, and in either case, there are a large number of input strings which are not valid, yet in both cases there is only one possible error signaled by a zero return. Action: Either add EINVAL to wctype() (see [prindle.xsh-221] and [prindle.xsh-xxx]) or remove it from wctrans(). ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 428 Frank Bug in XSH (rdvk# 227) [prindle.xsh-223] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Change "ulimit" to "the process' file size limit" _____________________________________________________________________________ Page: 1223 Line: 37285 Section: write() Problem: ulimit is the name of a function. I believe you mean RLIMIT_FSIZE here. Action: Change "ulimit" to "RLIMIT_FSIZE" or (as in the errors) "the process' file size limit". ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 429 Frank Bug in XSH (rdvk# 229) [prindle.xsh-225] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: add a note to the change history _____________________________________________________________________________ Page: 1224 Line: 37313 Section: write() Problem: The word "thread" on this line was (incorrectly) "process" in POSIX.1. Action: Shade the word "thread" and mark MAN (see [prindle.xsh-5].) ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 430 Frank Bug in XSH (rdvk# 230) [prindle.xsh-226] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below__X__ Duplicate_____ Reject_____ Rationale for rejected or partial changes: do change and add a note to the change history about this correction _____________________________________________________________________________ Page: 1224 Line: 37328-37329 Section: write() Problem: The word "process" on each of these lines is incorrect here and in POSIX.1. Action: Replace "process" by "thread" in each instance; shade and mark MAN (see [prindle.xsh-5]). ------------------------------------------------------------------------------- _____________________________________________________________________________ comment Enhancement Request Number 431 Frank Bug in XSH (rdvk# 231) [prindle.xsh-227] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: POSIX.1 does not have this wording about may clear S_ISGID, S_ISUID or not that I could find on the write man page _____________________________________________________________________________ Page: 1224 Line: 37333 Section: write() Problem: POSIX.1 uses the word "should" instead of "may". Frankly, they don't convey the same meaning to me. I understand there is some controversy regarding this draft and the word "may", so I'll just point this out as yet another anomaly, and hope it gets resolved during the meeting. Action: Change "may" back to "should", assuming "may" continues to imply mandatory in some way. Use the POSIX.1 definition of should. ------------------------------------------------------------------------------- _____________________________________________________________________________ Comment Enhancement Request Number 432 donn@interix.com BUG in XSH (rdvk# 414) [DT-XSH-171] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: Note XSH becomes XSI, XBD becomes XBH ? _____________________________________________________________________________ Page: 1235 Line: 37626 Section: 5 Problem: Given the very unbalanced size of XBD compared with XSH, the already unwieldy size of XSH (and it will get worse), the requirement that XBD, XSH, and XCU be seen as a single document, and the fact that a few of the headers here apply only to XCU: Action: Move this chapter to XBD. _____________________________________________________________________________ Editorial Enhancement Request Number 433 donn@interix.com BUG in XSH (rdvk# 415) [DT-XSH-172] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: leave to the editors choice _____________________________________________________________________________ Page: 1252 Line: 38130 Section: float.h Problem: Readability. Action: "All" -> "All constants". _____________________________________________________________________________ Objection Enhancement Request Number 434 donn@interix.com BUG in XSH (rdvk# 416) [DT-XSH-173] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1252 Line: 38141 Section: float.h Problem: What if value is omitted? (In particular, what is its sign.) Action: Actually, the easy way out of this is to put -1 and 1 into the Value column in the blank slots on the next page. _____________________________________________________________________________ Objection Enhancement Request Number 435 donn@interix.com BUG in XSH (rdvk# 417) [DT-XSH-174] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1275 Line: 38811 Section: limits.h Problem: See line 38637, that implies that constants ending in _MIN are negative. Action: Change 38637: "The items in the list ending in _MIN, and referring to negative constants...". At the end of the paragraph add "For positive constants ending in _MIN, this indicates the minimum acceptable value.". _____________________________________________________________________________ Comment Enhancement Request Number 436 donn@interix.com BUG in XSH (rdvk# 436) [] Wed, 14 Jul 1999 13:08:24 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject_____ OPEN Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1276 Line: 38856 Section: limits.h Again, somebody's got to do it... It it time to raise the minimum maximum for filename length? I don't know of anyone who would be writing or developing new work where this would be a problem any longer. I could go over a bunch of arguments, but in short: either the system is working just fine and won't upgrade to a new POSIX ever, or the application will HAVE to deal with the problem, given that the feature is (nearly?) universal. Action Increase to 256. (I could live with smaller, but I don't know of any implementations in the mid-range, although they could exist.) I also suspect that _POSIX_PATH_MAX can be increased similarly, probably to 1024. _____________________________________________________________________________ Objection Enhancement Request Number 437 donn@interix.com BUG in XSH (rdvk# 418) [DT-XSH-175] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1278 Line: 38965 Section: limits.h Problem: Delete legacy. Action: Delete DBL_DIG...FLT_MAX. _____________________________________________________________________________ objection Enhancement Request Number 438 Frank Bug in XSH (rdvk# 162) [prindle.xsh-158] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1309 Line: 40001-40012 Section: signal.h Problem: Lines 40001-40003 and line 40006 should not be shaded. Action: Unshade them and recode following lines XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 439 Frank Bug in XSH (rdvk# 163) [prindle.xsh-159] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1310 Line: 40014-40015 Section: signal.h Problem: Codes are provided also for non-signal-specific reasons (at end of table). Action: The paragraph should read: "The macros specified in the Code column of the following table are defined for use as values of si_code that are signal-specific or non-signal specific reasons why the signal was generated." With only the words "signal-specific or" shaded and coded XSI. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 440 Frank Bug in XSH (rdvk# 164) [prindle.xsh-160] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1311 Line: 40053 Section: signal.h Problem: This code should not be shaded XSI. It is in POSIX.1. Action: Remove shading from this line. ------------------------------------------------------------------------------- _____________________________________________________________________________ editorial Enhancement Request Number 441 Frank Bug in XSH (rdvk# 165) [prindle.xsh-161] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_X___ Accept as marked below_____ Duplicate_____ Reject_____ Rationale for rejected or partial changes: _____________________________________________________________________________ Page: 1312 Line: 40078,40080,40086,40092,40095,40102,40105,40107 Section: signal.h Problem: The shading that belongs on these lines occurs on the next line, which is incorrect. Action: Move shading below these lines up one line. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 442 Frank Bug in XSH (rdvk# 27) [prindle.xsh-23] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: this issue was noted in the reviewers notes for D1. This will require a parse thru of all the headers and changes made for the next draft. _____________________________________________________________________________ Page: 1319 Line: 40311 Section: Problem: The function prototype for ctermid() is not an ISO C library function, so should be marked as CX. This also applies to: fdopen() fileno() flockfile() ftrylockfile() funlockfile() getc_unlocked() getchar_unlocked() pclose() popen() putc_unlocked() putchar_unlocked() Action: Shade these lines and mark with margin code CX. Also, see my objection [prindle.xsh-12] regarding the other XSI shaded lines in this section. ------------------------------------------------------------------------------- _____________________________________________________________________________ objection Enhancement Request Number 443 Frank Bug in XSH (rdvk# 29) [prindle.xsh-25] Wed, 7 Jul 1999 19:26:27 -0500 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: same issue as ERN 442 but accepted seperately as a reminder _____________________________________________________________________________ Page: 1323 Line: 40490 Section: Problem: The function prototype for rand_r() is not an ISO C library function, so should be marked as CX. Action: Shade this line and mark with margin code CX. Also, see my objection [prindle.xsh-12] regarding the other XSI shaded lines in this section. ------------------------------------------------------------------------------- _____________________________________________________________________________ Objection Enhancement Request Number 444 donn@interix.com BUG in XSH (rdvk# 419) [DT-XSH-176] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below__X__ Duplicate_____ Reject_____ Rationale for rejected or partial changes: this is a pervasive change that will apply to all the headers _____________________________________________________________________________ Page: 1343 Line: 41082 Section: sys Problem: "Must" is a requirement on the application. Thus, this text requires that the application create the function prototypes. I don't think so. Action: "Must" -> "shall" in all identical contexts. (I believe that this is a pervasive error; I just noticed it first here.) _____________________________________________________________________________ Objection Enhancement Request Number 445 donn@interix.com BUG in XSH (rdvk# 420) [DT-XSH-177] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_____ Duplicate_____ Reject__X__ Rationale for rejected or partial changes: the proposed action is out of scope , these are XSI extensions _____________________________________________________________________________ Page: 1348 Line: 41238 Section: sys Problem: Use the macros, not the masks. It overspecifies the implementation for no benefit. Action: Delete 41283-41244. _____________________________________________________________________________ Objection Enhancement Request Number 446 donn@interix.com BUG in XSH (rdvk# 421) [DT-XSH-178] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: this will be handled appropriately as an editorial issue _____________________________________________________________________________ Page: 1359 Line: 41561 Section: sys Problem: This is typographical, but truly ugly. In this context, the use of thousands separators as comma conflicts strongly with the meaningful, lexical use of comma as a list separator. Although it violates ISO style rules not to use thousands separators, in this case I would do so (and use thin spaces). Action: Replace thousands separators with thin spaces. _____________________________________________________________________________ Editorial Enhancement Request Number 447 donn@interix.com BUG in XSH (rdvk# 422) [DT-XSH-179] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: these will be handled appropriately by the editors as part of the style cleanup _____________________________________________________________________________ Page: 1365 Line: 41721-41736 Section: tar.h Problem: The literals in the Description column would be far less ambiguous if set as C literals, rather than in ordinary font. Action: Set as C literals (constant width font). _____________________________________________________________________________ Objection Enhancement Request Number 448 donn@interix.com BUG in XSH (rdvk# 423) [DT-XSH-180] Fri, 09 Jul 1999 09:19:07 -0600 _____________________________________________________________________________ Accept_____ Accept as marked below_X___ Duplicate_____ Reject_____ Rationale for rejected or partial changes: no change, these are XSI extensions , the semantics of which are described in the XBD _____________________________________________________________________________ Page: 1368 Line: 41827-41853 Section: termios.h Problem: As far as I can tell, these extra flags just give names to some additional bits, with no defined meaning. (At least, I see no normative text describing the meaning.) I choose: OCRNL: make the foreground and background colors the most visually painful choices possible. NLDLY: make the foreground and background colors identical. NL0: make that color be sickly grey-green. Action: Define with the meanings above. (Or create proper normative text defining the meanings, or delete.) Seriously: I prefer delete. These were considered and deleted in the original POSIX because there were extremely difficult to actually define in a fully portable way allowing for things such as both ordinary and X terminals, mechanical terminals, and the effects of line disciplines. For example: consider a transport that knows that NUL characters are junk: one of the historical delays was to send n nulls. Even if the system does the right thing, are the NULs retained end-to-end?. If it's a timer, consider the effects of delayed transmission over the network, or batching/buffering. There was a long list of such objections. This stuff is just not portable, so to be fair to the application writer, don't delude him into believing that it is.