home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / std_unix / volume.20 < prev    next >
Internet Message Format  |  1990-08-02  |  576KB

  1. From jsq@longway.tic.com  Fri May 18 13:47:32 1990
  2. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3.     id AA17969; Fri, 18 May 90 13:47:32 -0400
  4. Posted-Date: 18 May 90 17:12:59 GMT
  5. Received: by cs.utexas.edu (5.61/1.62)
  6.     id AA08026; Fri, 18 May 90 12:47:19 -0500
  7. Received: by longway.tic.com (4.22/4.16)
  8.     id AA07994; Fri, 18 May 90 12:14:16 cdt
  9. From: John S. Quarterman <usenix.org!jsq@longway.tic.com>
  10. Newsgroups: comp.std.unix
  11. Subject: comp.std.unix Volume 20
  12. Message-Id: <691@longway.TIC.COM>
  13. Sender: std-unix@longway.tic.com
  14. Reply-To: std-unix@uunet.uu.net
  15. Date: 18 May 90 17:12:59 GMT
  16. Apparently-To: std-unix-archive@uunet.uu.net
  17.  
  18. From: John S. Quarterman <jsq@usenix.org>
  19.  
  20. This is the first article in Volume 20 of comp.std.unix.
  21. These volumes are purely for administrative convenience.
  22. Feel free to continue any previous discussion or to start new ones.
  23.  
  24. Topic.
  25.  
  26. The USENET newsgroup comp.std.unix, also known as the mailing list
  27. std-unix@uunet.uu.net, is for discussions of standards related to
  28. the UNIX operating system, particularly of IEEE P1003, or POSIX,
  29. including IEEE 1003.1, 1003.2, etc.
  30.  
  31. Other related standards bodies and subjects include but are not limited to
  32.     IEEE 1201 and IEEE 1238,
  33.     ISO/IEC JTC1 SC22 WG15 (the ISO and IEC version of POSIX),
  34.     the X3.159 Programming Language C Standard by the ANSI X3J11 committee,
  35.     ISO/IEC JTC1 SC22 WG14 (the ISO and IEC version of X3.159),
  36.     X/Open and their X/Open Portability Guide (XPG),
  37.     the Open Software Foundation (OSF),
  38.     UNIX International (UI),
  39.     AT&T System V Interface Definition (SVID),
  40.     System V Release 3, System V Release 4,
  41.     4.2BSD, 4.3BSD, 4.4BSD,
  42.     Tenth Edition UNIX, Plan 9 from Bell Labs,
  43.     Mach, Chorus, Amoeba,
  44.     the UniForum Technical Committee,
  45.     the USENIX Standards Watchdog Committee.
  46.  
  47. Moderator.
  48.  
  49. The newsgroup comp.std.unix and the mailing list std-unix@uunet.uu.net
  50. is moderated.  The moderator is John S. Quarterman, who is also the
  51. Standards Liaison for the USENIX Association.
  52.  
  53. Disclaimer.
  54.  
  55. Postings by any committee member (especially including me) in this
  56. newsgroup do not represent any position (including any draft, proposed
  57. or actual, of a standard) of the committee as a whole or of any
  58. subcommittee unless explicitly stated otherwise in such remarks.
  59.  
  60. * UNIX is a Registered Trademark of AT&T.
  61. ** IEEE is a Trademark of the Institute for Electrical and Electronics
  62.     Engineers, Inc.
  63. *** POSIX is not a trademark.
  64. Various other names mentioned above may be trademarks.
  65. I hope their owners will not object if I do not list them all here.
  66.  
  67.  
  68. Postings.
  69.  
  70. Submissions for posting to the newsgroup and comments about the newsgroup
  71. (including requests to subscribe or unsubscribe to the mailing list)
  72. should go to two different addresses:
  73.  
  74.         DNS address            UUCP source route
  75. Submissions    std-unix@uunet.uu.net        uunet!std-unix
  76. Comments    std-unix-request@uunet.uu.net    uunet!std-unix-request
  77.  
  78. The hostname cs.utexas.edu may be used in place of uunet.uu.net or uunet.
  79. Permission to post to the newsgroup is assumed for mail to std-unix.
  80. Permission to post is not assumed for mail to std-unix-request,
  81. unless explicitly granted in the mail.  Mail to my personal addresses
  82. will be treated like mail to std-unix-request if it obviously refers
  83. to the newsgroup.
  84.  
  85. The mailing list is distributed on the Internet, UUCP, and elsewhere.
  86. There is a redistribution list on BITNET for BITNET, EARN, and NetNorth.
  87. Please send submissions from those networks to std-unix@uunet.uu.net
  88. nonetheless, because messages sent to the BITNET LISTSERV will not reach
  89. the whole list.
  90.  
  91. If you have access to USENET, it is better (more efficient, cheaper,
  92. less effort for me to manage) to subscribe to the newsgroup comp.std.unix
  93. than to the mailing list.  Submissions should still go to the above
  94. addresses, although many (perhaps most) USENET hosts will forward
  95. attempts to post directly to the newsgroup to the moderator.
  96.  
  97. Posted articles may originate from uunet.uu.net, longway.tic.com,
  98. cs.utexas.edu, or usenix.org.  There are also occasional guest moderators,
  99. who may post from still other machines.  Guest moderators are announced
  100. in advance by the regular moderator.
  101.  
  102. Archives.
  103.  
  104. Archives for comp.std.unix or std-unix@uunet.uu.net may be found on UUNET.
  105. Most of them are compressed, so if you don't have compress, get it first
  106. (it's in the comp.sources.unix archives).
  107.  
  108. The comp.std.unix archives may be retrieved by anonymous FTP over the Internet.
  109. Connect to uunet.uu.net with FTP and log in as user anonymous with password
  110. guest.
  111.  
  112. The current volume is in the file
  113.         ~ftp/comp.std.unix/archive
  114. or
  115.         ~ftp/comp.std.unix/volume.19
  116. The previous volume may be retrieved as 
  117.         ~ftp/comp.std.unix/volume.18.Z
  118.  
  119. For hosts with direct UUCP connections to UUNET, UUCP transfer from
  120. host uunet should work with, for example,
  121.         uucp uunet!'~ftp/comp.std.unix/archive' archive
  122. You will have to put a backslash before the ! (i.e., \!)
  123. if you're using the C shell.
  124.  
  125. The output of "cd ~ftp/comp.std.unix; ls -l" is in
  126.         ~ftp/comp.std.unix/list
  127. and the output of "cd ~ftp/comp.std.unix; ls -l *" is in
  128.         ~ftp/comp.std.unix/longlist
  129.  
  130. For further details, retrieve the file
  131.         ~ftp/comp.std.unix/README
  132.  
  133.  
  134. General submission acceptance policy.
  135.  
  136. I post more than 90% of all submissions.  However, as moderator,
  137. I retain the right to reject submissions.  If a submission does not
  138. appear relevant to comp.std.unix, it is sent back to the submittor with
  139. a note saying why it is not appropriate.  Usually this is because it
  140. just doesn't fit the topic of the newsgroup, in which case I suggest
  141. another newsgroup.  Sometimes it is because someone else has already
  142. given the same answer to a question, in which case I ask if the
  143. submittor really wants it posted.  Occasionally I suggest editing that
  144. would make an article more appropriate to the newsgroup.  Very
  145. occasionally I reject an article outright:  this is almost always
  146. because it contains ad hominem attacks, which are never permitted.
  147.  
  148. Crosspostings are discouraged.  Submissions such as ``how do I find
  149. xyz piece of software'' or ``is the x implementation better than the
  150. y implementation'' that come in with multiple newsgroups indicated
  151. usually get sent back to the submittor with a suggestion to resubmit
  152. without comp.std.unix in the Newsgroups: line.  Sometimes I'll crosspost
  153. if there's clear relevance to comp.std.unix, but I always add a
  154. Followup-To: line in an attempt to direct further discussion to
  155. a single newsgroup, usually comp.std.unix.  This policy is useful
  156. because crossposting often produces verbose traffic of little
  157. relevance to comp.std.unix.
  158.  
  159. Editorial policy.
  160.  
  161. When posting a submission, I sometimes make changes to it.  These
  162. are of three types:  headers and trailers; comments; and typographical.
  163.  
  164. Headers and trailers
  165.  
  166. Header changes include:
  167. + Cleaning up typos, particularly in Subject: lines.
  168. + Rationalizing From: lines to contain only one address syntax,
  169.     either hosta!hostb!host!user or, preferably, user@domain.
  170. + Adding a Reply-To: line.  This usually points to the newsgroup
  171.     submission address, for reasons too messy to detail here.
  172. + Adding the Approved: line.
  173. + Deleting any Distribution: line, as detailed in the next paragraph.
  174.  
  175. The only distribution used in comp.std.unix is no distribution, i.e.,
  176. worldwide.  If it's not of worldwide interest, it doesn't belong in
  177. comp.std.unix.  Anything pertaining to IEEE 1003, IEEE 1201, X3J11,
  178. or WG15 is of worldwide interest.  If a submission arrives with a
  179. Distribution:  line, such as na or us, I delete that line.
  180.  
  181. Every article has a trailing line of the form
  182. >    Volume-Number: Volume 19, Number 200
  183. This allows the reader to notice articles lost in transmission and
  184. permits the moderator to more easily catalog articles in the archives.
  185. Volumes usually change after about 100 articles, but are purely for
  186. administrative convenience; discussions begun in one volume should
  187. be continued into the next volume.
  188.  
  189.  
  190.  
  191. Comments
  192.  
  193. Comments by the moderator are sometimes added to clarify obscure
  194. issues.  These are always enclosed in square brackets with the
  195. closing mark ``-mod,'' [ like this -mod ].  Sometimes entire articles
  196. appear that are written by the moderator:  these always end with
  197. a signature that includes the words ``moderator, comp.std.unix.''
  198.  
  199. Comments by the editor of the USENIX Standards Watchdog Reports
  200. sometimes appear in those reports.  Such comments are always
  201. enclosed in square brackets and begin with the word ``Editor:''
  202. [ Editor: like this ].
  203.  
  204. Comments by the publisher of the USENIX Standards Watchdog Reports
  205. sometimes appear in those reports.  Such comments are always
  206. enclosed in square brackets and end with the mark ``-pub,''
  207. [ like this -pub ].
  208.  
  209. Entire articles may appear by the editor or publisher of the
  210. Watchdog Reports, and those are always identified by the signature.
  211.  
  212. Typographical
  213.  
  214. People submitting articles sometimes enclose parenthetical comments
  215. in brackets [] instead of parentheses ().  I always change these
  216. to parentheses to avoid confusion with the above conventions for
  217. comments by the moderator, editor, or publisher.
  218.  
  219. Obvious misspellings, such as ``it's'' for the possesive or
  220. ``its'' as a contraction of ``it is'' are corrected.
  221.  
  222. Excess white space is deleted.
  223.  
  224. Lines longer than 80 characters are reformatted.
  225.  
  226. Redundant quoted headers are often omitted.
  227.  
  228. Very long quotations of previous articles are sometimes shortened.
  229.  
  230.  
  231.  
  232. Common kinds of postings.
  233.  
  234. There are several sets of postings that reoccur in comp.std.unix
  235. at more or less regular intervals.  Here are three of the most common.
  236.  
  237. Calendar of UNIX-Related Events
  238.  
  239. Susanne W. Smith <sws@calvin.wa.com> of Windsound Consulting of Edmonds,
  240. Washington and John S. Quarterman <jsq@longway.tic.com> of Texas Internet
  241. Consulting (TIC) of Austin, Texas publish a combined calendar of planned
  242. conferences, workshops, or standards meetings related to the UNIX operating
  243. system.  These appear approximately every other month in four articles
  244. with these titles:
  245.     Calendar of UNIX-related Events
  246.     Access to UNIX User Groups
  247.     Access to UNIX-Related Publications
  248.     Access to UNIX-Related Standards
  249. The first three are posted to
  250.     comp.std.unix,comp.unix.questions,comp.org.usenix
  251. The one about standards is posted only to comp.std.unix.
  252.  
  253. These calendar postings are a private project of Windsound and TIC,
  254. although they are coordinated with various groups such as USENIX, EUUG,
  255. AUUG, JUS, UniForum, and IEEE TCOS.  Smith and Quarterman encourage
  256. others to reuse this information, but ask for proper acknowledgment.
  257.  
  258. USENIX Standards Watchdog Reports
  259.  
  260. The USENIX Association sponsors a set of reports after each quarterly
  261. meeting of the IEEE 1003 and IEEE 1201 standards committees.  These
  262. reports are written by volunteers who are already attending committee
  263. meetings and are edited by the Watchdog Report Editor, who is
  264. Jeff Haemer <jsh@usenix.org>.  Reports on other committees, such as
  265. X3J11, are also included when available.  These reports are reviewed
  266. for publication by John S. Quarterman acting as publisher for the
  267. USENIX Standards Policy Committee, which consists of Quarterman (chair),
  268. Marshall Kirk McKusick (USENIX President), Alan G. Nemeth (past USENIX
  269. President), and Ellie Young (USENIX Executive Director).  The reports
  270. are published in comp.std.unix/std-unix@uunet.uu.net and ;login:
  271. The Newsletter of the USENIX Association.  They are also available
  272. for publication elsewhere.
  273.  
  274. EUUG/USENIX ISO Monitor Project
  275.  
  276. The European UNIX systems Users Group (EUUG) and the USENIX Association
  277. jointly sponsor an observer to the ISO/IEC JTC1 SC22 WG15 (ISO POSIX)
  278. standards committee.  This observer, Dominic Dunlop <domo@tsa.co.uk>,
  279. writes a report after each WG15 meeting, of which there are usually
  280. two a year.  These reports are reviewed by John S. Quarterman, USENIX
  281. Standards Liaison, acting as manager of the ISO Monitor Project.  They
  282. are published in the EUUG Newsletter (EUUGN), :login;, and comp.std.unix.
  283. They are also available for publication elsewhere.
  284.  
  285. John S. Quarterman, moderator, comp.std.unix and std-unix@uunet.uu.net.
  286.  
  287. Volume-Number: Volume 20, Number 1
  288.  
  289. From jsq@longway.tic.com  Sat May 19 14:24:16 1990
  290. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  291.     id AA12671; Sat, 19 May 90 14:24:16 -0400
  292. Posted-Date: 18 May 90 21:10:49 GMT
  293. Received: by cs.utexas.edu (5.61/1.62)
  294.     id AA04198; Sat, 19 May 90 13:24:13 -0500
  295. Received: by longway.tic.com (4.22/4.16)
  296.     id AA10450; Sat, 19 May 90 10:11:09 cdt
  297. From: Peter da Silva <ficc.ferranti.com!peter@longway.tic.com>
  298. Newsgroups: comp.std.unix
  299. Subject: Re: Common Reference Ballot
  300. Message-Id: <692@longway.TIC.COM>
  301. References: <689@longway.TIC.COM>
  302. Sender: std-unix@longway.tic.com
  303. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  304. Organization: Xenix Support, FICC
  305. Date: 18 May 90 21:10:49 GMT
  306. Apparently-To: std-unix-archive@uunet.uu.net
  307.  
  308. From: peter@ficc.ferranti.com (Peter da Silva)
  309.  
  310. I find myself in violent agreement with most of the points raised here,
  311. but there are two areas I don't think have been adequately thought through,
  312. and I have one alternative suggestion.
  313.  
  314. (mmap):
  315. > SVID 3 (System V Release 4.0), OSF AES (OSF/1), Berkeley BSD 4.4, MACH
  316. > 2.5, ULTRIX, SunOS, HP/UX, etc, all include an (almost) identical
  317. > definition of mmap() based on the current Sun/Berkeley specification.
  318.  
  319. V.3.2 does not include this interface, and V.3.2 is going to be around,
  320. and in fact very common, for at least a couple of years to come. A standard
  321. that locks out V.3.2 is going to hurt portability.
  322.  
  323. I believe that implementing shared memory in terms of memory mapped files
  324. is a good thing, and that every effort should be made to encourage it...
  325. within reason. Preventing the implementation of POSIX shared memory on
  326. the largest installed base of UNIX systems in existence is not within
  327. reason.
  328.  
  329. If the interface is "mmap" with a set of constant parameters, this will
  330. serve to hurt portability.
  331.  
  332.     a) People with "real mmap" will end up using more than the
  333.        standard allows. This is a pretty simple prediction... look
  334.        at existing extended implementations.
  335.  
  336.     b) People with the "fake mmap" will end up blowing the extra
  337.        parameters, "safely". Then when run on a system with the real
  338.        thing their programs will fail.
  339.  
  340. In practice, it would be best for both interfaces to (for portable
  341. programs, anyway) have a #define that hides the extra parameters. Which
  342. is exactly what the draft does.
  343.  
  344. (IPC in general):
  345. I don't believe the interface requires a shared file system. "mkmq()"
  346. can broadcast a message to all machines to create the named file as a
  347. normal file and place in it a special token. This token can be read from
  348. the file descriptor returned by "open()", and used by the "mq*()" routines
  349. to indicate the real name of the message queue.
  350.  
  351. I think it fairly important to put as many of the names of objects in the
  352. UNIX file system name space as possible. See pp 256,257.
  353.  
  354. And one minor point (a wish-list entry):
  355.  
  356. (sender_t in IPC):
  357. > The only information about the sender which would be useful
  358. > would be an indication about how to reply to the sender.  In
  359. > this framework that would be a pathname;
  360.  
  361. Or a file descriptor, perhaps? I had some questions about the utility of
  362. this feild, too, since it can't be used for any portable purpose. I'd rather
  363. see some meaning defined for it, though, than have it kicked out. Since
  364. returning an fd here is probably not a portable usage, this is a bit of a
  365. wish-list item...
  366. -- 
  367. `-_-' Peter da Silva. +1 713 274 5180.  <peter@ficc.ferranti.com>
  368.  'U`  Have you hugged your wolf today?  <peter@sugar.hackercorp.com>
  369. @FIN  Dirty words: Zhghnyyl erphefvir vayvar shapgvbaf.
  370.  
  371. Volume-Number: Volume 20, Number 2
  372.  
  373. From jsq@longway.tic.com  Sat May 19 15:44:08 1990
  374. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  375.     id AA28102; Sat, 19 May 90 15:44:08 -0400
  376. Posted-Date: 19 May 90 19:18:00 GMT
  377. Received: by cs.utexas.edu (5.61/1.62)
  378.     id AA06935; Sat, 19 May 90 14:44:04 -0500
  379. Received: by longway.tic.com (4.22/4.16)
  380.     id AA10960; Sat, 19 May 90 14:19:07 cdt
  381. From: <usenix.org!jsh@longway.tic.com>
  382. Newsgroups: comp.std.unix
  383. Subject: Standards Update, IEEE 1003.0: POSIX Guide
  384. Message-Id: <693@longway.TIC.COM>
  385. Sender: std-unix@longway.tic.com
  386. Reply-To: std-unix@uunet.uu.net
  387. Date: 19 May 90 19:18:00 GMT
  388. Apparently-To: std-unix-archive@uunet.uu.net
  389.  
  390. From: <jsh@usenix.org>
  391.  
  392.  
  393.            An Update on UNIX*-Related Standards Activities
  394.  
  395.                                May 1990
  396.  
  397.                  USENIX Standards Watchdog Committee
  398.  
  399.                    Jeffrey S. Haemer, Report Editor
  400.  
  401. IEEE 1003.0: POSIX Guide
  402.  
  403. Kevin Lewis <klewis@gucci.dco.dec.com> reports on the April 23-27
  404. meeting in Salt Lake City, UT:
  405.  
  406. Where we are
  407.  
  408. The Utah meeting of the IEEE 1003.0 working group marks the beginning
  409. of its third year.  Let's step back for a moment to review the past
  410. two.  We have gone from scratch to a 180-page document, whose content
  411. represents about 70% of the content goal that we set for our work two
  412. years ago.  (More on this in a moment.)
  413.  
  414. This effort represents the contributions of a core group of 15 to 18
  415. people.  In 1988, 14 vendor organizations and 16 user organizations
  416. were represented within the group.  Today, we have nine vendor
  417. organizations and 16 user organizations represented.  Of course, the
  418. only official, formal organizational representatives allowed within
  419. IEEE working groups are accredited, institutional representatives
  420. (currently Usenix, UniForum, X/Open, Unix International, and the Open
  421. Software Foundation each supply one to the POSIX effort), but that
  422. does not stop me from checking the sign-up sheet whenever a new face
  423. shows up, to see where he or she works.  For example, I think someone
  424. from the Univ. of Berkeley involved in BSD UNIX development has a
  425. vendor's perspective, while I place attendees from NIST and the Air
  426. Force in the user category because I believe they focus on the
  427. interests of their own end users.  Our stable, steady user
  428. representation is essential: our ultimate targets are users trying to
  429. walk through the POSIX maze.
  430.  
  431. The 70% completion of our initial content goal includes the
  432. introduction of the ``profile'' concept, which has led to increased
  433. activity within the IEEE TCOS Standards Subcommittee to create groups
  434. to define profiles (which may be good or bad depending on your own
  435. prism).  The concept of profiles is also part of the US's contribution
  436. to the ISO community, made through its participation in the JTC1
  437. Technical Study Group on Application Portability (JTAP), within which
  438. the ``profiles'' concept has now garnered wide acceptance.
  439.  
  440. __________
  441.  
  442.   * UNIX is a registered trademark of AT&T in the U.S. and other
  443.     countries.
  444.  
  445. May 1990 Standards Update                     IEEE 1003.0: POSIX Guide
  446.  
  447.  
  448.                                 - 2 -
  449.  
  450. ``What is a profile?'' you ask.  Users seeking open system solutions
  451. need to know what parts of the open system environment (OSE) address
  452. their requirements.  If a user could reach into the full basket of OSE
  453. parts and pull out only those he specifically needs, those selected
  454. parts would be his application environment profile.  What he should do
  455. if he needs something not in the basket?  Come to our next meeting
  456. with a recommendation.  [Editor: Or drop Kevin a line, or post
  457. something to comp.std.unix!]
  458.  
  459. Where we're going
  460.  
  461. Dot Zero still faces hard decisions in two areas:
  462.  
  463.   1.  the necessity or desirability of parts of our guide.  (Two parts
  464.       that I very much think are candidates for this discussion are
  465.       User Interface and Security)
  466.  
  467.   2.  The final bounds of the profile concept/definition.
  468.  
  469. The group's arguments in these areas are not frivolous, but if they
  470. continue much longer, the resulting lack of movement will hurt our
  471. overall effort.
  472.  
  473. I came out of this meeting feeling that everyone is committed to
  474. getting over these hurdles soon (i.e., by the July meeting).  Our
  475. chair, Al Hankinson, has also stated that we should target December,
  476. 1990 for a mock ballot.  I wholeheartedly agree.  This will add the
  477. impetus that we need.  Let's see if we have the self-discipline to get
  478. there.
  479.  
  480. May 1990 Standards Update                     IEEE 1003.0: POSIX Guide
  481.  
  482. Volume-Number: Volume 20, Number 3
  483.  
  484. From jsq@longway.tic.com  Sat May 19 15:44:21 1990
  485. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  486.     id AA28141; Sat, 19 May 90 15:44:21 -0400
  487. Posted-Date: 19 May 90 19:32:16 GMT
  488. Received: by cs.utexas.edu (5.61/1.62)
  489.     id AA06961; Sat, 19 May 90 14:44:15 -0500
  490. Received: by longway.tic.com (4.22/4.16)
  491.     id AA11079; Sat, 19 May 90 14:32:52 cdt
  492. From: <usenix.org!jsh@longway.tic.com>
  493. Newsgroups: comp.std.unix
  494. Subject: Standards Update, ANSI X3B11.1: WORM File Systems
  495. Message-Id: <694@longway.TIC.COM>
  496. Sender: std-unix@longway.tic.com
  497. Reply-To: std-unix@uunet.uu.net
  498. Date: 19 May 90 19:32:16 GMT
  499. Apparently-To: std-unix-archive@uunet.uu.net
  500.  
  501. From: <jsh@usenix.org>
  502.  
  503.  
  504.            An Update on UNIX*-Related Standards Activities
  505.  
  506.                                May 1990
  507.  
  508.                  USENIX Standards Watchdog Committee
  509.  
  510.                    Jeffrey S. Haemer, Report Editor
  511.  
  512. ANSI X3B11.1: WORM File Systems
  513.  
  514. Andrew Hume <andrew@research.att.com> reports on the April 17-19, 1990
  515. meeting in Tucson, AZ:
  516.  
  517. Introduction
  518.  
  519. X3B11.1 is working on a standard for file interchange on write-once,
  520. non-sequential (random access) media: a portable file system for
  521. WORMs.  This was our fourth meeting.  With many major issues somewhat
  522. settled, our main, remaining decisions are how to implement directory
  523. hierarchies and how to manage free space.
  524.  
  525. Multi-Volume Sets
  526.  
  527. WORM file systems store a fair amount of information per file (such as
  528. most of the fields in struct stat), per directory, per partition, and
  529. per volume.  A volume is a logical address space associated with a
  530. piece of physical media.  For example, a WORM disk that can only be
  531. accessed one side at a time would be two volumes.  Each volume has a
  532. label block describing its size, partitions, directory hierarchies,
  533. free-space management, and so on.  (Free-space management is discussed
  534. below; for now, this could mean a pointer to the next free block.)
  535.  
  536. Informally, multi-volume sets means files and directories can be
  537. spread over several volumes.  Here are some requirements for this
  538. feature:
  539.  
  540.    - A file can be bigger than a volume (file sizes are limited to
  541.      2**64 bytes).
  542.  
  543.    - You can append to a file.
  544.  
  545.    - You can update any part of a file.
  546.  
  547.    - All volumes need not be simultaneously accessible.  (That is, if
  548.      you have a three-volume volume set, you don't need three drives.)
  549.  
  550. __________
  551.  
  552.   * UNIX is a registered trademark of AT&T in the U.S. and other
  553.     countries.
  554.  
  555. May 1990 Standards Update              ANSI X3B11.1: WORM File Systems
  556.  
  557.  
  558.                                 - 2 -
  559.  
  560.    - Each volume, and the whole volume set, must be consistent after
  561.      an update.
  562.  
  563.    - Usable, although perhaps not fast, on a single drive.  The idea
  564.      is that you can't mandate that the control structures for the
  565.      volume set be distributed over the set, because that would mean
  566.      that on single-drive systems, users might have to mount every
  567.      volume to recover even a single file.  We would like to require
  568.      only that the user mount the volume the file is on and perhaps
  569.      one other (the master volume).
  570.  
  571.    - Each volume must be self-contained (for disaster recovery),
  572.  
  573.    - Security control is per volume, directory, and file.
  574.  
  575. After convincing ourselves that we all spoke roughly the same
  576. language, we came to consensus decisions for the following questions:
  577.  
  578.    - Can a file description point to extents (files are spread across
  579.      a list of extents) on later volumes? (Yes)
  580.  
  581.    - Can a directory entry point to a file description on a later
  582.      volume? (Yes)
  583.  
  584.    - Must a directory be completely contained on a single volume? (No)
  585.      Why?  There's no reason to require it.  All implementations are
  586.      likely to use the same primitives to manage files and directories
  587.      (that is, they'll implement directories as files); if you can
  588.      handle multi-volume files correctly, directories should be easy
  589.      too.  Some people were concerned about being able to get the
  590.      directory in one (more or less) I/O or block (especially for MS-
  591.      DOS) but that can't happen in general; directories and files are
  592.      likely to be spread all over the volume.
  593.  
  594.    - must all the file descriptions for a single directory hierarchy
  595.      fit on a single volume? (no)
  596.  
  597.    - should each volume of a volume set point to the volume describing
  598.      the root of the main directory hierarchy for that set? (yes)
  599.  
  600. The above involve subtleties not readily apparent; details available
  601. on request.
  602.  
  603. Directory Hierarchies
  604.  
  605. Much discussion centered on how to implement directory hierarchies --
  606. at least, after our initial surprise discovery that we are committed
  607. to support multiple directory hierarchies.  This commitment comes from
  608. the CD-ROM standard, ISO 9660, where the intent was to have an ASCII
  609. directory tree and one or more national-character-set trees.
  610.  
  611. May 1990 Standards Update              ANSI X3B11.1: WORM File Systems
  612.  
  613.  
  614.                                 - 3 -
  615.  
  616. [Editor: CD-ROMs, like WORMs, are on write-only media, but solve
  617. different problems.  Both provide tremendous storage capacity, but
  618. CD-ROMs appear to the user to be read-only, while WORMs appear to
  619. provide read and write access.  Nevertheless, on WORMs, writing to a
  620. file means either appending characters to a pre-allocated chunk of
  621. disk, or rewriting a new version of the file in a new place.  Once a
  622. file, or file version, is discarded, the piece of the physical medium
  623. it's stored on is forever lost, not released for re-use.  CD-ROMs are
  624. for storing the Encyclopedia Britannica; WORMs are for storing
  625. backups.  ]
  626.  
  627. Our basic choice is between what I call the scattered directory tree,
  628. which is much like the standard, UNIX file system, and path tables
  629. (linearized encodings of the tree structure).  ISO 9660 supports both.
  630. Scattered directories are simpler to deal with and somewhat easier to
  631. update, but probably slow to access because they require too much
  632. seeking.  Path tables seem faster at first glance (large contiguous
  633. reads, etc.), but their simplicity and speed seem to evaporate when
  634. the tables are modified.  There is no consensus on which method to
  635. use.  I originally held out for two methods, a flexible one and a
  636. really fast one, but have come to the conclusion, reinforced by
  637. conversations with Ken Thompson, that it is better to have one
  638. flexible method in the standard -- scattered directories --  and
  639. handle accelerators, such as directory trees cached on magnetic disk,
  640. as system-dependent structures outside the standard.
  641.  
  642. Suppose you update a file; doesn't that mean you also have to re-write
  643. the directory, and, therefore, its parent directory, and, therefore,
  644. its parent directory, and so on all the way up to the root directory?
  645. And the volume header?  How do you find the root directory, the volume
  646. header, and so on?  This stuff is not yet decided but we envision that
  647. the file description stuff will have preallocated spare space so that
  648. a few updates can be done without changing anything outside the file
  649. description.  Once this space is full, the system will have to get
  650. free space elsewhere, which implies updating some other area
  651. describing the free space.  The volume header is in a fixed location
  652. (probably 8KB in from the start of media) and will point to any later
  653. volume headers and other stuff (such as where the root of the various
  654. directory trees are).
  655.  
  656. Requirements for the directory hierarchy include space and time
  657. efficiency, robustness (e.g., to minimize damage from a single I/O
  658. error), a single, fast structure (unlike ISO 9660's two), and that a
  659. directory entry for a file must be complete (that is, point to all the
  660. extents for that file).
  661.  
  662. May 1990 Standards Update              ANSI X3B11.1: WORM File Systems
  663.  
  664.  
  665.                                 - 4 -
  666.  
  667. Space Allocation and Management
  668.  
  669. We must support pre-allocation of space (e.g., ``Reserve 40MB of
  670. contiguous space for file `xyz'. '') both for speed and to support
  671. systems like the MacIntosh.  Because of the latter, we also need to
  672. support giving back unused reserved space for later use.
  673.  
  674. These two requirements appear to force the standard to address
  675. describing the free space in a volume set, which will also be
  676. important if the standard is extended to cover R/W optical disks,
  677. where freed blocks need to be cleared before reuse.  The two choices
  678. appear to be run-length encodings of the free space or bitmap
  679. techniques.  The former can degrade to being quite large, while the
  680. latter have a fixed, but high, overhead (current media hold up to
  681. 8.2GB/side!).
  682.  
  683. Finale
  684.  
  685. We hope to conduct a letter ballot soon after the October, 1990
  686. meeting.  If we can approve a proposal by January, 1991 then it may be
  687. an ANSI standard by January, 1992.  Our next meeting is in Murray
  688. Hill, New Jersey, on July 17-19, where we expect to adopt the proposal
  689. being edited by Howard Kaikow as our working proposal.  Anyone
  690. interested in attending should contact either the chairman, Ed Beshore
  691. (edb@hpgrla.hp.com), or me (andrew@research.att.com).
  692.  
  693. While this standard may seem of limited interest, because it deals
  694. only with WORMs, X3B11.1 expects approval shortly to develop a similar
  695. standard for R/W optical media.  It doesn't take much imagination to
  696. see that standard being extended to apply to all rewritable, direct-
  697. access media.  (Unlike the CD-ROM standards committee, which ignored
  698. UNIX, this committee has a significant number of UNIX users, including
  699. representatives from AT&T Bell Labs, Sun, Hewlett-Packard.  That, at
  700. least, insures filenames won't be required to have a compulsory
  701. three-character suffix and a version number.) Once we have a working
  702. paper, anyone who cares about portable, multi-volume, multiple-
  703. character-set file systems should take a look.  [Editor: Pay
  704. attention.  He's giving you fair warning.]
  705.  
  706. May 1990 Standards Update              ANSI X3B11.1: WORM File Systems
  707.  
  708.  
  709. Volume-Number: Volume 20, Number 4
  710.  
  711. From jsq@longway.tic.com  Sat May 19 15:44:38 1990
  712. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  713.     id AA28156; Sat, 19 May 90 15:44:38 -0400
  714. Posted-Date: 19 May 90 19:34:52 GMT
  715. Received: by cs.utexas.edu (5.61/1.62)
  716.     id AA06978; Sat, 19 May 90 14:44:34 -0500
  717. Received: by longway.tic.com (4.22/4.16)
  718.     id AA11134; Sat, 19 May 90 14:35:24 cdt
  719. From: <usenix.org!jsh@longway.tic.com>
  720. Newsgroups: comp.std.unix
  721. Subject: Standards Update, IEEE 1003.4: Real-time Extensions
  722. Message-Id: <695@longway.TIC.COM>
  723. Sender: std-unix@longway.tic.com
  724. Reply-To: std-unix@uunet.uu.net
  725. Date: 19 May 90 19:34:52 GMT
  726. Apparently-To: std-unix-archive@uunet.uu.net
  727.  
  728. From: <jsh@usenix.org>
  729.  
  730.  
  731.            An Update on UNIX*-Related Standards Activities
  732.  
  733.                                May 1990
  734.  
  735.                  USENIX Standards Watchdog Committee
  736.  
  737.                    Jeffrey S. Haemer, Report Editor
  738.  
  739. IEEE 1003.4: Real-time Extensions
  740.  
  741. Rick Greer <rick@ism.isc.com> reports on the April 23-27 meeting in
  742. Salt Lake City, UT:
  743.  
  744. 1003.4
  745.  
  746. The .4 ballots went out on schedule, and most came back on schedule as
  747. well.  We (barely) got the required 75% response, of which 43%
  748. approved of the draft as it stood.  The small-group leaders are
  749. currently working to resolve the objections and will report back at
  750. Danvers, in July.
  751.  
  752. 1003.4a
  753.  
  754. Most of the work at Snowbird centered around threads (.4a).  Two
  755. alternatives to the pthreads proposal were presented at the meeting:
  756. ``strands'', from John Zolnowsky of Sun, defined a minimal set of
  757. interfaces for multi-threaded applications; ``VP'', from Paul Borman
  758. of Cray, added a ``virtual processor'' layer to the pthreads
  759. specification, which made some multiprocessor (MP) features visible to
  760. applications.
  761.  
  762. The primary MP hardware feature that Paul's VP proposal makes visible
  763. to the pthreads environment is the ability to write your own spin
  764. loops and expect them to work.  One could, for example, have one
  765. thread continuously reading an in-core data base while another thread
  766. updates it.  On an MP system, it might be more efficient to code this
  767. without using a mutex, although doing so on a uni-processor with a
  768. co-routine threads package is an absolute disaster.  The new
  769. multiprocessor group, 1003.16, is looking into this and similar
  770. problems, and will probably suggest that .4a include some sort of
  771. system-wide attribute structure that one can check when writing
  772. programs that depend heavily on concurrent execution of threads.
  773.  
  774. After a week's discussion (often a euphemism for argument), we settled
  775. into a compromise position not that far from where we started --
  776.  pthreads.  All this work without much net change was frustrating, but
  777.  
  778. __________
  779.  
  780.   * UNIX is a registered trademark of AT&T in the U.S. and other
  781.     countries.
  782.  
  783. May 1990 Standards Update            IEEE 1003.4: Real-time Extensions
  784.  
  785.  
  786.                                 - 2 -
  787.  
  788. probably unavoidable.  Until fairly recently most of the committee was
  789. busy getting the .4 draft ready for balloting.  Lacking enough time to
  790. have studied threads carefully, members were unwilling to accept the
  791. small group's conclusions before investigating some alternatives for
  792. themselves.  Still, some progress was made.  The most important was a
  793. more comprehensive definition of signal behavior in multi-threaded
  794. programs.
  795.  
  796. 1003.14
  797.  
  798. On the last day, a first attempt at a real-time application
  799. environment profile (AEP) was presented.  This PAR will be an
  800. excellent, practical test of AEPs.  Real-time applications are likely
  801. to vary wildly in the subsets of .4's rich features that they require.
  802. Some worry that the real-time AEP will force embedded systems that
  803. need only one or two .4 features to incorporate others just to adhere
  804. to the standard.  The problem this poses is not just storage space
  805. wasted by unused code, but the expense of verifying that this extra
  806. code will never get in the way of the application.  The group will be
  807. wrestling with these and similar problems in the months to come.
  808.  
  809. May 1990 Standards Update            IEEE 1003.4: Real-time Extensions
  810.  
  811.  
  812. Volume-Number: Volume 20, Number 5
  813.  
  814. From jsq@longway.tic.com  Sun May 20 17:28:14 1990
  815. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  816.     id AA20518; Sun, 20 May 90 17:28:14 -0400
  817. Posted-Date: 20 May 90 03:08:17 GMT
  818. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  819.     id AA18185; Sun, 20 May 90 16:28:10 -0500
  820. Received: by longway.tic.com (4.22/4.16)
  821.     id AA13321; Sun, 20 May 90 16:05:38 cdt
  822. From: Doug Gwyn <smoke.brl.mil!gwyn@longway.tic.com>
  823. Newsgroups: comp.std.unix
  824. Subject: Re: Common Reference Ballot
  825. Message-Id: <696@longway.TIC.COM>
  826. References: <689@longway.TIC.COM> <692@longway.TIC.COM>
  827. Sender: std-unix@longway.tic.com
  828. Reply-To: std-unix@uunet.uu.net
  829. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  830. Date: 20 May 90 03:08:17 GMT
  831. Apparently-To: std-unix-archive@uunet.uu.net
  832.  
  833. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  834.  
  835. In article <692@longway.TIC.COM> peter@ficc.ferranti.com (Peter da Silva) writes:
  836. -> SVID 3 (System V Release 4.0), OSF AES (OSF/1), Berkeley BSD 4.4, MACH
  837. -> 2.5, ULTRIX, SunOS, HP/UX, etc, all include an (almost) identical
  838. -> definition of mmap() based on the current Sun/Berkeley specification.
  839. -V.3.2 does not include this interface, and V.3.2 is going to be around,
  840. -and in fact very common, for at least a couple of years to come. A standard
  841. -that locks out V.3.2 is going to hurt portability.
  842. -I believe that implementing shared memory in terms of memory mapped files
  843. -is a good thing, and that every effort should be made to encourage it...
  844. -within reason. Preventing the implementation of POSIX shared memory on
  845. -the largest installed base of UNIX systems in existence is not within
  846. -reason.
  847.  
  848. The goal of POSIX was not to bless existing botched implementations!
  849. 4.3BSD also does not provide a working mmap(), and it also fails to
  850. comply with 1003.1 in numerous ways.  This is being addressed by making
  851. a future release (4.4BSD) POSIX-compliant, not by making 1003.1 cater
  852. to existing deficiencies.  Similarly for the real-time extensions.
  853. If 1003.1 had had to avoid making implementors improve their products,
  854. it would have been of even less practical use than the /usr/group 1984
  855. standard.
  856.  
  857. -    a) People with "real mmap" will end up using more than the
  858. -       standard allows. This is a pretty simple prediction... look
  859. -       at existing extended implementations.
  860. -    b) People with the "fake mmap" will end up blowing the extra
  861. -       parameters, "safely". Then when run on a system with the real
  862. -       thing their programs will fail.
  863.  
  864.     c) People who are concerned with portability with not stray
  865.        outside the domain that the standard guarantees to work.
  866.  
  867. You seem to be arguing that extensions should be prohibited.
  868.  
  869. Volume-Number: Volume 20, Number 6
  870.  
  871. From jsq@longway.tic.com  Mon May 21 09:17:52 1990
  872. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  873.     id AB08280; Mon, 21 May 90 09:17:52 -0400
  874. Posted-Date: 20 May 90 23:18:57 GMT
  875. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  876.     id AA12966; Mon, 21 May 90 08:17:45 -0500
  877. Received: by longway.tic.com (4.22/4.16)
  878.     id AA15624; Mon, 21 May 90 08:13:05 cdt
  879. From: Peter da Silva <ficc.ferranti.com!peter@longway.tic.com>
  880. Newsgroups: comp.std.unix
  881. Subject: Re: Common Reference Ballot
  882. Message-Id: <697@longway.TIC.COM>
  883. References: <689@longway.TIC.COM> <692@longway.TIC.COM> <696@longway.TIC.COM>
  884. Sender: std-unix@longway.tic.com
  885. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  886. Organization: Xenix Support, FICC
  887. Date: 20 May 90 23:18:57 GMT
  888. Apparently-To: std-unix-archive@uunet.uu.net
  889.  
  890. From: peter@ficc.ferranti.com (Peter da Silva)
  891.  
  892. In article <696@longway.TIC.COM> std-unix@uunet.uu.net writes:
  893. > The goal of POSIX was not to bless existing botched implementations!
  894.  
  895. If that's the case, why doesn't 1003.1 require 255-character file names?
  896.  
  897. It has been observed in the past, by many people, that the most successful
  898. standards have been conservative ones. Standards that basically blessed
  899. what people have been doing anyway...
  900.  
  901. >     c) People who are concerned with portability with not stray
  902. >        outside the domain that the standard guarantees to work.
  903.  
  904. In the real world, people will write programs using their system and manual
  905. as a working base. If their system says that mmap() works such-and-such a
  906. way, they'll use it. They may even think that their program is portable,
  907. because mmap is in 1003.4.
  908.  
  909. > You seem to be arguing that extensions should be prohibited.
  910.  
  911. No, I'm arguing that extensions should be explicit. You should have to perform
  912. some magic juju so that you *know* you're stepping outside the POSIX consulate
  913. into the anarchic land of Vendor-Specificia.
  914.  
  915. Like calling mmap() instead of whatever the POSIX routine is.
  916. -- 
  917. `-_-' Peter da Silva. +1 713 274 5180.  <peter@ficc.ferranti.com>
  918.  'U`  Have you hugged your wolf today?  <peter@sugar.hackercorp.com>
  919. @FIN  Dirty words: Zhghnyyl erphefvir vayvar shapgvbaf.
  920.  
  921. Volume-Number: Volume 20, Number 7
  922.  
  923. From jsq@longway.tic.com  Tue May 22 09:30:47 1990
  924. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  925.     id AA17409; Tue, 22 May 90 09:30:47 -0400
  926. Posted-Date: 21 May 90 16:01:48 GMT
  927. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  928.     id AA23774; Tue, 22 May 90 08:30:43 -0500
  929. Received: by longway.tic.com (4.22/4.16)
  930.     id AA01957; Tue, 22 May 90 07:38:11 cdt
  931. From: <Wichita.NCR.COM!Alden.Wilner@longway.tic.com>
  932. Newsgroups: comp.std.unix
  933. Subject: Tape Driver standards?
  934. Message-Id: <698@longway.TIC.COM>
  935. Sender: std-unix@longway.tic.com
  936. Reply-To: std-unix@uunet.uu.net
  937. Date: 21 May 90 16:01:48 GMT
  938. Apparently-To: std-unix-archive@uunet.uu.net
  939.  
  940. From: uunet!Wichita.NCR.COM!Alden.Wilner
  941. From:  Alden.Wilner@Wichita.NCR.COM
  942.  
  943. I am interested in finding out the current state of standards efforts
  944. in regards to tape drivers, specifically:
  945.  
  946. Is there any standard ioctl interface to take advantage of the flexibility 
  947. afforded by the SCSI interface?
  948.  
  949. I have heard rumors that AT&T has come up with a proposal (or perhaps a
  950. de-facto standard in SVR4), but don't have any details.  Can anyone
  951. supply me with some?
  952.  
  953. Is there any standard action for what a tape driver should do with
  954. internal flags (End-Of-Media, Filemark, etc.) when it receives an ioctl
  955. call (like, clear the "DataWritten" flag so filemark writing won't be
  956. performed after an ioctl)?
  957.  
  958. Is there any standard defined for what drivers should do with the
  959. bp->b_blkno?  Early AT&T drivers (the Kennedy tape drive?) would
  960. support block device IO to tapes, and would space the requested number
  961. of 512-byte blocks if the b_blkno didn't match the driver's idea of
  962. where it was.  So what happens with, say, 5K blocks on a 1/2" tape
  963. reel?  Or should the driver just ignore the bp->b_blkno field
  964. altogether?
  965.  
  966. These questions are prompted by the infamous exabyte tape drive.  Since
  967. that thing's so huge, it would be nice to have a way to space around on
  968. the tape so you can write multiple disk backups to a single tape (as,
  969. for example, the Willow tape backup system does).  And it would be
  970. really nice if this method were standardized, either at the ioctl level
  971. or at a library which would translate standard function calls to
  972. whatever the driver prefers for ioctl.
  973.  
  974. Standard ioctl - what a concept.
  975.  
  976. Thanks,
  977. Alden.Wilner@Wichita.NCR.COM
  978.  
  979. Volume-Number: Volume 20, Number 8
  980.  
  981. From jsq@longway.tic.com  Tue May 22 09:31:09 1990
  982. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  983.     id AA17486; Tue, 22 May 90 09:31:09 -0400
  984. Posted-Date: 21 May 90 19:49:40 GMT
  985. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  986.     id AA23789; Tue, 22 May 90 08:30:59 -0500
  987. Received: by longway.tic.com (4.22/4.16)
  988.     id AA02134; Tue, 22 May 90 07:46:35 cdt
  989. From: Maarten Litmaath <cs.vu.nl!maart@longway.tic.com>
  990. Newsgroups: comp.std.unix
  991. Subject: sh pipelines and subshells (was: Braces in the Shell)
  992. Summary: ``some_command | read foo'' should work
  993. Message-Id: <699@longway.TIC.COM>
  994. References: <6609@star.cs.vu.nl> <759@mwtech.UUCP> <6623@star.cs.vu.nl> <1990May21.160437.21491@usenet.ins.cwru.edu>
  995. Sender: std-unix@longway.tic.com
  996. Reply-To: Maarten Litmaath <maart@cs.vu.nl>
  997. Followup-To: comp.std.unix
  998. Organization: VU Informatika, Amsterdam, The Netherlands
  999. Date: 21 May 90 19:49:40 GMT
  1000. Apparently-To: std-unix-archive@uunet.uu.net
  1001.  
  1002. From:  Maarten Litmaath <maart@cs.vu.nl>
  1003.  
  1004. In article <1990May21.160437.21491@usenet.ins.cwru.edu> in the newsgroup
  1005. comp.unix.questions, chet@cwns1.CWRU.EDU (Chet Ramey) writes:
  1006. )...
  1007. )I quote (without comment) from P1003.2, draft 9, section 3.12.0.1:
  1008. )
  1009. )"It was decided to allow this extension [running the last process in a
  1010. ) pipeline in the current environment], but not require it; therefore, a
  1011. ) shell programmer should consider a pipeline to be in a subshell environment,
  1012. ) but not depend on it."
  1013. )
  1014. )and from section 3.12:
  1015. )
  1016. )"Additionally, each command of a multi-column pipeline is in a subshell
  1017. ) environment; as an extension, however, any or all commands in a pipeline
  1018. ) may be executed in the current environment."
  1019. )
  1020. )
  1021. )It seems they have already considered this proposal (I imagine David Korn
  1022. )brought it up).
  1023.  
  1024. They've considered it indeed, but I don't like the outcome: ambiguity!
  1025. If I write a shell script I want to know *exactly* what'll happen on
  1026. another POSIX system: that's the whole purpose of P1003.2!
  1027. Let's see:
  1028.  
  1029.     "[...] a shell programmer should consider a pipeline to be in
  1030.     a subshell environment, but not depend on it."
  1031.  
  1032. What does this buy me?  Nothing!  What would you think of the following?
  1033.  
  1034.     "A shell programmer should consider a string beginning with a
  1035.     dollar sign to be a shell variable, but not depend on it."
  1036.  
  1037. Ridiculous, right?  Right.
  1038. My proposal:
  1039.  
  1040.     If the last command of a pipeline is a (`special') builtin
  1041.     command, it must be run in the current environment, else in
  1042.     a private environment, just like the other components of the
  1043.     pipeline.
  1044.  
  1045. In fact I would even accept *every* component that's a (`special')
  1046. builtin command, to run in the current environment, so the following
  1047. would work:
  1048.  
  1049.     command_1 |
  1050.     while read line
  1051.     do
  1052.         something
  1053.         echo "$line"
  1054.         last=$line
  1055.     done |
  1056.     command_2
  1057.  
  1058.     echo "The last line was: $last"
  1059.  
  1060. ...but I realize this could be difficult to implement.  On the other hand
  1061. the *last* command in a pipeline is a straightforward case.  At that the
  1062. next (well-known) example isn't that obscure at all:
  1063.  
  1064.     some_command | read answer
  1065.  
  1066. In current implementations this won't work as intended.  The workarounds
  1067. are ugly, as workarounds often are.  (Boy, do I hate temp files.)
  1068.  
  1069. OK, but what if the user *wants* a subshell?!  Easy, he would use
  1070. parentheses, just like always:
  1071.  
  1072.     foo=$orig
  1073.     another_command | (
  1074.         while read foo
  1075.         do
  1076.             bar
  1077.         done
  1078.     )
  1079.     echo "foo is $foo and should still be $orig"
  1080. --
  1081.  Antique fairy tale: Little Red Riding Hood. |Maarten Litmaath @ VU Amsterdam:
  1082.  Modern fairy tale: Oswald shot Kennedy. |maart@cs.vu.nl, uunet!cs.vu.nl!maart
  1083.  
  1084. Volume-Number: Volume 20, Number 9
  1085.  
  1086. From jsq@longway.tic.com  Wed May 23 14:06:48 1990
  1087. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  1088.     id AA04717; Wed, 23 May 90 14:06:48 -0400
  1089. Posted-Date: 22 May 90 01:25:49 GMT
  1090. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  1091.     id AA25717; Wed, 23 May 90 13:06:41 -0500
  1092. Received: by longway.tic.com (4.22/4.16)
  1093.     id AA05882; Wed, 23 May 90 12:44:29 cdt
  1094. From: <mindcrf!karish@longway.tic.com>
  1095. Newsgroups: comp.std.unix
  1096. Subject: Re: Common Reference Ballot
  1097. Summary: Portability checking
  1098. Message-Id: <700@longway.TIC.COM>
  1099. References: <689@longway.TIC.COM> <692@longway.TIC.COM> <696@longway.TIC.COM> <697@longway.TIC.COM>
  1100. Sender: std-unix@longway.tic.com
  1101. Reply-To: std-unix@uunet.uu.net
  1102. Organization: Mindcraft, Inc.
  1103. Date: 22 May 90 01:25:49 GMT
  1104. Apparently-To: std-unix-archive@uunet.uu.net
  1105.  
  1106. From:  karish@mindcrf.uucp
  1107.  
  1108. In article <697@longway.TIC.COM> Peter da Silva wrote:
  1109. >In article <696@longway.TIC.COM> [Doug Gwyn] writes:
  1110. >>     c) People who are concerned with portability with not stray
  1111. >>        outside the domain that the standard guarantees to work.
  1112. >
  1113. >In the real world, people will write programs using their system and manual
  1114. >as a working base. If their system says that mmap() works such-and-such a
  1115. >way, they'll use it. They may even think that their program is portable,
  1116. >because mmap is in 1003.4.
  1117. >
  1118. >> You seem to be arguing that extensions should be prohibited.
  1119. >
  1120. >No, I'm arguing that extensions should be explicit. You should have to perform
  1121. >some magic juju so that you *know* you're stepping outside the POSIX consulate
  1122. >into the anarchic land of Vendor-Specificia.
  1123.  
  1124. This sounds like a job for... the Mindcraft C Portability Verifier!
  1125. Among other things, this product lets you check conformance to ANSI C,
  1126. 1003.1, 1003.2 C interfaces, XPG3, or any other standard for which you
  1127. write a definition.  Pick any one of these standards or any combination
  1128. of them.
  1129.  
  1130. I'll post a full description to comp.newprod.
  1131.  
  1132. Vaporware right now, but condensing even as I type.  It'll ship a few
  1133. weeks from now.
  1134.  
  1135. >Like calling mmap() instead of whatever the POSIX routine is.
  1136.  
  1137. I hope we don't have to name a new interface every time a new standard
  1138. restricts or changes the syntax of an old one.  Especially when the
  1139. old interface is difficult to use portably anyway.
  1140. -- 
  1141.  
  1142.     Chuck Karish        karish@mindcraft.com
  1143.     Mindcraft, Inc.        (415) 323-9000        
  1144.  
  1145. Volume-Number: Volume 20, Number 10
  1146.  
  1147. From jsq@longway.tic.com  Tue May 22 09:31:27 1990
  1148. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  1149.     id AA17584; Tue, 22 May 90 09:31:27 -0400
  1150. Posted-Date: 22 May 90 02:32:04 GMT
  1151. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  1152.     id AA23805; Tue, 22 May 90 08:31:17 -0500
  1153. Received: by longway.tic.com (4.22/4.16)
  1154.     id AA02589; Tue, 22 May 90 08:19:38 cdt
  1155. From: Doug Gwyn <smoke.brl.mil!gwyn@longway.tic.com>
  1156. Newsgroups: comp.std.unix
  1157. Subject: Re: Common Reference Ballot
  1158. Message-Id: <701@longway.TIC.COM>
  1159. References: <692@longway.TIC.COM> <696@longway.TIC.COM> <697@longway.TIC.COM>
  1160. Sender: std-unix@longway.tic.com
  1161. Reply-To: std-unix@uunet.uu.net
  1162. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  1163. Date: 22 May 90 02:32:04 GMT
  1164. Apparently-To: std-unix-archive@uunet.uu.net
  1165.  
  1166. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  1167.  
  1168. In article <697@longway.TIC.COM> peter@ficc.ferranti.com (Peter da Silva) writes:
  1169. -If that's the case, why doesn't 1003.1 require 255-character file names?
  1170.  
  1171. Because it wasn't necessary to do so.
  1172.  
  1173. ->     c) People who are concerned with portability with not stray
  1174. ->        outside the domain that the standard guarantees to work.
  1175. -In the real world, people will write programs using their system and manual
  1176. -as a working base. If their system says that mmap() works such-and-such a
  1177. -way, they'll use it. They may even think that their program is portable,
  1178. -because mmap is in 1003.4.
  1179.  
  1180. I like to think I'm working in the real world, and because I do care
  1181. about application portability I'm careful about these things when I
  1182. program.  I suspect I'm not the only one.  Note that there IS no magic
  1183. road to guaranteed portability, if the programmer is oblivious to the
  1184. issues.
  1185.  
  1186. -> You seem to be arguing that extensions should be prohibited.
  1187. -No, I'm arguing that extensions should be explicit. You should have to perform
  1188. -some magic juju so that you *know* you're stepping outside the POSIX consulate
  1189. -into the anarchic land of Vendor-Specificia.
  1190.  
  1191. That would be nice, but it's pretty hard to enforce in cases like
  1192. adding extended functionality to the standard functions.
  1193.  
  1194. Volume-Number: Volume 20, Number 11
  1195.  
  1196. From jsq@longway.tic.com  Tue May 22 11:06:45 1990
  1197. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  1198.     id AA06178; Tue, 22 May 90 11:06:45 -0400
  1199. Posted-Date: 22 May 90 14:12:41 GMT
  1200. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  1201.     id AA00949; Tue, 22 May 90 10:06:37 -0500
  1202. Received: by longway.tic.com (4.22/4.16)
  1203.     id AA03141; Tue, 22 May 90 09:13:20 cdt
  1204. From: Susanne W. Smith <calvin.wa.com!sws@longway.tic.com>
  1205. Newsgroups: comp.std.unix,comp.org.usenix,comp.unix.questions
  1206. Subject: Calendar of UNIX-related Events
  1207. Message-Id: <702@longway.TIC.COM>
  1208. Expires: 1 Jul 90 21:45:37 GMT
  1209. Sender: std-unix@longway.tic.com
  1210. Reply-To: sws@calvin.wa.com (Susanne W. Smith)
  1211. Followup-To: comp.std.unix
  1212. Date: 22 May 90 14:12:41 GMT
  1213. Apparently-To: std-unix-archive@uunet.uu.net
  1214.  
  1215. From: sws@calvin.wa.com (Susanne W. Smith)
  1216.  
  1217. This is a combined calendar of planned conferences, workshops, or standards
  1218. meetings related to the UNIX operating system.
  1219.  
  1220. If your favorite meeting is not listed, it's probably because we don't know
  1221. about it.  If you send me <sws@calvin.wa.com> information on it, we will
  1222. probably list it both here and in the appropriate one of the companion
  1223. articles:
  1224.         Access to UNIX User Groups
  1225.         Access to UNIX-Related Publications
  1226.         Access to UNIX-Related Standards
  1227.  
  1228. These access postings are collected and posted by Susanne W. Smith of
  1229. Windsound Consulting <sws@calvin.wa.com> and were originated by John S.
  1230. Quarterman of Texas Internet Consulting <jsq@longway.tic.com>.  The
  1231. information comes from the various conference organizers, Alain Williams
  1232. (EUUG), ;login:, Communications of the ACM, CommUNIXations, and many
  1233. others. We encourage others to reuse this information, but we ask for
  1234. proper acknowledgment, for example by including this statement.
  1235.  
  1236. Changes since last posting: Numerous additions, UNIX/90 has become the
  1237.         Multi-User Computer Show.
  1238.  
  1239. Abbreviations:
  1240.           APP   Application Portability Profile
  1241.             C   Conference or Center
  1242.            CC   Computer Communication
  1243.         CT&LA   Conformance Testing & Laboratory Accreditation
  1244.         G, MD   Gaithersburg, Maryland
  1245.           MHS   Message Handling Systems & Application Layer Communication
  1246.                 Protocols
  1247.           OSE   Open Systems Environment
  1248.             S   Symposium
  1249.             T   Tradeshow
  1250.             U   UNIX
  1251.            UG   User Group
  1252.             W   Workshop
  1253.  
  1254. USENIX, UniForum, EUUG, AUUG, and DECUS sponsor conferences of the same
  1255. names.
  1256.  
  1257. UNIX is a Registered Trademark of AT&T Bell Laboratories.
  1258.  
  1259. TIC <jsq@longway.tic.com>                    Windsound <sws@calvin.wa.com>
  1260.  
  1261. 90/05/21 pg. 2        Calendar of UNIX-Related Events         comp.std.unix
  1262.  
  1263. year mon days     conference             (sponsor,) (hotel,) location
  1264. 1990 May 21-24    Xhibition 90           San Jose, CA
  1265. 1990 May 23-24    5th AMIX C             AMIX, Ramat-Gan, Israel
  1266. 1990 May 24-28    ENA Annual C           Pacific Bell C Center, SF, CA
  1267. 1990 May 30-Jun 1 Multi-User Comp. Show  UniForum Canada, Toronto, ON
  1268. 1990 Jun 11-15    USENIX                 Marriott, Anaheim, CA
  1269. 1990 Jul 9-11     15th JUS S             JUS, Tokyo, Japan
  1270. 1990 Jul 9-13     UKUUG C                London,UK
  1271. 1990 Jul 10       POSIX Conform. Test W  NIST, G, MD
  1272. 1990 Jul 16-20    IEEE 1003              Danvers, MA
  1273. 1990 Jul 23-25    Sun Expo               San Jose, CA
  1274. 1990 Jul 31-Aug 3 IETF                   IAB, U. British Columbia, Vancouver, BC
  1275. 1990 Aug 6-10     SIGGRAPH 90 C          ACM, Dallas, TX
  1276. 1990 Aug 20-23    Interex C              Interex, Boston, MA
  1277. 1990 Aug 27-28    U Security W           USENIX, Portland, OR
  1278. 1990 Sept 3-7     DECUS Europe S         Cannes, France
  1279. 1990 Sept 4-6     GUUG C                 Wiesbaden, Germany
  1280. 1990 Sept 20-21   Sun UK UG C            Edinburgh, UK
  1281. 1990 Sep 24-26    SIGCOMM 90 C           ACM, Philladelphia, PA
  1282. 1990 Sep 25-28    AUUG C                 World Congress Centre, Melbourne, Australia
  1283. 1990 Oct 3-5      Internat'l S of MHS    IFIP WG 6.5, Zurich, Switzerland
  1284. 1990 Oct 4-5      Mach W                 USENIX, Burlington, VT
  1285. 1990 Oct 8-12     InterOp 90             ACE, San Jose, CA
  1286. 1990 Oct 15-19    IEEE 1003              Seattle, WA
  1287. 1990 Oct 17-19    Large Inst. SysAdmin W USENIX, Colorado Springs, CO
  1288. 1990 Oct 22-25    IPA C                  Jerusalem, Israel
  1289. 1990 Oct 22-26    EUUG                   Nice, France
  1290. 1990 Oct 31-Nov 2 UNIX EXPO              New York, NY
  1291. 1990 Nov 5-9      10th Int'l C on CC     ICCC, New Delhi, India
  1292. 1990 Nov 8        Open Systems C         NLUUG, Ede, Netherlands
  1293. 1990 Nov 14-16    UNIX EXPO '90          UniForum Swedish, Stockholm, Sweden
  1294. 1990 Nov 15       APP/OSE Users Forum    NIST, G, MD
  1295. 1990 Nov 15-16    16th JUS S             JUS, Osaka, Japan
  1296. 1990 Dec 2-5      Sun User Group         San Jose, CA
  1297. 1990 Dec 4-5      JUS UNIX Fair '90      JUS, Tokyo, Japan
  1298. 1990 Dec 4-7      IETF                   IAB, U. Colorado, Boulder, CO
  1299. 1990 Dec 10-12    Unix Asia '90 C        Sinix, Singapore
  1300. 1990 Dec 10-14    DECUS S                Las Vegas, NV
  1301. 1990 Dec 13-16    Unix Pavilion '90 T    Sinix, Singapore
  1302. 1990 Dec 17-19    UKUUG C                Cambridge, UK
  1303.  
  1304. TIC <jsq@longway.tic.com>                    Windsound <sws@calvin.wa.com>
  1305.  
  1306. 90/05/21 pg. 3        Calendar of UNIX-Related Events         comp.std.unix
  1307.  
  1308. 1991 Jan 7-11  IEEE 1003                   New Orleans, LA
  1309. 1991 Jan 21-25 USENIX                      Grand Kempinski, Dallas, TX
  1310. 1991 Jan 21-24 UniForum                    Infomart, Dallas, TX
  1311. 1991 Jan 16-17 Multi-User C Show for Gov't UniForum Canada, Ottawa, ON
  1312. 1991 Feb 18-22 DECUS S                     Ottawa, Canada
  1313. 1991 Mar       IETF                        IAB, Wash. U, St. Louis, MO (tentative)
  1314. 1991 Mar 13-20 CeBIT 91                    Hannover, Germany
  1315. 1991 Mar 26-29 AFUU C                      CNET Paris La Defense, France
  1316. 1991 Apr 10-12 Standards W                 IEEE, USENIX, UniForum, EUUG (tentative)
  1317. 1991 Apr 15-19 IEEE 1003                   Houston, TX (location tentative)
  1318. 1991 May 15-17 Multi-User C Show           UniForum Canada, Toronto, ON
  1319. 1991 May 9     APP/OSE Users Forum         NIST, G, MD
  1320. 1991 May 6-10  DECUS S                     Atlanta, GA
  1321. 1991 May 20-24 EUUG                        Tromso, Norway
  1322. 1991 Jun 10-14 USENIX                      Opryland, Nashville, TN
  1323. 1991 Jun 17-19 Sun User Group              Atlanta, GA
  1324. 1991 Jun/Jul   UKUUG C                     Liverpool, UK
  1325. 1991 Jul 8-12  IEEE 1003                   Santa Clara, CA (location tentative)
  1326. 1991 Sep 16-20 EUUG                        Budapest, Hungary
  1327. 1991 Oct 10-11 Multi-User C Show           UniForum Canada, Montreal, Quebec
  1328. 1991 Oct 21-25 IEEE 1003                   Southern Europe (location tentative)
  1329. 1991 Nov 14    APP/OSE Users Forum         NIST, G, MD
  1330. 1991 Dec       UKUUG C                     Edinburgh, UK
  1331. 1991 Dec 9-11  Sun User Group              San Jose, CA
  1332. 1991 Dec 9-13  DECUS S                     Anaheim, CA
  1333.  
  1334. 1992 Jan 13-17    IEEE 1003            Orlando, FL (location tentative)
  1335. 1992 Jan 20-24    USENIX               Hilton Square, San Francisco, CA
  1336. 1992 Jan 20-23    UniForum             Moscone Center, San Francisco, CA
  1337. 1992 Spring       EUUG                 Jersey, U.K.
  1338. 1992 Mar 11-18    CeBIT 92             Hannover, Germany
  1339. 1992 Apr 20-24    IEEE 1003            Montreal, PQ (location tentative)
  1340. 1992 May 4-8      DECUS S              Atlanta, GA
  1341. 1992 Jun 8-12     USENIX               Marriott, San Antonio, TX
  1342. 1992 Jun 22-24    Sun User Group       Washington, DC
  1343. 1992 Jul 13-17    IEEE 1003            Alaska (location tentative)
  1344. 1992 Autumn       EUUG                 Amsterdam, Netherlands
  1345. 1992 Oct 19-23    IEEE 1003            Scottsdale, AZ (location tentative)
  1346.  
  1347. 1993 Jan          USENIX               Town & Country, San Diego, CA
  1348. 1993 Mar 15-18    UniForum             Moscone Center, San Francisco, CA
  1349. 1993 Mar 24-31    CeBIT 93             Hannover, Germany
  1350. 1993 Jun 21-25    USENIX               Cincinnati, OH
  1351.  
  1352. TIC <jsq@longway.tic.com>                    Windsound <sws@calvin.wa.com>
  1353.  
  1354. 90/05/21 pg. 4        Calendar of UNIX-Related Events         comp.std.unix
  1355.  
  1356. 1994 Feb 7-10     UniForum             Dallas Convention Center, Dallas, TX
  1357. 1994 Mar 16-23    CeBIT 94             Hannover, Germany
  1358. 1994 Jun          USENIX               Boston, MA
  1359. 1995 Mar 6-9      UniForum             Dallas Convention Center, Dallas, TX
  1360. 1996 Mar 11-14    UniForum             Moscone Center, San Francisco, CA
  1361. 1997 Mar 10-13    UniForum             Moscone Center, San Francisco, CA
  1362.  
  1363. TIC <jsq@longway.tic.com>                    Windsound <sws@calvin.wa.com>
  1364.  
  1365.  
  1366. Volume-Number: Volume 20, Number 12
  1367.  
  1368. From jsq@longway.tic.com  Tue May 22 11:08:55 1990
  1369. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  1370.     id AA06885; Tue, 22 May 90 11:08:55 -0400
  1371. Posted-Date: 22 May 90 14:19:20 GMT
  1372. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  1373.     id AA01210; Tue, 22 May 90 10:08:37 -0500
  1374. Received: by longway.tic.com (4.22/4.16)
  1375.     id AA03275; Tue, 22 May 90 09:20:46 cdt
  1376. From: Susanne W. Smith <calvin.wa.com!sws@longway.tic.com>
  1377. Newsgroups: comp.std.unix,comp.org.usenix,comp.unix.questions
  1378. Subject: Access to UNIX User Groups
  1379. Message-Id: <703@longway.TIC.COM>
  1380. Expires: 1 Jul 90 21:45:37 GMT
  1381. Sender: std-unix@longway.tic.com
  1382. Reply-To: sws@calvin.wa.com (Susanne W. Smith)
  1383. Date: 22 May 90 14:19:20 GMT
  1384. Apparently-To: std-unix-archive@uunet.uu.net
  1385.  
  1386. From: sws@calvin.wa.com (Susanne W. Smith)
  1387.  
  1388. This is the latest in a series of similar comp.std.unix articles,
  1389. intended to give summary information about UNIX User groups;
  1390. to be accurate, but not exhaustive.  It's cross-posted to
  1391. comp.org.usenix and comp.unix.questions because there might be
  1392. interest there. 
  1393.  
  1394. There are three related articles, posted at the same time as this one,
  1395. with subjects
  1396.     Calendar of UNIX-related Events
  1397.     Access to UNIX-Related Publications
  1398.     Access to UNIX-Related Standards
  1399. The latter is posted only to comp.std.unix.
  1400. These access postings are collected and posted by Susanne W. Smith
  1401. of Windsound Consulting <sws@calvin.wa.com> and were originated by
  1402. John S. Quarterman of Texas Internet Consulting <jsq@longway.tic.com>.
  1403. The information in them comes from a wide variety of sources.
  1404. We encourage others to reuse this information, but we ask for proper
  1405. acknowledgment, for example by including this statement.
  1406.  
  1407. Corrections and additions to this article are solicited.  I keep track
  1408. of the conferences, groups, and publications that I attend, am a member
  1409. of, or subscribe to.  All others (the majority of the listings) I derive
  1410. either from listings elsewhere, or from contributions by readers.
  1411. In particular, the meeting schedules and descriptions of most of the
  1412. groups are provided by their members.  If a group doesn't have a
  1413. meeting schedule listed, it's because nobody has sent me one.  This is
  1414. a low-budget operation:  I publish what I have on hand when the time
  1415. comes (approximately bi-monthly).
  1416.  
  1417. Changes since last posting: Sun User Group, New DECUS phone number,
  1418.         USENIX workshops, /usr/group/cdn is now UniForum Canada.
  1419.  
  1420. Access information is given in this article for the following:
  1421. user groups:    USENIX, UniForum, UNIX Expo, UniForum Canada,
  1422.         EUUG, AFUU, UKUUG, /usr/group/uk, GUUG, i2u, NLUUG
  1423.         UUGA, BUUG, DKUUG, FUUG, HUUG, ICEUUG, Interex, IUUG,
  1424.         NUUG, PUUG, EUUG-S, YUUG,
  1425.         AMIX, AUUG, NZUSUGI, JUS, KUUG, MALNIX, Sinix, CUUG, ICX89,
  1426.         DECUS UNIX SIG, Sun User Group (SUG),
  1427.         Apollo DOMAIN Users' Society (ADUS),
  1428.         Open Software Foundation (OSF),
  1429.         UNIX International (UI).
  1430.  
  1431. Telephone numbers are given in international format, i.e., +n at
  1432. the beginning for the country code, e.g., +44 is England, +81 Japan,
  1433. +82 Korea, +61 Australia, +64 New Zealand, and +1 is U.S.A. or Canada.
  1434.  
  1435. UNIX is a Registered Trademark of AT&T.
  1436.  
  1437.  
  1438. USENIX is ``The Professional and Technical UNIX(R) Association.''
  1439.  
  1440.         USENIX Association
  1441.         2560 Ninth Street
  1442.         Suite 215
  1443.         Berkeley, CA 94710
  1444.         U.S.A.
  1445.         tel: +1-415-528-8649
  1446.         fax: +1-415-548-5738
  1447.         {uunet,ucbvax,decvax}!usenix!office
  1448.         office@usenix.org
  1449.  
  1450. USENIX sponsors two USENIX Conferences a year, featuring technical papers,
  1451. as well as tutorials, and with vendor exhibits at the summer conferences:
  1452.  
  1453. 1990 Jun 11-15    USENIX            Marriott Hotel, Anaheim, CA
  1454. 1990 Aug 27-28    UNIX Security Workshop    Portland, OR
  1455. 1990 Oct 4-5    Mach Workshop        Burlington, VT
  1456. 1990 Oct 17-19  Large Inst. Sys. Admin. W      Colorado Springs, CO
  1457. 1991 Apr 10-12  Standards W         w/ IEEE, UniForum, EUUG (tentative)
  1458. 1991 Jan 21-25    USENIX            Grand Kempinski, Dallas, TX
  1459. 1991 Jun 10-14    USENIX            Opryland, Nashville, TN
  1460. 1992 Jan 20-24    USENIX            Hilton Square, San Francisco, CA
  1461. 1992 Jun 8-12    USENIX            Marriott, San Antonio, TX
  1462. 1993 Jan    USENIX            Town & Country, San Diego, CA
  1463. 1993 Jun 21-25    USENIX            Cincinnati, OH
  1464. 1994 Jun    USENIX            Boston, MA
  1465.  
  1466. Proceedings for all conferences and workshops are available at
  1467. the door and by mail later.  Some of the older ones have been
  1468. out of print, but the office will duplicate small quantities for you.
  1469.  
  1470. USENIX publishes ``;login:  The USENIX Association Newsletter''
  1471. bimonthly.  It is sent free of charge to all their members and
  1472. includes technical papers.  There is a USENET newsgroup,
  1473. comp.org.usenix, for discussion of USENIX-related matters.
  1474.  
  1475. In 1988, USENIX started publishing a refereed quarterly
  1476. technical journal, ``Computing Systems:  The Journal of the USENIX
  1477. Association,'' in cooperation with University of California Press.
  1478.  
  1479. They also publish an edition of the 4.3BSD manuals and distribute the
  1480. 2.10BSD software distribution.  They coordinate a software exchange for
  1481. appropriately licensed members.  They occasionally sponsor experiments,
  1482. such as methods of improving the USENET and UUCP networks (e.g., UUNET),
  1483. that are of interest and use to the membership.
  1484.  
  1485. There is a USENIX Institutional Representative on the IEEE P1003
  1486. Portable Operating System Interface for Computer Environments Committee.
  1487. That representative also moderates the USENET newsgroup comp.std.unix,
  1488. which is for discussion of UNIX-related standards, especially P1003.
  1489. There is also a USENIX Standards Watchdog Committee following several
  1490. standards bodies.  For more details, see the posting in comp.std.unix,
  1491. ``Access to UNIX-Related Standards.''
  1492.  
  1493.  
  1494. UniForum (formerly /usr/group) is a non-profit trade association dedicated 
  1495. to the promotion of products and services based on the UNIX operating system.
  1496.  
  1497.         UniForum
  1498.         2901 Tasman Drive
  1499.         Suite 201
  1500.         Santa, Clara, CA  95054
  1501.         U.S.A.
  1502.         tel: +1-408-986-8840
  1503.         fax: +1-408-986-1645
  1504.  
  1505. UniForum sponsors an annual conference and trade show which 
  1506. features vendor exhibits, as well as tutorials and technical sessions.
  1507.  
  1508. 1991 Jan 21-24    UniForum    Infomart, Dallas, TX
  1509. 1991 Apr 10-12  Standards W     w/IEEE, USENIX, EUUG (tentative)
  1510. 1992 Jan 20-23    UniForum    Moscone Center, San Francisco, CA
  1511. 1993 Mar 15-18    UniForum    Moscone Center, San Francisco, CA
  1512. 1994 Feb 7-10    UniForum    Dallas Convention Center, Dallas, TX
  1513. 1995 Mar 6-9    UniForum    Dallas Convention Center, Dallas, TX
  1514. 1996 Mar 11-14    UniForum    Moscone Center, San Francisco, CA
  1515. 1997 Mar 10-13    UniForum    Moscone Center, San Francisco, CA
  1516.  
  1517. Proceedings for all conferences are available at the shows and later
  1518. by mail.
  1519.  
  1520. UniForum publishes ``CommUNIXations,'' a member magazine that
  1521. features articles by industry leaders and observers, technical issues,
  1522. standards coverage, and new product announcements.
  1523.  
  1524. UniForum also publishes the ``UNIX Products Directory,'' which lists
  1525. products and services developed specifically for the UNIX operating system.
  1526. ``UniNews'', formerly ``/usr/digest'', is also published by UniForum.  
  1527. This newsletter covers product announcements and industry projections, 
  1528. and is sent biweekly to General members of UniForum and to non-member 
  1529. subscribers.
  1530.  
  1531. UniForum has long been deeply involved in UNIX standardization,
  1532. having sponsored the ``/usr/group 1984 Standard,'' providing an Institutional
  1533. Representative to the IEEE P1003 Portable Operating System for Computer
  1534. Environments Committee, and sponsoring the UniForum Technical Committee
  1535. on areas that P1003 has not yet addressed. They publish the documents,
  1536. ``Your Guide to POSIX,'' explaining what IEEE 1003 is,  ``POSIX Explored: 
  1537. System Interface,'' about technical aspects of IEEE 1003.1, and its relations 
  1538. to other standards and historical implementations, and ``POSIX Update: Shell 
  1539. and Utilities.'' They also funded production of a draft of a ``Rationale and
  1540. Notes'' appendix for IEEE 1003.1.
  1541.  
  1542.  
  1543. UNIX EXPO is an annual very large vendor exhibit in New York City
  1544. with tutorials and technical presentations.  It is held at the
  1545. Jacob K. Javits Convention Center, with lodging arrangements with
  1546. the Sheraton Centre Hotel, both in Manhattan.
  1547.  
  1548. 1990 Oct 31-Nov 2 UNIX EXPO        New York, NY
  1549.  
  1550.         National Expositions Co., Inc.
  1551.         15 West 39th Street
  1552.         New York, NY 10018
  1553.         U.S.A.
  1554.         tel: +1-212-391-9111
  1555.         fax: +1-212-819-0755
  1556.  
  1557.         Reservations Department
  1558.         Sheraton Centre Hotel
  1559.         811 Seventh Avenue
  1560.         New York, NY 10019
  1561.         U.S.A.
  1562.         Tel: +1-212-581-1000
  1563.         Fax: +1-212-262-4410
  1564.         Telex: 421130
  1565.  
  1566.  
  1567. UniForum Canada is the Canadian branch of UniForum, and holds an
  1568. annual spring conference and trade show modeled after UniForum,
  1569. usually at the Metro Toronto Convention Center.  They also hold
  1570. a UNIX in Government show in the winter in Ottawa.
  1571.  
  1572. Exhibitors and attendees can contact:
  1573.         Fawn Lubman
  1574.         Communications 2000
  1575.         4195 Dundas St. #201
  1576.         Etobicoke, Ontario M8X 1Y4
  1577.         Canada
  1578.         +1-416-239-3043
  1579.  
  1580.         UniForum Canada
  1581.         241 Gamma St.
  1582.         Etobicoke, Ontario M8W 4G7
  1583.         Canada
  1584.         +1-416-259-8122
  1585.  
  1586. 1990 May 30-Jun 1 Multi-User Computer Show    UniForum Canada, Toronto, ON
  1587. 1991 Jan 16-17    Multi-User Computer Show    UniForum Canada, Ottawa, ON
  1588.                for Government
  1589. 1991 May 15-17    Multi-User Computer Show    UniForum Canada, Toronto, ON
  1590. 1991 Oct 10-11    Multi-User Computer Show    UniForum Canada, Montreal, Quebec
  1591.  
  1592. UNIForum Swedish holds an annual conference. 
  1593.  
  1594.     UNIForum Swedish AB
  1595.     Torshamnsgatan 39
  1596.     S-16440 KISTA
  1597.     SWEDEN
  1598.     Tel: +46 8 750 3976
  1599.     Fax: +46 8 751 2407
  1600.  
  1601. 1990 Nov 14-16    UNIX EXPO 90    Alvsjo, Stockholm, Sweden
  1602.  
  1603.  
  1604. EUUG is the European UNIX systems Users Group. EUUG is closely coordinated 
  1605. with national groups in Europe, and with the European UNIX network, EUnet.
  1606.  
  1607.         EUUG secretariat
  1608.         Owles Hall
  1609.         Buntingford
  1610.         Herts SG9 9PL
  1611.         England
  1612.         +44 763 73039
  1613.         fax: +44 763 73255
  1614.         uunet!mcvax!inset!euug
  1615.         euug@EU.net
  1616.  
  1617. They have a quarterly newsletter, EUUGN, and hold two conferences a year:
  1618.  
  1619. 1990 Oct 22-26    EUUG        Nice, France
  1620. 1991 Apr 10-12  Standards W     w/IEEE, USENIX, UniForum (tentative)
  1621. 1991 May 20-24     EUUG        Tromso, Norway 
  1622. 1991 Sep 16-20    EUUG        Budapest, Hungary
  1623. 1992 Spring    EUUG        Jersey, U.K. (tentative)
  1624. 1992 Autumn    EUUG        Amsterdam, Netherlands (tentative)
  1625.  
  1626.  
  1627. AFUU is the Association Franc\*,aise des Utilisateurs d'UNIX,
  1628. or French UNIX Users' Group.  They usually hold a small convention
  1629. in November and a large one in the spring with tutorials and a
  1630. vendor exhibit.
  1631.  
  1632.         AFUU
  1633.         Miss Ann Garnery
  1634.         11 Rue Carnot
  1635.         94270 Le Kremlin Bicetre
  1636.         Paris
  1637.         France
  1638.         +33-1-4670-9590
  1639.         Fax: +33 1 46 58 94 20
  1640.         anne@afuu.fr
  1641.  
  1642. 1991 Mar 26-29    AFUU    CNET Paris La Defense, France
  1643.  
  1644. UKUUG is the United Kingdom Unix systems Users' Group.
  1645.  
  1646.         Bill Barrett
  1647.         UKUUG
  1648.         Owles Hall
  1649.         Buntingford
  1650.         Herts. SG9 9PL
  1651.         United Kingdom
  1652.         +44 763 73039
  1653.         Fax: +44 763 73255
  1654.         ukuug@ukc.ac.uk
  1655.  
  1656. 1990 Jul 9-13   UKUUG C London,UK
  1657. 1990 Dec 17-19  UKUUG C Cambridge, UK
  1658. 1991 Jun/Jul    UKUUG C Liverpool, UK
  1659. 1991 Dec        UKUUG C Edinburgh, UK
  1660.  
  1661. UniForum UK is the U.K. affiliate of UniForum, and holds an annual
  1662. COMUNIX Conference in June in conjunction with the European UNIX User Show,
  1663. which is an exhibition organised by EMAP Internation Exhibitions.
  1664.  
  1665.         Tracy MacIntyre
  1666.         Exhibition Manager
  1667.         EMAP International Exhibitions Ltd.
  1668.         Abbot's Court
  1669.         34 Farringdon Lane
  1670.         London EC1R 3AU
  1671.         United Kingdom
  1672.         +44-1-404-4844
  1673.  
  1674. The German UNIX Systems User Group (GUUG) has an annual convention in the fall.
  1675.     
  1676.         GUUG (German Unix User Group)
  1677.         Dr Anton Gerold
  1678.         Elsenheimerstr 43
  1679.         D-8000 Muenchen 21
  1680.         Federal Republic of Germany
  1681.         +49 089 570 76 97
  1682.         Fax: +49 89 570 7607
  1683.         gerold@lan.informatik.tu-muenchem.dbp.de
  1684.  
  1685. 1990 Sept 4-6   GUUG C  Wiesbaden, Germany
  1686.  
  1687. The Italian UNIX Systems User Group (i2u) holds an annual summer
  1688. Italian UNIX Convention, with tutorials and a vendor exhibition.
  1689.  
  1690.         Carlo Mortarino
  1691.         i2u Secretariat
  1692.         Via Monza, 347
  1693.         20126 Milano
  1694.         Italy
  1695.         +39-2-2520-2530
  1696.         i2u@i2unix.uucp
  1697.  
  1698. The Netherlands UNIX Users Group (NLUUG) holds a fall conference with 
  1699. technical sessions and tutorials.
  1700.  
  1701.         Netherlands (NLUUG)
  1702.         Patricia H. Otter
  1703.         c/o Xirion bv.
  1704.         World Trade Centre
  1705.         Strawinskylaan 1135
  1706.         1077 XX Amsterdam
  1707.         The Netherlands
  1708.         +31 206649411
  1709.         patricia@hp4nl or nluug@hp4nl
  1710.  
  1711. 1990 Nov 8      Open Systems C  NLUUG, Ede, Netherlands
  1712.  
  1713. The following information about European groups courtesy EUUG:
  1714.  
  1715.         Austria (UUGA)
  1716.         Friedrich Kofler
  1717.         Schottenring 33/Hof
  1718.         A-1010 Vienna
  1719.         Austria
  1720.         Tel: +43 222 34 61 84
  1721.         uuga@tuvie.at
  1722.  
  1723.         Belgium (BUUG)
  1724.         Marc Nyssen
  1725.         Department of Medical Informatics
  1726.         VUB
  1727.         Laarbeeklaan 103
  1728.         B-1090 Brussels
  1729.         Belgium
  1730.         +32 2 4784890 Ext. 1424
  1731.         Fax: +32 2 477 4000
  1732.         buug@vub.uucp
  1733.  
  1734.         Denmark (DKUUG)
  1735.         Mogens Buhelt
  1736.         Kabbeleejvej 27B
  1737.         DK-2700 Bronshoj
  1738.         Denmark
  1739.         Tel: +45 31 60 66 80
  1740.         mogens@dkuug.dk
  1741.  
  1742.         Finland (FUUG)
  1743.         Anu Patrikka-Cantell
  1744.         Finnish UNIX Users' Group
  1745.         Arkadiankatu 14 B 45
  1746.         00100 Helsinki
  1747.         Finland
  1748.         Tel: +358 0 494 371
  1749.  
  1750.         Hungary (HUUG)
  1751.         Dr Elod Knuth
  1752.         Computer and Automation Institute
  1753.         Hungarian Academy of Sciences
  1754.         P.O. Box 63
  1755.         H-1502 Budapest 112
  1756.         Hungary
  1757.         +36 1 665 435
  1758.         Fax: +361 1 354 317
  1759.  
  1760.  
  1761.  
  1762.         Iceland (ICEUUG)
  1763.         Marius Olafsson
  1764.         University Computer Center
  1765.         Hjardarhaga 4
  1766.         Dunhaga 5
  1767.                 Reykjavik
  1768.         Iceland
  1769.         +354 1 694747
  1770.         marius@rhi.hi.is
  1771.  
  1772.         Ireland (IUUG)
  1773.         Norman Hull
  1774.         Irish UNIX Systems User Group
  1775.         Court Place
  1776.         Carlow
  1777.         Ireland
  1778.         Tel: +353 503 31745
  1779.         Fax: +353 503 43695
  1780.         iuug-exec@cs.tcd.ie
  1781.  
  1782.         Norway (NUUG)
  1783.         Jan Brandt Jensen
  1784.         NUUG
  1785.         c/o Unisoft A.S.
  1786.         Enebakkvn 154
  1787.         N-O680 Oslo 6
  1788.         Norway
  1789.         +47 2 688970
  1790.         ndosl!ZEUS!jan
  1791.  
  1792.         Portugal  (PUUG)
  1793.         Legatheaux Martens
  1794.         Avenue 24 de Julho
  1795.         Lisboa
  1796.         Portugal
  1797.         Tel: +351 1 673194/609822
  1798.         Fax: +351 1 7597716
  1799.         puug@inesc.pt
  1800.  
  1801.  
  1802.         Sweden (EUUG-S)
  1803.         Hans Johansson
  1804.         NCR Svenska AB
  1805.         Box 1206
  1806.         S-164 28 Kista
  1807.         Sweden
  1808.         Tel: +46 8 750 26 03
  1809.         hans@ncr.se
  1810.  
  1811.         Yugoslavia  (YUUG)
  1812.         Milan Palian
  1813.         Iskra Delta Computers
  1814.         Parmova 41
  1815.         61000 Ljubljana
  1816.         Yugoslavia
  1817.         Tel: +38 61 574 554
  1818.         mpalian@idcyuug.uucp
  1819.  
  1820.  
  1821.  
  1822. AMIX - the Israeli UNIX user group, is a S.I.G. of the Israeli
  1823. Processing Association (IPA). AMIX has a yearly conference including
  1824. an exhibition, and a mid year sequence of tutorials and workshops.
  1825.  
  1826.                 Israeli UNIX User Group (AMIX)
  1827.                 c/o IPA, P.O.Box 919
  1828.                 attn: Ariel J. Frank
  1829.                 Ramat-Gan, Israel, 52109
  1830.                 amix@bimacs.bitnet
  1831.                 amix@bimacs.biu.ac.il
  1832.                 +972-3-715770,715772
  1833.                 fax: +972-3-5744374
  1834.  
  1835. 1990 May 23-24  5th AMIX Conference     AMIX, Ramat-Gan, Israel
  1836.  
  1837.  
  1838. AUUG is the Australian UNIX systems Users Group.
  1839.  
  1840.         Tim Roper
  1841.         Secretary
  1842.         AUUG
  1843.         timr@labtam.oz.au
  1844.         uunet!labtam.oz.au!timr
  1845.  
  1846.         AUUG
  1847.         P.O. Box 366
  1848.         Kensington
  1849.         N.S.W.    2033
  1850.         Australia
  1851.         uunet!munnari!auug
  1852.         auug@munnari.oz.au
  1853.  
  1854. Phone contact can occasionally be made at +61 3 344 5225
  1855.  
  1856. AUUG holds one major national Conference and Exhibition per year during
  1857. August or September.
  1858.  
  1859. 1990 Sep 25-28  AUUG    World Congress Centre, Melbourne, Australia
  1860.  
  1861. AUUG also holds regional summer meetings to provide an information
  1862. forum for the presentation of technical issues of interest to programmers, 
  1863. system administrators, and experiences users. 
  1864.  
  1865. They publish a newsletter (AUUGN) at a frequency defined to be every 2 months.
  1866.  
  1867.  
  1868. The New Zealand UNIX Systems User Group, Inc. (NZUSUGI) has an annual meeting
  1869. and publishes a newsletter, ``NUZ.''
  1870.  
  1871.         New Zealand UNIX Systems User Group
  1872.         P.O. Box 585
  1873.         Hamilton
  1874.         New Zealand
  1875.         +64-9-454000
  1876.  
  1877.  
  1878.  
  1879. The Japan UNIX Society has three meetings a year, and a newsletter.
  1880. The JUS UNIX Symposium is held twice annually, once in the winter and
  1881. once in the summer.  It has technical presentations, tutorials,
  1882. and a vendor exhibit.  The JUS UNIX Fair is held once a year, and
  1883. has a vendor exhibit, tutorials, and seminars.
  1884.  
  1885.         Japan UNIX Society (JUS)
  1886.         #505 Towa-Hanzomon Corp. Bldg.
  1887.         2-12 Hayabusa-cho
  1888.         Chiyoda-ku, Tokyo 102
  1889.         Japan
  1890.         bod%jus.junet@uunet.uu.net
  1891.         +81-3-234-5058
  1892.  
  1893.  
  1894. 1990 Jul 9-11   15th JUS S        JUS, Tokyo, Japan
  1895. 1990 Nov 15-16  16th JUS S          JUS, Osaka, Japan
  1896. 1990 Dec 4-5    JUS UNIX Fair '90       JUS, Tokyo, Japan
  1897.  
  1898. The Korean UNIX User Group (KUUG) has a software distribution service
  1899. and a newsletter.  They hold an annual Korean UNIX Symposium in the winter.
  1900.  
  1901.         Korean UNIX User Group
  1902.         ETRI
  1903.         P.O. Box 8
  1904.         Daedug Science Town
  1905.         Dae Jeon City
  1906.         Chungnam 301-350
  1907.         Republic of Korea
  1908.  
  1909.         Kee Wook Rim
  1910.         rim@kiet.etri.re.kr
  1911.         +82-42-822-4455 x4646
  1912.         fax: +82-42-823-1033
  1913.  
  1914.  
  1915. The Malaysian Unix Users Association (MALNIX) hold seminars and
  1916.  
  1917.                 The Organiser
  1918.                 MALNIX/MIMOS International Seminar
  1919.                 7th Floor, Bukit Naga Complex
  1920.                 Jalan Semantan
  1921.                 50490 Kuala Lumpur, Malaysia
  1922.                 +60 3 2552 700
  1923.                 fax: +60 3 2552 755
  1924.                 malnix@rangkom.my  or uunet!mimos!malnix
  1925.  
  1926. The Singapore UNIX Association (Sinix) holds an annual Southeast Asian
  1927. Regional Computer Conference.
  1928.  
  1929.         James Clark
  1930.         Sinix
  1931.         c/o Computer Systems Advisers, Ltd.
  1932.         203 Henderson Industrial Park
  1933.         Wing B #1207-1214
  1934.         Singapore 0315
  1935.         +65-273-0681
  1936.         fax: 65-278-1783
  1937.  
  1938. 1990 Dec 10-12  Unix Asia '90 C Sinix, Singapore
  1939. 1990 Dec 13-16  Unix Pavilion '90 T    Sinix, Singapore
  1940.  
  1941. The China UNIX User Group (CUUG) is the Chinese UniForum affiliate.
  1942.  
  1943.         Xu Kongshi
  1944.         China UNIX User Group
  1945.         P.O. Box 8718
  1946.         Beijing, 100080
  1947.         People's Republic of China
  1948.         +86-1-282013
  1949.  
  1950.  
  1951. There are similar groups in other parts of the world.  If such a group
  1952. wishes to be included in later versions of this access list, they
  1953. should please send me information.
  1954.  
  1955. There is a partial list of national organizations in the November/December
  1956. 1987 CommUNIXations.
  1957.  
  1958.  
  1959.  
  1960. DECUS, the Digital Equipment Computer Users Society,
  1961. has a UNIX SIG (Special Interest Group) that participates
  1962. in its general meetings, which are held twice a year.
  1963.  
  1964.         DECUS U.S. Chapter
  1965.         219 Boston Post Road, BP02
  1966.         Marlboro, Massachusetts  01752-1850
  1967.         U.S.A.
  1968.         +1-508-480-3418
  1969.  
  1970. The next DECUS Symposia are:
  1971.  
  1972. 1990 Dec 10-14  DECUS         Las Vegas, NV
  1973. 1990 Sept 3-7    DECUS Euorpe S    Cannes, France
  1974. 1991 Feb 18-22    DECUS         Ottawa, Canada
  1975. 1991 May 6-10   DECUS         Atlanta, GA
  1976. 1991 Dec 9-13   DECUS         Anaheim, CA
  1977. 1992 May 4-8    DECUS         Atlanta, GA
  1978.  
  1979. See also the USENET newsgroup comp.org.decus.
  1980.  
  1981.  
  1982. The Sun User Group (SUG) is an international organization that promotes
  1983. communication among Sun users, OEMs, third party vendors, and Sun
  1984. Microsystems, Inc.  SUG sponsors conferences, collects and distributes
  1985. software, produces the README newsletter and T-shirts, sponsors local
  1986. user groups, and communicates members' problems to Sun employees and
  1987. management.
  1988.  
  1989.     Sun Microsystems User Group, Inc.
  1990.     2550 Garcia Avenue
  1991.     Mountain View, CA  94043
  1992.     U.S.A.
  1993.     +1 415 960 1300
  1994.     users@sun.com
  1995.     sun!users
  1996.  
  1997. 1990 Sept 20-21 Sun UK User Group    Edinburgh, UK
  1998. 1990 Dec 3-5    Sun User Group      San Jose, CA
  1999. 1991 Jun 17-19  Sun User Group      Atlanta, GA
  2000. 1991 Dec 9-11   Sun User Group      San Jose, CA
  2001. 1992 Jun 22-24  Sun User Group      Washington, DC
  2002.  
  2003. ADUS is the Apollo DOMAIN Users' Society:
  2004.  
  2005.     Apollo DOMAIN Users' Society
  2006.     c/o Andrea Woloski, ADUS Coordinator
  2007.     Apollo Computer Inc.
  2008.     330 Billerica Rd.
  2009.     Chelmsford, MA 01824
  2010.     U.S.A.
  2011.     +1-617-256-6600, x4448
  2012.  
  2013.  
  2014. Interex, The International Association of HP Computer Users
  2015. has a UNIX SIG (Special Interest Group) that participates
  2016. in its general meetings, which are held once a year in the
  2017. U.S. and Europe.
  2018.  
  2019.     Interex
  2020.     585 Maude Court
  2021.     P.O. Box  3439
  2022.     Sunnyvale, California,   94088-3439
  2023.     U.S.A.
  2024.     +1-408-738-4848
  2025.  
  2026. 1990 Aug 20-23    Interex Conference    Boston, MA
  2027.  
  2028. The Open Software Foundation (OSF) is a vendor group formed 17 May 1988
  2029. by Apollo, Bull, DEC, HP, IBM, Nixdorff, and Siemens, and later joined
  2030. by Philips and numerous other companies.
  2031.  
  2032. For more information, contact:
  2033.  
  2034.     +1-617-621-8700
  2035.     Larry Lytle or Gary McCormack
  2036.     Open Software Foundation
  2037.     11 Cambridge Center
  2038.     Cambridge, MA 02139
  2039.     U.S.A.
  2040.  
  2041.  
  2042. UNIX International (UI) was formed to advise AT&T on UNIX System V
  2043. development.  Its membership includes AT&T, Control Data, Data General,
  2044. Fujitsu, Gould, Intel, Interactive, NEC, Sun Microsystems, Texas
  2045. Instruments, Unisys, and other companies and institutions.
  2046.  
  2047.         UNIX International
  2048.         20 Waterview Blvd.
  2049.         Parsippany, NJ 07054
  2050.     U.S.A.
  2051.         +1-201-263-8400
  2052.         800-UI-UNIX-5
  2053.         800-848-6495
  2054.  
  2055. Volume-Number: Volume 20, Number 13
  2056.  
  2057. From jsq@longway.tic.com  Tue May 22 11:11:51 1990
  2058. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  2059.     id AA07492; Tue, 22 May 90 11:11:51 -0400
  2060. Posted-Date: 22 May 90 14:28:57 GMT
  2061. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  2062.     id AA01537; Tue, 22 May 90 10:11:36 -0500
  2063. Received: by longway.tic.com (4.22/4.16)
  2064.     id AA03382; Tue, 22 May 90 09:29:34 cdt
  2065. From: Susanne W. Smith <calvin.wa.com!sws@longway.tic.com>
  2066. Newsgroups: comp.std.unix,comp.org.usenix,comp.unix.questions
  2067. Subject: Access to UNIX-Related Publications
  2068. Message-Id: <704@longway.TIC.COM>
  2069. Expires: 1 Jul 90 21:45:37 GMT
  2070. Sender: std-unix@longway.tic.com
  2071. Reply-To: sws@calvin.wa.com (Susanne W. Smith)
  2072. Date: 22 May 90 14:28:57 GMT
  2073. Apparently-To: std-unix-archive@uunet.uu.net
  2074.  
  2075. From: sws@calvin.wa.com (Susanne W. Smith)
  2076.  
  2077. This is the latest in a series of similar comp.std.unix articles,
  2078. intended to give summary information about UNIX-related publications;
  2079. to be accurate, but not exhaustive.  It's cross-posted to
  2080. comp.org.usenix and comp.unix.questions because there might be
  2081. interest there.
  2082.  
  2083. There are three related articles, posted at the same time as this one,
  2084. with subjects
  2085.     Calendar of UNIX-related Events
  2086.     Access to UNIX User Groups
  2087.     Access to UNIX-Related Standards
  2088. The latter is posted only to comp.std.unix.
  2089. These access postings are collected and posted by Susanne W. Smith
  2090. of Windsound Consulting <sws@calvin.wa.com> and were originated by
  2091. John S. Quarterman of Texas Internet Consulting <jsq@longway.tic.com>.
  2092. The information in them comes from a wide variety of sources.
  2093. We encourage others to reuse this information, but we ask for proper
  2094. acknowledgment, for example by including this statement.
  2095.  
  2096. Corrections and additions to this article are solicited.  We keep track
  2097. of the conferences, groups, and publications that we attend, are members
  2098. of, or subscribe to.  All others (the majority of the listings) we derive
  2099. either from listings elsewhere, or from contributions by readers.
  2100. In particular, the meeting schedules and descriptions of most of the
  2101. groups are provided by their members.  If a group doesn't have a
  2102. meeting schedule listed, it's because nobody has sent one.  This is
  2103. a low-budget operation:  we publish what is on hand when the time
  2104. comes (approximately bi-monthly).
  2105.  
  2106. Changes since last posting: root & UNIQUE publisher, IX-Magazine,
  2107.         UNIGRAM*X, AIX Age, UNIX Technology Advisor
  2108.  
  2109. Access information is given in this article for the following:
  2110. magazines:    UNIX REVIEW, UNIX/WORLD, UNIX Systems,
  2111.         UNIX Today, Multi-User Computing Magazine, UNIX Magazine,
  2112.         IX-Magazine, The FourGen UNIX Journal, root, 
  2113.         Dr. Dobbs Journal of Software Tools, Multi-User Journal 
  2114. user group publications:
  2115.         ;login:, Computing Systems, UniNews, CommUNIXations, 
  2116.         EUUGN, AUUGN, NUZ,
  2117. newsletters:    ExperTips, UNIGRAM*X, UNIX Technology Advisor, 
  2118.         The C Users Journal, Unique
  2119. vendor specific publications:
  2120.         AIX Age, AT&T Technical Journal, Sun Expert
  2121. video:        UNIX Video Quarterly
  2122. bookstores:    Computer Literacy Bookshop, Cucumber Bookshop,
  2123.         Inside Information, Jim Joyce's UNIX Book Store, 
  2124.         Uni-OPs Books, UNIX Book Service 
  2125.  
  2126.  
  2127. The main general circulation (more than 10,000 copies per issue) magazines
  2128. specifically about the UNIX system are:
  2129.  
  2130.     UNIX REVIEW
  2131.     Miller Freeman Publications Co.
  2132.     500 Howard Street
  2133.     San Francisco, CA 94105
  2134.     U.S.A.
  2135.     monthly
  2136.     +1-415-397-1881
  2137.  
  2138.     UNIX/WORLD
  2139.     Tech Valley Publishing
  2140.     444 Castro St.
  2141.     Mountain View, CA 94041
  2142.     U.S.A.
  2143.     monthly
  2144.     +1-415-940-1500
  2145.  
  2146.     UNIX Systems
  2147.     Eaglehead Publishing Ltd.
  2148.     Maybury Road
  2149.     Woking, Surrey GU21 5HX
  2150.     England
  2151.     +44 48 622 7661
  2152.  
  2153.     UNIX Today!
  2154.     CMP Publications, Inc.
  2155.     600 Community Drive
  2156.     Manhasset, NY 11030
  2157.     U.S.A.
  2158.     newspaper
  2159.     subscription information: uunet!utoday!evette 
  2160.         +1-516-562-5000
  2161.  
  2162.     Multi-User Computing magazine
  2163.     Storyplace Ltd.
  2164.     42 Colebrook Row
  2165.     London  N1 8AF
  2166.     England
  2167.     +44 1 704 9351
  2168.  
  2169.     UNIX Magazine
  2170.     Jouji Ohkubo
  2171.     c/o ASCII Corp.
  2172.     Japan
  2173.     jou-o@ascii.junet
  2174.     +81-3-486-4523
  2175.     fax: +81-3-486-4520
  2176.     telex: 242-6875 ASCIIJ
  2177.  
  2178. Other related magazines:
  2179.  
  2180.     IX-Magazine: Le Magazine de l'informatique partagee
  2181.     Publications GRD
  2182.     75241 Paris CEDEX 05
  2183.     France
  2184.     +33 1 43 36 77 00
  2185.     fax: +33 1 43 37 59 47
  2186.     monthly
  2187.     special foreign subscription rate of 385 FF (550 FF is normal rate)
  2188.  
  2189.     April 1990 issue is about standards.
  2190.  
  2191.     The FourGen UNIX Journal
  2192.     ``The Monthly Newsletter for those Developing,
  2193.       Marketing, or Using UNIX/XENIX Software.''
  2194.     FourGen Software, Inc.
  2195.     7620 242nd St. S.W.
  2196.     Edmonds, WA 98020-5463
  2197.     U.S.A.
  2198.     $79.95 a year
  2199.     +1-206-542-7481
  2200.     uunet!4gen!info
  2201.  
  2202.         root, the Journal of UNIX/Xenix System Administration
  2203.     Root Creations, Inc.
  2204.     632 East Bidwell St., Suite 56
  2205.     Folsom, California 95630. 
  2206.     U.S.A.
  2207.         bimonthly
  2208.     
  2209.     Dr. Dobbs Journal of Software Tools
  2210.     M&T Publishing, Inc
  2211.     501 Galveston Dr.
  2212.     Redwood City, CA  94063
  2213.     U.S.A.
  2214.     +1 415 366 3600
  2215.     Mostly DOS, some UNIX, quite technical
  2216.     monthly
  2217.     $29.97 per year
  2218.  
  2219.         Multi-User Journal
  2220.         Owens-Laing Publications, Ltd.
  2221.         P.O. Box 2409
  2222.         Redmond, WA  98073-2409
  2223.         +1 206 868 0913
  2224.         attmail!olp!jou
  2225.         quarterly
  2226.     mostly Sys V-related.  They also publish the
  2227.         _3B Journal_ addendum, specializing in the AT&T 3B family.
  2228.  
  2229.  
  2230. User group newsletters, magazines, and journals:
  2231.  
  2232. The USENIX Association publishes a bimonthly newsletter, ``login:
  2233. The USENIX Association Newsletter,'' and a quarterly refereed technical
  2234. journal, ``Computing Systems: The Journal of the USENIX Association,''
  2235. (in cooperation with University of California Press), and an edition
  2236. of the 4.3BSD Manuals (with Howard Press).
  2237.  
  2238.     USENIX Association
  2239.     2560 Ninth St, Suite 215
  2240.     Berkeley, CA 94710
  2241.     U.S.A.
  2242.     +1-415-528-8649
  2243.  
  2244. UniForum publishes a biweekly newsletter, UniNews, formerly /usr/digest,
  2245. a bimonthly member magazine, CommUNIXations, and the
  2246. UNIX Products Directory.
  2247.  
  2248.     UniForum
  2249.     2901 Tasman Drive, Suite 201
  2250.     Santa Clara, California 95054
  2251.     U.S.A.
  2252.     +1-408-986-8840
  2253.  
  2254. EUUG publishes a quarterly magazine, EUUGN.
  2255.  
  2256.     EUUG secretariat
  2257.     Owles Hall
  2258.     Buntingford
  2259.     Herts SG9 9PL
  2260.     England
  2261.     +44 763 73039
  2262.     fax: +44 763 73255
  2263.     uunet!mcvax!inset!euug
  2264.     euug@inset.co.uk
  2265.  
  2266. AUUG publishes a bimonthly newsletter, AUUGN.
  2267.  
  2268.     AUUG
  2269.     P.O. Box 366
  2270.     Kensington
  2271.     N.S.W.    2033
  2272.     Australia
  2273.     uunet!munnari!auug
  2274.     auug@munnari.oz.au
  2275.  
  2276.  
  2277. NZSUGI publishes a newsletter, NUZ.
  2278.  
  2279.     New Zealand UNIX Systems User Group
  2280.     P.O. Box 585
  2281.     Hamilton
  2282.     New Zealand
  2283.     +64-9-454000
  2284.  
  2285.  
  2286. Newsletters:
  2287.  
  2288.     ExperTips
  2289.     Berkeley Decision/Systems
  2290.     803 Pine St.
  2291.     Santa Cruz, CA 95062
  2292.     U.S.A.
  2293.     +1 408 458 9708
  2294.     fax: +1 408 462 6355
  2295.     free
  2296.  
  2297.     UNIGRAM*X    
  2298.     American publisher is Maureen O'Gara
  2299.      3 Maple Place    
  2300.         Glen Head, NY 11545 USA
  2301.     U.S.A.
  2302.     +1 516 229 2335
  2303.     $495/year
  2304.  
  2305.     English publisher is Simon Thompson
  2306.     Unigram Products Limited
  2307.     4th Floor,
  2308.     12 Sutton Row
  2309.     London W1V 5FH
  2310.     England
  2311.     +44 1 528 7083
  2312.     price: ask
  2313.  
  2314.     UNIX Technology Advisor
  2315.     MYOB, Inc.
  2316.     PO Bos 955 
  2317.     Hollis, NH  03049
  2318.     U.S.A.
  2319.     +1 603 465 7825
  2320.     monthly
  2321.     $295/year
  2322.  
  2323.     The C Users Journal
  2324.     ``A service of the C Users Group.''
  2325.     R&D Publications Inc
  2326.     2601 Iowa St., Suite B
  2327.     Lawrence, KS  66047
  2328.     U.S.A.
  2329.     Eight issues per year
  2330.     $20/yr (US/Mex/Can); $30/yr (overseas)
  2331.     +1 913 841 1631
  2332.     Mainly DOS-oriented; some UNIX.
  2333.  
  2334.     Unique
  2335.     ``The UNIX System Information Source.''
  2336.     R&D Publications Inc
  2337.         2601 Iowa St., Suite B
  2338.         Lawrence, KS  66047
  2339.         U.S.A.
  2340.     Monthly
  2341.     +1 916 677-5870
  2342.     Emphasis on marketing implications of technical developments.
  2343.  
  2344. Vendor-specific newsletters, magazines, and journals:
  2345.  
  2346.     AIX Age
  2347.     Chuck Balsly
  2348.     P.O. Box 153588,
  2349.     Irving, Texas USA
  2350.     U.S.A.
  2351.     +1 800 272 2243
  2352.  
  2353.     AT&T Technical Journal
  2354.     AT&T Bell Laboratories
  2355.     Circulation Dept.
  2356.     Room 1K-424
  2357.     101 J F Kennedy Parkway
  2358.     Short Hills, NJ 07078
  2359.     U.S.A.
  2360.     Bimonthly
  2361.     $40/yr (US); $50/yr (overseas)
  2362.     +1 201 564-2582
  2363.     While few issues are devoted to UNIX,
  2364.     most turn out to mention its applications.
  2365.  
  2366.         Sun Expert
  2367.         Expert Publishing Group
  2368.         1330 Beacon Street
  2369.         Brookline, MA 02146
  2370.     U.S.A.
  2371.         uunet!expert!circ (circ@expert.com)
  2372.         +1-617-739-7001
  2373.     Monthly
  2374.  
  2375. Videos:
  2376.     UNIX Video Quarterly
  2377.     InfoPro Systems
  2378.     PO Box 220
  2379.     Rescue, CA 95672-0220
  2380.     U.S.A.
  2381.     +1-916-677-5870
  2382.     Telex: 151296379 INFOPRO
  2383.     fax: +1-916-677-5873
  2384.     {ames,attmail,pyramid}!infopro!root
  2385.     VHS. The first tape (1 hr. 18 min.) is now available.
  2386.     Charter subscriptions $195/year. 
  2387.  
  2388.  
  2389. Some of the following information about bookstores was taken from the
  2390. November/December 1987 issue of CommUNIXations.  The remainder was 
  2391. submitted by different readers of this list.  In the interests of
  2392. space, we have arbitrarily limited the selection listed here to those
  2393. bookstores or suppliers specifically dedicated to computer books, and
  2394. not part of other organizations.  They are listed here in alphabetical
  2395. order.
  2396.  
  2397.     Computer Literacy Bookshop
  2398.     2590 No. First St.
  2399.     San Jose, CA 95131
  2400.     U.S.A.
  2401.     +1-408-435-1118
  2402.  
  2403.     Cucumber Bookshop
  2404.     5611 Kraft Ave.
  2405.     Rockville, MD 20852
  2406.     U.S.A.
  2407.     +1-301-881-2722
  2408.  
  2409.     Inside Information
  2410.     77 Harbord Street
  2411.     Toronto, Ontario M5S 1G4
  2412.     Canada 
  2413.     +1-416-929-3244
  2414.  
  2415.     Jim Joyce's UNIX Book Store
  2416.     139 Noe St.
  2417.     San Francisco, CA 94114
  2418.     U.S.A.
  2419.     +1-415-626-7581
  2420.     jim@toad.com
  2421.  
  2422.     Uni-OPs Books
  2423.     195 Mt. View Rd.
  2424.     Boonville, CA 95415
  2425.     U.S.A.
  2426.     +1-707-895-2050
  2427.  
  2428.     UNIX Book Service
  2429.     35 Bermuda Terrace
  2430.     Cambridge, CB4 3LD
  2431.     England
  2432.     +44-223-313273
  2433.  
  2434. Volume-Number: Volume 15, Number 24
  2435.  
  2436.  
  2437. Volume-Number: Volume 20, Number 14
  2438.  
  2439. From jsq@longway.tic.com  Tue May 22 11:13:30 1990
  2440. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  2441.     id AA07819; Tue, 22 May 90 11:13:30 -0400
  2442. Posted-Date: 22 May 90 14:33:34 GMT
  2443. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  2444.     id AA01715; Tue, 22 May 90 10:13:11 -0500
  2445. Received: by longway.tic.com (4.22/4.16)
  2446.     id AA03442; Tue, 22 May 90 09:34:14 cdt
  2447. From: Susanne W. Smith <calvin.wa.com!sws@longway.tic.com>
  2448. Newsgroups: comp.std.unix
  2449. Subject: Access to UNIX-Related Standards
  2450. Message-Id: <705@longway.TIC.COM>
  2451. Expires: 1 Jul 90 21:45:37 GMT
  2452. Sender: std-unix@longway.tic.com
  2453. Reply-To: sws@calvin.wa.com (Susanne W. Smith)
  2454. Date: 22 May 90 14:33:34 GMT
  2455. Apparently-To: std-unix-archive@uunet.uu.net
  2456.  
  2457. From: sws@calvin.wa.com (Susanne W. Smith)
  2458.  
  2459. This is the latest in a series of similar comp.std.unix articles.
  2460. Corrections and additions to this article are solicited.
  2461.  
  2462. There are three companion articles, posted at the same time as this one
  2463. with subjects
  2464.     Calendar of UNIX-related Events
  2465.     Access to UNIX User Groups
  2466.     Access to UNIX-Related Publications
  2467. These access postings are collected and posted by Susanne W. Smith
  2468. of Windsound Consulting <sws@calvin.wa.com> and were originated by
  2469. John S. Quarterman of Texas Internet Consulting <jsq@longway.tic.com>.
  2470. The information in them comes from a wide variety of sources.
  2471. We encourage others to reuse this information, but we ask for proper
  2472. acknowledgment, for example by including this statement.
  2473.  
  2474. Also note that Jeff Haemer now writes a quarterly summary report for
  2475. USENIX soon after each IEEE 1003 meeting for posting in comp.std.unix
  2476. and in ;login:, the Newsletter of the USENIX Association.
  2477.  
  2478. Changes since last posting: IEEE/CS P1003 contacts, groups, dates, 
  2479.     NIST, UniForum working groups.
  2480.  
  2481. Access information is given in this article for the following standards:
  2482. ISO/IEC TC1 SC22 WG15 (POSIX)
  2483. ISO/IEC TC1 SC22 WG14 (C language)
  2484. IEEE     1003.0  (POSIX guide).
  2485.     1003.1  (operating system interface), 
  2486.      1003.2  (shell and tools),
  2487.     1003.3  (testing and verification),
  2488.     1003.4  (real time),
  2489.     1003.5  (ADA binding),
  2490.     1003.6  (security),
  2491.     1003.7  (system administration), 
  2492.     1003.8  (transparent file access),
  2493.     1003.9  (FORTRAN binding),
  2494.     1003.10 (supercomputing),
  2495.     1003.11 (transaction processing),
  2496.     1003.12 (protocol independent interfaces)
  2497.     1003.13 (name space/directory services)
  2498.     1003.14 (Real Time)
  2499.     1003.16 (multiprocessing study group)
  2500.     1003.17 (supercomputing batch element)
  2501.     1201.1  (interfaces for user portability)
  2502.     1201.2  (recommende practice on drivability)
  2503.     1224    (message handling services)
  2504.     1237    (RPC)
  2505.     1238.1  (Common OSI API)
  2506.     1238.2  (FTAM)
  2507. UniForum Technical Committee Subcommittees on;
  2508.     distributed file system,
  2509.     network interface, 
  2510.     internationalization,
  2511.     realtime, 
  2512.     database, 
  2513.     performance measurements, 
  2514.     security, 
  2515.     super computing,
  2516.     usability,
  2517.     transaction processing, and
  2518.     C++.
  2519. NIST:  FIPS 
  2520. X3H3.6 (display committee)
  2521. X3J11 (C language)
  2522. /usr/group 1984 Standard
  2523. System V Interface Definition (SVID, or The Purple Book)
  2524. X/OPEN PORTABILITY GUIDE 
  2525. 4.3BSD Manuals
  2526.  
  2527. UNIX is a Registered Trademark of AT&T.
  2528. IEEE is a trademark
  2529.     of the Institute of Electrical and Electronic Engineers, Inc.
  2530. POSIX is no longer a trademark of IEEE or of anyone else.
  2531. X/OPEN is a licensed trademark of the X/OPEN Group Members.
  2532.  
  2533.  
  2534. The IEEE P1003 Portable Operating System Interface for Computer
  2535. Environments Committee is sometimes known colloquially as the UNIX
  2536. Standards Committee.  They published the 1003.1 "POSIX" Full Use
  2537. Standard in October 1988 after its formal approval 22 August 1988.
  2538. This is an interface and environment standard; implementation details
  2539. are explicitly excluded.  Although it is based on documentation for
  2540. various versions of the UNIX Operating System, it is explicitly not
  2541. UNIX, which is an implementation licensed by a certain vendor.  Source
  2542. level application portability is the goal.
  2543.  
  2544. The standard may be ordered from:
  2545.  
  2546.         +1-201-981-0060
  2547.         IEEE Service Center
  2548.         445 Hoes Lane
  2549.         Piscataway, NJ  08854
  2550.         U.S.A.
  2551.  
  2552. The price is $16 for members, $32 for non-members (plus $4.00 tax, 
  2553. shipping, and handling).
  2554.  
  2555. Single copies of current drafts of the 1003 documents can be obtained
  2556. from the Computer Society with a charge to cover reproduction and mailing.
  2557. Their phone number is +1-202-371-0101.
  2558.  
  2559. IEEE 1003.1 is also an ``International Standard (IS 9945-1)''
  2560. under a joint committee of the International Organization for Standardization
  2561. (ISO) and the International Electrotechnical Committee (IEC), Joint
  2562. Technical Committee 1, Subcommittee 22, Working Group 15 (ISO/IEC JTC1
  2563. SC22 WG15).  The convener is Jim Isaak:  see below for his address.  
  2564. Dominic Dunlop is the EUUG and USENIX representative to ISO/IEC JTC1 SC22 WG15 
  2565. and WG14. There is a U.S. Technical Advisory Group (TAG) to 
  2566. ISO/IEC JTC1 SC22 WG15: the chair is Donn Terry of HP, who is also the 
  2567. current chair of IEEE 1003.1.
  2568.  
  2569.         Donn Terry
  2570.         hplabs!hpfcla!donn
  2571.         +1-303-229-2367
  2572.         Hewlett Packard Systems Division
  2573.         3404 E. Harmony Road
  2574.         Fort Collins, CO  80525
  2575.         U.S.A.
  2576.  
  2577. TAG meetings tend to be held wherever 1003.1 is meeting.
  2578.  
  2579.  
  2580. There is a paper mailing list by which interested parties may get
  2581. copies of drafts of the standard.  To get on it, or to submit comments
  2582. directly to the committee, mail to:
  2583.  
  2584.         James Isaak
  2585.         Chairperson, IEEE/CS P1003
  2586.         +1-603-884-3634
  2587.         fax: +1-603-884-3682
  2588.         isaak@decvax.dec.com
  2589.         isaak@decvax.dec.com
  2590.         Digital Equipment TTB1-5/G06
  2591.         10 Tara Blvd.
  2592.         Nashua, NH  03062
  2593.         U.S.A.
  2594.  
  2595. Sufficiently interested parties may join the working group.
  2596.  
  2597.  
  2598. The term POSIX actually applies to all of the P1003 subcommittees:
  2599. group    subject                chairs, vice-chair
  2600. 1003.0    POSIX Guide            Al Hankinson (NIST) 
  2601.                     alhank@swe.ncsl.nist.gov 
  2602.                     Kevin Lewis (DEC)
  2603.  
  2604. 1003.1    Systems Interface        Donn Terry (HP)
  2605.                     hplabs!hpfcla!donn
  2606.  
  2607. 1003.2    Shell and Tools Interface      Hal Jespersen (POSIX Software Group) 
  2608.                     uunet!posix!hlj
  2609.                     Don Cragun (Sun)
  2610.                     dwc@sun.com
  2611.  
  2612. 1003.3    Verification and Testing     Roger Martin (NIST)
  2613.                     rmartin@swe.ncsl.nist.gov 
  2614.                     N. Ray Wilkes (UNISYS)
  2615.                     nrw@sp7040
  2616.  
  2617. 1003.4    Real Time             Bill Corwin (Intel) 
  2618.                     uunet!littlei!wmc
  2619.                     Mike Cossey
  2620.  
  2621. 1003.5    Ada Binding for POSIX        Steven Deller (Verdix)
  2622.                     deller@verdix.com
  2623.                     Terry Fong (USArmy)
  2624.                     tfong@huachuca-emh8.army.mil
  2625.  
  2626. 1003.6    Security            Dennis Steinauer (NIST) 
  2627.                     steinauer@ecf.ncsl.nist.gov
  2628.                     Ron Elliot (IBM)
  2629.                     elliott@aixsm.uunet.uu.net
  2630.  
  2631. 1003.7    System Administration        Steve Carter (Bellcore) 
  2632.                     bellcore!pyuxv!slc2
  2633.                     David Hinnant (BNR)
  2634.                     uunet!rti.rti.org!bnrunix!dfh
  2635.                     Martin Kirk (BTRL)
  2636.                     ukc!axion!mkirk
  2637.  
  2638. Distributed Services Steering Committee    Timothy Baker (Ford Aero)
  2639.                     tbaker%nasamail@ames.arc.nasa.gov
  2640.                     Dave Dodge
  2641.                     hplabs!oracle!ddodge
  2642.  
  2643. 1003.8    TFA SG                Jason Zions (HP)
  2644.                     jason@hpcndm.hp.com
  2645. 1003.12 Protocol Independent Interfaces Les Wibberley (Chemical Abstracts)
  2646.                     lhw25@cas.bitnet
  2647. 1003.13    Name Space/Directory Services     Lakshmi Arunachalam (Sun)
  2648. 1237    RPC                 Ken Hobday (DEC)
  2649. 1238.1    Common OSI API             Kester Fong (GM)
  2650. 1238.2    FTAM SG    
  2651. 1224    Message Handling Services (X.400) SG
  2652.                     John Boebinger (DEC)
  2653.     
  2654. 1003.9    Fortran Bindings        John McGrory (HP)
  2655.                     mcgrory@iag.hp.com 
  2656.                     Michael J. Hannah (Sandia)
  2657.                     mjhanna@sandia.gov
  2658.  
  2659. 1003.10    Supercomputing SG        Karen Sheaffer (Sandia)
  2660.                     karen@snll-arpagw.llnl.gov 
  2661.                     Jonathan C. Brown (Lawrence Livermore)
  2662.                     jbrown@nmfecc.llnl.gov
  2663.  
  2664. 1003.11    Transaction Processing SG    Elliot J Brebner (Unisys) 
  2665.                     uunet!s5000!brebner
  2666.                     Bob Snead (Interactive)
  2667.                     bobs@ico.isc.com
  2668.  
  2669. 1003.14 Real Time AEP             see 1003.4
  2670.  
  2671. 1003.16 Multiprocessing Study Group    
  2672.  
  2673. 1003.17 SC Batch element 
  2674.  
  2675. 1201.1  Interfaces for User Portability    Sunil Mehta (Convergent), 
  2676. 1201.2     Recommended Practice on Drivability
  2677.                      Lin Brown (Sun)
  2678.                     lin@Sun.COMlin@Sun.COM
  2679.  
  2680.  
  2681. Inquiries regarding any of the subcommittees should go to the address for the
  2682. IEEE 1003 chair.
  2683.  
  2684. The next scheduled meetings of the P1003 working groups are:
  2685.  
  2686. 1990 Jul 16-20    IEEE 1003    Danvers, MA
  2687. 1990 Oct 15-19    IEEE 1003    Seattle, WA
  2688. 1991 Jan 7-11    IEEE 1003    New Orleans, LA 
  2689. 1991 Apr 15-19    IEEE 1003    Houston, TX (location tentative)
  2690. 1991 July 8-12    IEEE 1003    Santa Clara, CA (location tentative)
  2691. 1991 Oct 21-25    IEEE 1003    Southern Europe (location tentative)
  2692. 1992 Jan 13-17    IEEE 1003    Orlando, FL (location tentative)
  2693. 1992 Apr 20-24    IEEE 1003    Montreal, PQ (location tentative)
  2694. 1992 Jul 13-17    IEEE 1003    Alaska (location tentative)
  2695. 1992 Oct 19-23    IEEE 1003    Scottsdale, AZ (location tentative)
  2696.  
  2697. There are seven Institutional Representatives to P1003:  John Quarterman
  2698. from USENIX, Heinz Lycklama and Ralph Barker from UniForum, Petr Janecek 
  2699. from X/OPEN, Fritz Schulz from OSF, Shane McCarron from UNIX International,
  2700. and Richard Alexander from Share.  They are apparently all also representatives
  2701. to the U.S. TAG to ISO SC22 WG15.
  2702.  
  2703. There is a USENIX Standards Watchdog Committee of volunteers who report
  2704. on issues raised in standards committee meetings.  These reports are
  2705. published quarterly in comp.std.unix, in ;login: The Newsletter of the
  2706. USENIX Association, and in the trade press.  Occasionally, these volunteers
  2707. may speak for USENIX, but only if authorized by the USENIX Standards
  2708. Policy Committee, which currently consists of John S. Quarterman (chair),
  2709. Marshall Kirk McKusick (USENIX President), Alan G. Nemeth (former USENIX
  2710. President), and Ellie Young (USENIX Executive Director).
  2711.  
  2712. Comments, suggestions, etc., may be sent to
  2713.  
  2714.  
  2715.         John S. Quarterman
  2716.         USENIX Standards Liaison
  2717.         Texas Internet Consulting
  2718.         701 Brazos, Suite 500
  2719.         Austin TX 78701-3243
  2720.         +1-512-320-9031
  2721.         fax: +1-512-320-5821
  2722.         jsq@usenix.org
  2723.         uunet!usenix!jsq
  2724.  
  2725.  
  2726. For comp.std.unix:
  2727. Comments:       uunet!std-unix-request  std-unix-request@uunet.uu.net
  2728. Submissions:    uunet!std-unix          std-unix@uunet.uu.net
  2729.  
  2730. CommUNIXations (the UniForum magazine) contains reports about every
  2731. other issue by Allen Hankinson on the UniForum Technical Committee meetings.
  2732.  
  2733. If you are interested in starting another UniForum working group, contact
  2734. Allen Hankinson:
  2735.  
  2736.         Allen L. Hankinson      
  2737.         National Institute of Standards & Technology
  2738.         Systems & Software Technology Div.              
  2739.         Tech Building, Room B266
  2740.         Gaithersburg, MD  20899 
  2741.         +1-301-975-3290               
  2742.         fax: +1-301-590-0932
  2743.         alhank@swe.ncsl.nist.gov
  2744.  
  2745.  
  2746. Here is contact information for UniForum working groups.
  2747.  
  2748. UniForum Working Group on Internationalization:
  2749.     Loretta Goudie
  2750.     Santa Cruz Operation
  2751.     400 Encinal
  2752.     Santa Cruz, CA 95060
  2753.     408-458-1422
  2754.  
  2755. UniForum Working Group on Realtime:
  2756.     Bill Corwin
  2757.     Intel Corp.
  2758.     5200 Elam Young Pkwy
  2759.     Hillsboro, OR 97123
  2760.     (503)696-2248
  2761.  
  2762. UniForum Working Group on Performance Measurements:
  2763.     Ram Chelluri        
  2764.     AT&T Computer Systems    
  2765.     Room E15B        
  2766.     4513 Western Ave.    
  2767.     Lisle, IL 60532-1571    
  2768.     (312)810-6223        
  2769.  
  2770. UniForum Working Group on Security:
  2771.     Jeanne Baccash
  2772.     AT&T UNIX Systems Engineering
  2773.     190 River Road
  2774.     MS G-222
  2775.     Summit, NJ  07901
  2776.     201-522-6028
  2777.     attunix!jeanne
  2778.  
  2779. UniForum Working Group on C++:
  2780.     Don Kretsch
  2781.         AT&T Information Systems
  2782.         190 River Road
  2783.     Summit, NJ  07901
  2784.     201-522-6499
  2785.  
  2786.  
  2787. The National Institute of Standards and Technology (NIST, formerly NBS,
  2788. the National Bureau of Standards) has produced a Federal Information
  2789. Processing Standard (FIPS) based on IEEE 1003.1 Draft 12, and approved
  2790. 31 August 1988 as FIPS #151, Portable Operating System for Computer
  2791. Environments.  An update to the state of the 1003.1 Full Use Standard
  2792. is expected.  For information, contact:
  2793.  
  2794.         Roger Martin
  2795.         National Institute of Standards and Technology
  2796.         Technology Building, Room B266
  2797.         Gaithersburg, MD 20899
  2798.             +1-301-975-3295
  2799.             rmartin@swe.ncsl.nist.gov
  2800.  
  2801. NIST has a POSIX Conformance Test Suite (PCTS) for 1003.1 which is 
  2802. currently in preliminary external testing.
  2803.  
  2804. NIST is also producing a FIPS based on IEEE 1003.2, and has started
  2805. one on system administration.
  2806.  
  2807. NIST sponsors a number of standards-related workshops, including:
  2808.  
  2809. 1990 Nov 15    APP/OSE Users Forum    NIST, G, MD
  2810. 1991 May 9    APP/OSE Users Forum    NIST, G, MD
  2811. 1991 Nov 14    APP/OSE Users Forum    NIST, G, MD
  2812.  
  2813.  
  2814. The X3H3.6 display management committee is in the final stages of
  2815. standardization of the X Window System Data Stream Encoding Version 11
  2816. (the "X Protocol"). They will soon begin the standardization of Xlib
  2817. and its various language bindings (C, ADA, Fortran) as well as begin
  2818. the standardization process within ISO.  The chair is
  2819.  
  2820.         Dr. Georges Grinstein
  2821.         grinstein@ulowell.edu
  2822.  
  2823.  
  2824.  
  2825. X3J11 is sometimes known as the C Standards Committee.  Their liaison
  2826. to P1003 is
  2827.  
  2828.         Don Kretsch
  2829.         AT&T
  2830.         190 River Road
  2831.         Summit, NJ 07901
  2832.  
  2833. A contact for information regarding publications and working groups is
  2834.  
  2835.         Thomas Plum
  2836.         Vice Chair, X3J11 Committee
  2837.         Plum Hall Inc.
  2838.         1 Spruce Avenue
  2839.         Cardiff, New Jersey 08232
  2840.  
  2841. ANSI documents may be ordered from
  2842.     
  2843.         Global Engineering Documents
  2844.         2805 McGaw
  2845.         Irvine, CA 92714
  2846.         USA
  2847.         +1-714-261-1455
  2848.         +1-800-854-7179
  2849.  
  2850. As of May 21, 1990 only the X3.159-1988 draft is available and the price
  2851. is $70. When available the standard document will be X3.159-1990.
  2852.  
  2853. The /usr/group 1984 Standard is a principal ancestor of P1003.1, X/OPEN,
  2854. and X3J11.  It may be ordered for $15.00 from:
  2855.  
  2856.         UniForum Standards Committee
  2857.         2901 Tasman Drive, Suite 201
  2858.         Santa Clara, California 95054
  2859.         Tel: (408)986-8840
  2860.         Fax: (408)986-1645
  2861.  
  2862. UniForum also publishes the documents, ``Your Guide to POSIX,''
  2863. explaining what IEEE 1003 is,  ``POSIX Explored: System Interface,''
  2864. about technical aspects of IEEE 1003.1, and its relations to other standards
  2865. and historical implementations, and ``POSIX Update: Shell and Utilities.''
  2866. Contact UniForum at the above address for details.
  2867.  
  2868.  
  2869. The System V Interface Definition (The Purple Book, or SVID).
  2870. This is the AT&T standard and is one of the most frequently-used
  2871. references of the IEEE 1003 committee.
  2872.  
  2873.         AT&T Customer Information Center
  2874.         Attn:  Customer Service Representative
  2875.         P.O. Box 19901
  2876.         Indianapolis, IN 46219
  2877.         U.S.A.
  2878.  
  2879.         800-432-6600 (Inside U.S.A.)
  2880.         800-255-1242 (Inside Canada)
  2881.         +1-317-352-8557 (Outside U.S.A. and Canada)
  2882.  
  2883.     System V Interface Definition, Issue 2
  2884.     should be ordered by the following select codes:
  2885.  
  2886.     Select Code:    Volume:        Topics:
  2887.     320-011        Volume I    Base System
  2888.                     Kernel Extension
  2889.     320-012        Volume II    Basic Utilities Extension
  2890.                     Advanced Utilities Extension
  2891.                     Software Development Extension
  2892.                     Administered System Extension
  2893.                     Terminal Volume Interface Extension
  2894.     320-013        Volume III    Base System Addendum
  2895.                     Terminal Interface Extension
  2896.                     Network Services Extension
  2897.     307-131        I, II, III    (all three volumes)
  2898.  
  2899. The price is about 37 U.S. dollars for each volume or $84 for all three.
  2900. Major credit cards are accepted for telephone orders:  mail orders
  2901. should include a check or money order, payable to AT&T.
  2902.  
  2903.  
  2904. The implementation of System V is described in the book
  2905.  
  2906.     The Design of the UNIX Operating System
  2907.     Maurice J. Bach
  2908.     Prentice-Hall, Englewood Cliffs, New Jersey
  2909.  
  2910.  
  2911. The X/Open Portability Guide (XPG) is another reference frequently 
  2912. used by IEEE 1003.
  2913.  
  2914. The X/Open Group was formed by "Ten of the world's major information system
  2915. suppliers". The number of member companies has grown since then. 
  2916. They have produced a document intended to promote
  2917. the writing of portable applications.  They closely follow both SVID
  2918. and POSIX, and cite the /usr/group standard as contributing, but
  2919. X/OPEN's books cover a wider area than any of those.
  2920.  
  2921. The books are published by
  2922.  
  2923.         Prentice-Hall
  2924.         Englewood Cliffs
  2925.         New Jersey  07632
  2926.  
  2927. There are currently seven volumes:
  2928.     1) XSI Commands and Utilities    
  2929.     2) XSI System Interface and Headers
  2930.     3) XSI Supplementary Definitions    
  2931.     4) Programming Languages        
  2932.     5) Data Management            
  2933.     6) Window Management            
  2934.     7) Networking Services            
  2935.  
  2936.     All 7 Volumes        
  2937.  
  2938. Comments, suggestions, error reports, etc., for Issue 3 of the X/OPEN 
  2939. Portability Guide may be mailed directly to:
  2940.  
  2941.         xpg3@xopen.co.uk
  2942.         uunet!mcvax!inset!xopen!xpg3
  2943.  
  2944. Information about X/OPEN can be requested from:
  2945.  
  2946.         Mike Lambert
  2947.         X/Open
  2948.         Apex Plaza, 
  2949.         Forbury Road
  2950.         Reading
  2951.         Berkshire RG1 1AX
  2952.         England
  2953.         +44 734 508 311
  2954.         mgl@xopen.co.uk
  2955.         uunet!mcvax!inset!xopen!mgl
  2956.  
  2957.  
  2958. 4.2BSD and 4.3BSD have influenced POSIX in a number of areas.
  2959. The best reference on them is the 4.3BSD manuals, published by USENIX.
  2960. An order form may be obtained from:
  2961.  
  2962.         Howard Press
  2963.         c/o USENIX Association
  2964.         P.O. Box 2299
  2965.         Berkeley, CA 94710
  2966.  
  2967.         +1-415-528-8649
  2968.         uunet!usenix!office
  2969.         office@usenix.org
  2970.  
  2971. 4.3BSD User's Manual Set (3 volumes)        $25.00
  2972.     User's Reference Manual
  2973.     User's Supplementary Documents
  2974.     Master Index
  2975.  
  2976. 4.3BSD Programmer's Manual Set (3 volumes)    $25.00
  2977.     Programmer's Reference Maual
  2978.     Programmer's Supplementary Documents, Volume 1
  2979.     Programmer's Supplementary Documents, Volume 2
  2980.  
  2981. 4.3BSD System Manager's Manual (1 volume)    $10.00
  2982.  
  2983. Unfortunately, there are some license restrictions.
  2984. Contact the USENIX office for details.
  2985.  
  2986.  
  2987. Information about the design and implementation of 4.3BSD can be found 
  2988. in the book
  2989.  
  2990.     The Design and Implementation of the 4.3 BSD UNIX Operating System
  2991.     Samuel J. Leffler, Marshall Kirk McKusick, Michael J. Karels, and
  2992.         John S. Quarterman
  2993.     Addison-Wesley, Reading, Massachusetts, 1989
  2994.  
  2995. Volume-Number: Volume 20, Number 15
  2996.  
  2997. From jsq@longway.tic.com  Wed May 30 02:10:25 1990
  2998. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  2999.     id AA11945; Wed, 30 May 90 02:10:25 -0400
  3000. Posted-Date: 22 May 90 17:56:11 GMT
  3001. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3002.     id AA16308; Wed, 30 May 90 01:10:19 -0500
  3003. Received: by longway.tic.com (4.22/4.16)
  3004.     id AA13094; Tue, 29 May 90 22:59:48 cdt
  3005. From: Peter da Silva <ficc.ferranti.com!peter@longway.tic.com>
  3006. Newsgroups: comp.std.unix
  3007. Subject: Re: Common Reference Ballot
  3008. Message-Id: <706@longway.TIC.COM>
  3009. References: <692@longway.TIC.COM> <696@longway.TIC.COM> <697@longway.TIC.COM> <701@longway.TIC.COM>
  3010. Sender: std-unix@longway.tic.com
  3011. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  3012. Organization: Xenix Support, FICC
  3013. Date: 22 May 90 17:56:11 GMT
  3014. Apparently-To: std-unix-archive@uunet.uu.net
  3015.  
  3016. From: peter@ficc.ferranti.com (Peter da Silva)
  3017.  
  3018. [ in the real world there are programmers who aren always as sensitive
  3019.   to portability issues as they should be ]
  3020.  
  3021. > I like to think I'm working in the real world, and because I do care
  3022. > about application portability I'm careful about these things when I
  3023. > program.  I suspect I'm not the only one.
  3024.  
  3025. You and I will do that. But the people whose code I find myself maintaining
  3026. are not always quite so careful. They generally try to conform to the
  3027. standard as far as they know it, but aren't willing to go back to the base
  3028. document to check on stuff they're sure is correct.
  3029.  
  3030. > Note that there IS no magic
  3031. > road to guaranteed portability, if the programmer is oblivious to the
  3032. > issues.
  3033.  
  3034. Not oblivious. Just not as sensitive as they should be. Say, someone trying
  3035. to maintain a program that uses mmap(). Suddenly they need to save state,
  3036. so they put the arguments in to map the whole file in. Six months later,
  3037. when time comes to integrate this code back to the baseline it breaks on
  3038. some machine that doesn't have a real mmap().
  3039.  
  3040. I don't want a magic road, but the signposts should at least be clear.
  3041.  
  3042. [ extensions should require some magic juju before they're active, like
  3043.   calling mmap instead of shmmap ]
  3044. > That would be nice, but it's pretty hard to enforce in cases like
  3045. > adding extended functionality to the standard functions.
  3046.  
  3047. Such as?
  3048. -- 
  3049. `-_-' Peter da Silva. +1 713 274 5180.  <peter@ficc.ferranti.com>
  3050.  'U`  Have you hugged your wolf today?  <peter@sugar.hackercorp.com>
  3051. @FIN  Dirty words: Zhghnyyl erphefvir vayvar shapgvbaf.
  3052.  
  3053.  
  3054. Volume-Number: Volume 20, Number 15
  3055.  
  3056. From jsq@longway.tic.com  Wed May 30 02:10:38 1990
  3057. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3058.     id AA11982; Wed, 30 May 90 02:10:38 -0400
  3059. Posted-Date: 23 May 90 16:31:58 GMT
  3060. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3061.     id AA16327; Wed, 30 May 90 01:10:31 -0500
  3062. Received: by longway.tic.com (4.22/4.16)
  3063.     id AA13166; Tue, 29 May 90 23:05:38 cdt
  3064. From: Mike Schultz <oakhill.sps.mot.com!mikes@longway.tic.com>
  3065. Newsgroups: comp.std.unix
  3066. Subject: Re: Common Reference Ballot
  3067. Message-Id: <707@longway.TIC.COM>
  3068. References: <689@longway.TIC.COM> <692@longway.TIC.COM> <696@longway.TIC.COM> <697@longway.TIC.COM> <700@longway.TIC.COM>
  3069. Sender: std-unix@longway.tic.com
  3070. Reply-To: mikes@oakhill.sps.mot.com (Mike Schultz)
  3071. Organization: Motorola Inc., Austin, Texas
  3072. Date: 23 May 90 16:31:58 GMT
  3073. Apparently-To: std-unix-archive@uunet.uu.net
  3074.  
  3075. From:  mikes@oakhill.sps.mot.com (Mike Schultz)
  3076.  
  3077. In article <700@longway.TIC.COM> From:  karish@mindcrf.uucp
  3078. >In article <696@longway.TIC.COM> [Doug Gwyn] writes:
  3079. >>Like calling mmap() instead of whatever the POSIX routine is.
  3080. >
  3081. >I hope we don't have to name a new interface every time a new standard
  3082. >restricts or changes the syntax of an old one.  Especially when the
  3083. >old interface is difficult to use portably anyway.
  3084.  
  3085. I can't tell if you are for or against the use of the new interface,
  3086. especially with the comment about the "difficult to use portably anyway"
  3087. comment.
  3088.  
  3089. The reason that the new interface was choosen is this:
  3090.  
  3091. For REAL TIME purposes, shared memory functionality  is very useful, but
  3092. REQUIRING it to map files would be unacceptable for many implementations.  Even
  3093. the suggestion that the file would be on a RAM disk is not acceptable.  The
  3094. application should be able to request the shared memory to be mapped in
  3095. and that is the LAST thing that the operating system should HAVE to do with
  3096. it.
  3097.  
  3098. Thus P1003.4 needed an interface that did not require that files be mapped.
  3099. Mmap was existing practice, but it would have to be gutted in order to
  3100. used it.  It was felt that there was two courses to take here, both of which
  3101. was certain to draw ballot objections.
  3102.  
  3103. The solution choosen was one that was a subset of mmap's functionality, but
  3104. was not the same interface.  This had two advantages:  First, it could be
  3105. implemented with mmap using macros.  Second, if an implementation wished
  3106. to contain a pure shared memory interface, without routing it thru the
  3107. blasted file system, it could do that as well as implementing mmap.
  3108.  
  3109. Anyway, that was the reasoning then.
  3110.  
  3111. Now here are the latest developments.  SVR4 has taken the step of implementing
  3112. mmap without requiring it to be a file.  It states that one is mapping in
  3113. a virtual memory object instead.  It may be possible for the SVR4 wording of
  3114. mmap to be used as existing practice.  There will have to be some functionality
  3115. labeled as implementation defined.
  3116.  
  3117. We'll see how it goes.
  3118.  
  3119. Mike Schultz
  3120. mikes@oakhill.mot.sps.com
  3121.  
  3122. And soon to be 
  3123.  
  3124. ms@RMC.Liant.com
  3125.  
  3126. Volume-Number: Volume 20, Number 16
  3127.  
  3128. From jsq@longway.tic.com  Wed May 30 02:10:49 1990
  3129. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3130.     id AA12041; Wed, 30 May 90 02:10:49 -0400
  3131. Posted-Date: 23 May 90 18:00:57 GMT
  3132. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3133.     id AA16338; Wed, 30 May 90 01:10:42 -0500
  3134. Received: by longway.tic.com (4.22/4.16)
  3135.     id AA13224; Tue, 29 May 90 23:08:24 cdt
  3136. From: Guy Harris <auspex!guy@longway.tic.com>
  3137. Newsgroups: comp.std.unix
  3138. Subject: Re: Tape Driver standards?
  3139. Message-Id: <708@longway.TIC.COM>
  3140. References: <698@longway.TIC.COM>
  3141. Sender: std-unix@longway.tic.com
  3142. Reply-To: std-unix@uunet.uu.net
  3143. Organization: Auspex Systems, Santa Clara
  3144. Date: 23 May 90 18:00:57 GMT
  3145. Apparently-To: std-unix-archive@uunet.uu.net
  3146.  
  3147. From:  guy@auspex.uucp (Guy Harris)
  3148.  
  3149. >I am interested in finding out the current state of standards efforts
  3150. >in regards to tape drivers, specifically:
  3151. >
  3152. >Is there any standard ioctl interface to take advantage of the flexibility 
  3153. >afforded by the SCSI interface?
  3154.  
  3155. There's a *de facto* semi-standard (as in "there are probably retrograde
  3156. systems that do it differently but no better, and are definitely systems
  3157. that don't do it at all"), namely the "ioctl"s provided by 4.xBSD.  They
  3158. don't "take advantage of the flexibility afforded by the SCSI interface"
  3159. in the sense that they let you do stuff that works only on SCSI tapes;
  3160. the "ioctl"s include one to perform "special functions", including
  3161. spacing forwards and backwards by files and by blocks, rewinding,
  3162. rewind-and-unload, etc., but you can do those on non-SCSI tape drives as
  3163. well. 
  3164.  
  3165. >I have heard rumors that AT&T has come up with a proposal (or perhaps a
  3166. >de-facto standard in SVR4), but don't have any details.  Can anyone
  3167. >supply me with some?
  3168.  
  3169. All I know of is that AT&T provides, in the "Berkeley compatibility"
  3170. package, the 4.xBSD (or maybe SunOS 4.x, derived from 4.xBSD) "mt"
  3171. command, and it probably uses the BSD "ioctl"s.  They provide
  3172. <sys/mtio.h> (the include file that defines those "ioctl"s, and the
  3173. commands they perform and data structures they use), but only as part of
  3174. the compatibility package, not as an official part of S5R4.  In fact,
  3175. the S5R4 "BSD/XENIX(R) Compatibility Guide" says, about the "mt"
  3176. command:
  3177.  
  3178.     Both rely in a set of "ioctl"s that are not present in default
  3179.     UNIX System V.  However, users with new or enhanced device
  3180.     drivers may take advantage of this command.
  3181.  
  3182. Which means that, if you want to provide them with your S5 port, you can
  3183. do so; if you're going to provide "ioctl"s of that sort, it's probably
  3184. best to provide the BSD ones or ones based on them.
  3185.  
  3186. >Is there any standard action for what a tape driver should do with
  3187. >internal flags (End-Of-Media, Filemark, etc.) when it receives an ioctl
  3188. >call (like, clear the "DataWritten" flag so filemark writing won't be
  3189. >performed after an ioctl)?
  3190.  
  3191. No official one; the drivers I know of tend to clear the "data written"
  3192. flag after repositioning the tape.
  3193.  
  3194. >Is there any standard defined for what drivers should do with the
  3195. >bp->b_blkno?  Early AT&T drivers (the Kennedy tape drive?) would
  3196. >support block device IO to tapes, and would space the requested number
  3197. >of 512-byte blocks if the b_blkno didn't match the driver's idea of
  3198. >where it was.  So what happens with, say, 5K blocks on a 1/2" tape
  3199. >reel?  Or should the driver just ignore the bp->b_blkno field
  3200. >altogether?
  3201.  
  3202. Some drivers use it, some ignore it.  I wouldn't go out of my way to pay
  3203. attention to it; it makes the driver more complicated and, given the
  3204. problem you note, and the fact that most of the mag tape use I'm
  3205. familiar with involves programs that don't seek around the tape, and the
  3206. fact that seeking on mag tapes is generally rather slow, I doubt it
  3207. actually makes life any better if the driver *does* try to pretend that
  3208. "lseek()" works on a mag tape. 
  3209.  
  3210. Another disadvantage of the block device is that it has to pick some
  3211. arbitrary block size; said block size may not match the block size on
  3212. the tape (unless you're talking tapes like QIC tapes with a standard
  3213. block size), and may also be smaller than you'd like (512-byte blocks,
  3214. which are the default, at least in most non-4.[23]BSD systems, are
  3215. rather silly on 1/2" tapes, for instance).
  3216.  
  3217. >These questions are prompted by the infamous exabyte tape drive.
  3218.  
  3219. The BSD "ioctl"s long antedate Exabytes; they apply to all tapes, and
  3220. make life nicer on all tapes.
  3221.  
  3222. Volume-Number: Volume 20, Number 17
  3223.  
  3224. From jsq@longway.tic.com  Wed May 30 02:11:01 1990
  3225. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3226.     id AA12105; Wed, 30 May 90 02:11:01 -0400
  3227. Posted-Date: 23 May 90 18:59:25 GMT
  3228. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3229.     id AA16346; Wed, 30 May 90 01:10:55 -0500
  3230. Received: by longway.tic.com (4.22/4.16)
  3231.     id AA13295; Tue, 29 May 90 23:12:45 cdt
  3232. From: Susanne Smith <calvin.wa.com!sws@longway.tic.com>
  3233. Newsgroups: comp.std.unix
  3234. Subject: Re: Calendar of UNIX-related Events (NLUUG date)
  3235. Message-Id: <709@longway.TIC.COM>
  3236. References: <702@longway.TIC.COM>
  3237. Sender: std-unix@longway.tic.com
  3238. Reply-To: sws@calvin.wa.com (Susanne Smith)
  3239. Date: 23 May 90 18:59:25 GMT
  3240. Apparently-To: std-unix-archive@uunet.uu.net
  3241.  
  3242. From: sws@calvin.wa.com (Susanne Smith)
  3243.  
  3244. In the recent access postings the date for the Open Systems Conference
  3245. sponsored by the Netherlands UNIX Users Group (NLUUG) is wrong.
  3246. The correct information is:
  3247.  
  3248. 1990 Nov 1      Open Systems C  NLUUG, Ede, Netherlands
  3249.  
  3250. Volume-Number: Volume 20, Number 18
  3251.  
  3252. From jsq@longway.tic.com  Wed May 30 02:11:11 1990
  3253. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3254.     id AA12244; Wed, 30 May 90 02:11:11 -0400
  3255. Posted-Date: 24 May 90 20:54:51 GMT
  3256. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3257.     id AA16363; Wed, 30 May 90 01:11:05 -0500
  3258. Received: by longway.tic.com (4.22/4.16)
  3259.     id AA13468; Tue, 29 May 90 23:26:31 cdt
  3260. From: std-unix@longway.tic.com (Moderator, John S. Quarterman)
  3261. Newsgroups: comp.std.unix
  3262. Subject: Re: Access to UNIX User Groups
  3263. Message-Id: <710@longway.TIC.COM>
  3264. References: <703@longway.TIC.COM>
  3265. Reply-To: std-unix@uunet.uu.net
  3266. Date: 24 May 90 20:54:51 GMT
  3267. Apparently-To: std-unix-archive@uunet.uu.net
  3268.  
  3269. From:  frith.egr.msu.edu!upba!tssi!nolan
  3270.  
  3271. Add to your list the following:
  3272.  
  3273. NUUG - NCR Unix User Group, Inc. (yeah, I know, the initials create a duplicate)
  3274.        C/O Ritter Food Corporation
  3275.        PO Box 216
  3276.        Elizabeth, NJ  07207
  3277.  
  3278.        President:  John Linden   201-558-2700 x2770
  3279.  
  3280.        Annual dues, $50.
  3281.  
  3282. Annual Conference(s):
  3283.        1990 - October 25-26, Columbia, South Carolina
  3284.  
  3285.  
  3286.  
  3287. NUUG is now a member of the Federation of NCR User Groups   (FNUG)
  3288.  
  3289. FNUG Address:  Federation of NCR User Groups
  3290.                Mail Station USG-1
  3291.                Dayton, Ohio  45479
  3292.  
  3293. Annual Conference(s):
  3294.        1990 - October 28-30, Raleigh, South Carolina   (devoted to unix)
  3295.        1991 - (late april), San Antonio, Texas         (some sessions on unix)
  3296.  
  3297. (If you detect some ambivalence about the scheduling of two conferences
  3298. on unix by related groups about 100 miles apart and separated by 1 day, you
  3299. aren't the only one! ;-)
  3300. ------------------------------------------------------------------------------
  3301. Mike Nolan  (NUUG Board Member)                  "I don't know what apathy is,
  3302. Tailored Software Services, Inc.                  and I don't want to find out!"
  3303. Lincoln, Nebraska (402) 423-1490                
  3304. UUCP: tssi!nolan should work, 
  3305.       if not try something like uunet!frith!upba!tssi!nolan 
  3306.  
  3307.  
  3308. Volume-Number: Volume 20, Number 19
  3309.  
  3310. From jsq@longway.tic.com  Wed May 30 02:16:51 1990
  3311. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3312.     id AA13855; Wed, 30 May 90 02:16:51 -0400
  3313. Posted-Date: 28 May 90 14:02:56 GMT
  3314. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3315.     id AA16757; Wed, 30 May 90 01:16:47 -0500
  3316. Received: by longway.tic.com (4.22/4.16)
  3317.     id AA13804; Tue, 29 May 90 23:54:55 cdt
  3318. From: Andy Tanenbaum <cs.vu.nl!ast@longway.tic.com>
  3319. Newsgroups: comp.std.unix
  3320. Subject: ANSI vs POSIX on <sys/types.h>
  3321. Message-Id: <711@longway.TIC.COM>
  3322. Sender: std-unix@longway.tic.com
  3323. Reply-To: std-unix@uunet.uu.net
  3324. Organization: Fac. Wiskunde & Informatica, VU, Amsterdam
  3325. Date: 28 May 90 14:02:56 GMT
  3326. Apparently-To: std-unix-archive@uunet.uu.net
  3327.  
  3328. From:  Andy Tanenbaum <ast@cs.vu.nl>
  3329.  
  3330. We have gone through this before, but I still haven't gotten an unambiguous
  3331. answer.  Let me try a specific example to make it clearer.
  3332.  
  3333. Suppose you want to write a routine raise() that is ANSI conformant and also
  3334. POSIX conformant.  Raise calls the POSIX kill function, so it includes
  3335. <signal.h>.  The <signal.h> header contains the prototype for kill(), which
  3336. uses pid_t, a type defined in <sys/types.h>.  POSIX mandates <sys/types.h>
  3337. but ANSI does not require it.  Thus it is probably not ANSI-legal to put
  3338.  
  3339. #include <sys/types.h>
  3340.  
  3341. in raise(), since an ANSI routine cannot depend on something that ANSI
  3342. doesn't require.  The raise routine would not be portable then, and maybe
  3343. not even conformant.  On the other hand, putting the #include in <signal.h>
  3344. probably isn't legal either, and certainly not portable to non POSIX
  3345. systems.  
  3346.  
  3347. The question is: it has to go somewhere, but where?  I have thought about
  3348. putting it in <signal.h> but protected by #ifdef _POSIX_SOURCE, just as
  3349. the prototype for kill is.  However, our earlier discussion in this group
  3350. suggested that this wasn't legal either.  Does anybody know what the story
  3351. is?
  3352.  
  3353. Andy Tanenbaum (ast@cs.vu.nl)
  3354.  
  3355. Volume-Number: Volume 20, Number 20
  3356.  
  3357. From jsq@longway.tic.com  Wed May 30 14:08:52 1990
  3358. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3359.     id AA13414; Wed, 30 May 90 14:08:52 -0400
  3360. Posted-Date: 30 May 90 12:13:38 GMT
  3361. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3362.     id AA04701; Wed, 30 May 90 13:08:46 -0500
  3363. Received: by longway.tic.com (4.22/4.16)
  3364.     id AA15062; Wed, 30 May 90 12:31:59 cdt
  3365. From: Doug Gwyn <smoke.brl.mil!gwyn@longway.tic.com>
  3366. Newsgroups: comp.std.unix
  3367. Subject: Re: ANSI vs POSIX on <sys/types.h>
  3368. Message-Id: <712@longway.TIC.COM>
  3369. References: <711@longway.TIC.COM>
  3370. Sender: std-unix@longway.tic.com
  3371. Reply-To: std-unix@uunet.uu.net
  3372. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  3373. Date: 30 May 90 12:13:38 GMT
  3374. Apparently-To: std-unix-archive@uunet.uu.net
  3375.  
  3376. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  3377.  
  3378. In article <711@longway.TIC.COM> Andy Tanenbaum <ast@cs.vu.nl> writes:
  3379. >We have gone through this before, but I still haven't gotten an unambiguous
  3380. >answer.  Let me try a specific example to make it clearer.
  3381.  
  3382. I'm sure I've given unambiguous answers.
  3383. The rules are really quite clear and simple.
  3384.  
  3385. >Suppose you want to write a routine raise() that is ANSI conformant and also
  3386. >POSIX conformant.  Raise calls the POSIX kill function, so it includes
  3387. ><signal.h>.  The <signal.h> header contains the prototype for kill(), which
  3388. >uses pid_t, a type defined in <sys/types.h>.  POSIX mandates <sys/types.h>
  3389. >but ANSI does not require it.  Thus it is probably not ANSI-legal to put
  3390. >#include <sys/types.h>
  3391. >in raise(), since an ANSI routine cannot depend on something that ANSI
  3392. >doesn't require.  The raise routine would not be portable then, and maybe
  3393. >not even conformant.  On the other hand, putting the #include in <signal.h>
  3394. >probably isn't legal either, and certainly not portable to non POSIX
  3395. >systems.  
  3396. >The question is: it has to go somewhere, but where?  I have thought about
  3397. >putting it in <signal.h> but protected by #ifdef _POSIX_SOURCE, just as
  3398. >the prototype for kill is.  However, our earlier discussion in this group
  3399. >suggested that this wasn't legal either.  Does anybody know what the story
  3400. >is?
  3401.  
  3402. The above description makes no sense.  The run-time code for raise
  3403. does not "include <signal.h>".  In fact, it must not even (in a
  3404. conventional linkage environment) invoke the POSIX kill() function,
  3405. because the external identifier "kill" is not in the name space
  3406. reserved for ANSI C implementations (and thus is reserved for use
  3407. by programs, with perhaps totally non-POSIX meaning).  It could,
  3408. however, invoke a function named "_kill" or some other such name
  3409. reserved for use by implementations.
  3410.  
  3411. <signal.h> must not define extra garbage such as the kill() interface
  3412. or the POSIX *_t typedefs, except under control of some "feature test
  3413. macro" such as _POSIX_SOURCE.  In the case of the typedefs, I would
  3414. urge that they not be defined as a side effect of #including <signal.h>
  3415. even in the presence of _POSIX_SOURCE.  You don't need pid_t to properly
  3416. declare getpid() or kill() in an implementation; instead, simply use the
  3417. equivalent type derived from basic types (in this case, probably "int").
  3418. Note that this is essential also for the ANSI C declaration of vprintf()
  3419. in <stdio.h>, since the va_* identifiers must NOT be defined as a side
  3420. effect of #including <stdio.h>, so the implementation of <stdio.h> must
  3421. not #include <stdarg.h>.
  3422.  
  3423. On the other hand, the implementation of an ANSI C library routine can
  3424. certainly depend on things not mentioned in the C standard, such as
  3425. for example _kill() and <sys/types.h>.  The following is valid source
  3426. code to implement ANSI C conformant raise() in a hypothetical POSIX
  3427. implementation:
  3428.  
  3429. /*
  3430.     raise() -- send a signal to the current process
  3431.  
  3432.     public-domain implementation
  3433.  
  3434.     last edit:    16-Jan-1990    Gwyn@BRL.MIL
  3435.  
  3436.     complies with the following standards:
  3437.         ANSI X3.159-1989
  3438.         IEEE Std 1003.1-1988
  3439.         SVID Issue 3
  3440.  */
  3441. #define    getpid    _getpid            /* required support for ANSI C */
  3442. #define    kill    _kill            /* required support for ANSI C */
  3443.  
  3444. #include    <sys/types.h>        /* for pid_t */
  3445.  
  3446. extern pid_t    getpid();        /* UNIX/POSIX system call */
  3447. extern int    kill();            /* UNIX/POSIX system call */
  3448.  
  3449. int
  3450. raise(sig)
  3451.     int    sig;
  3452.     {
  3453.     return kill(getpid(), sig);    /* set errno to EINVAL if sig invalid */
  3454.     }
  3455.  
  3456. Volume-Number: Volume 20, Number 21
  3457.  
  3458. From jsq@longway.tic.com  Sun Jun  3 17:25:51 1990
  3459. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3460.     id AA29512; Sun, 3 Jun 90 17:25:51 -0400
  3461. Posted-Date: 3 Jun 90 21:21:41 GMT
  3462. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3463.     id AA09943; Sun, 3 Jun 90 16:25:48 -0500
  3464. Received: by longway.tic.com (4.22/4.16)
  3465.     id AA20945; Sun, 3 Jun 90 16:22:16 cdt
  3466. From: <usenix.org!jsh@longway.tic.com>
  3467. Newsgroups: comp.std.unix
  3468. Subject: Standards Update, IEEE 1003.7: System Administration, Interoperability Subgroup
  3469. Message-Id: <713@longway.TIC.COM>
  3470. Sender: std-unix@longway.tic.com
  3471. Reply-To: std-unix@uunet.uu.net
  3472. Date: 3 Jun 90 21:21:41 GMT
  3473. Apparently-To: std-unix-archive@uunet.uu.net
  3474.  
  3475. From:  <jsh@usenix.org>
  3476.  
  3477.            An Update on UNIX<=-Related Standards Activities
  3478.  
  3479.                                May 1990
  3480.  
  3481.                  USENIX Standards Watchdog Committee
  3482.  
  3483.                    Jeffrey S. Haemer, Report Editor
  3484.  
  3485. IEEE 1003.7: System Administration, Interoperability Subgroup
  3486.  
  3487. Jim R. Oldroyd <jr@inset.com> reports on the April 23-27 meeting in
  3488. Salt Lake City, UT:
  3489.  
  3490. POSIX has given P1003.7 a charter to define both command-line and
  3491. applications-programming interfaces for administering multiple,
  3492. networked machines from a central point.  Most reports on this group
  3493. seem to focus on the group's object-oriented approach: the
  3494. administerable classes the group is defining, their attributes
  3495. (properties) and their operators.  [Editor: Martin Kirk has promised
  3496. us a report on this.  Watch for it soon.]
  3497.  
  3498. Sometimes overlooked in this object-oriented frenzy is another,
  3499. equally important, and perhaps more difficult goal of the group:
  3500. interoperability.
  3501.  
  3502. Imagine, for example, an administrator who wishes to execute an
  3503. operation on some fraction of nodes in a large, heterogeneous network
  3504. of POSIX systems.  The administrator wants to be able to issue the
  3505. request once --  and at his or her own terminal.  The system should
  3506. take care of determining which actual objects are affected and of
  3507. communicating the request to them.
  3508.  
  3509. How should this be done?  The fact that today's networks are
  3510. heterogeneous means that it is not sufficient for vendors simply to
  3511. supply systems with a consistent set of administerable object classes.
  3512. Nor is it enough for vendors to define a consistent set of commands
  3513. and API names that operate on these classes.  On top of this, there
  3514. has to be a consistent language for systems from different vendors to
  3515. communicate with each other in order to tell each other that changes
  3516. have to be made to some of the objects they are supporting.
  3517.  
  3518. The P1003.7 Interoperability subgroup is defining a standard protocol
  3519. for communication with remote objects.
  3520.  
  3521. Currently, we are trying to work out the protocol's requirements.  The
  3522. protocol will have to support varied system-management philosophies.
  3523.  
  3524. __________
  3525.  
  3526.  => UNIX is a registered trademark of AT&T in the U.S. and other
  3527.     countries.
  3528.  
  3529. May 1990 IEEEd1003.7:dSystem Administration, Interoperability Subgroup
  3530.  
  3531.  
  3532.                                 - 2 -
  3533.  
  3534. Some operations, such as re-enabling all PostScript<= printers, should
  3535. be queued and executed independently for each target.  Failure to
  3536. enable one printer does not mean that the other printers should remain
  3537. disabled.  Others operations must be atomic over the domain, for
  3538. example, when adding a user to a set of machines, it is necessary to
  3539. confirm that a UID is available on all target machines before adding
  3540. the user to any machine.
  3541.  
  3542. Each of these problems saddles the protocol with a different
  3543. requirement.  The former case could be handled by broadcasting an
  3544. instruction and collecting success or failure reports later; the
  3545. latter requires a two-phase commit, requesting confirmation that
  3546. successful completion is possible throughout the domain before
  3547. actually mandating the change.
  3548.  
  3549. Do we have to invent a new protocol from scratch?  P1003.7 is actively
  3550. studying existing protocols, such as ISO's CMIP/CMIS and the Internet
  3551. SNMP.  Both of these are existing protocols designed to manage objects
  3552. across multiple systems -- exactly as per P1003.7's needs.  However,
  3553. both of these are actually designed to manage the network itself, and
  3554. it is not clear that they lend themselves to management of things like
  3555. users, printers and filesystems (etc.) properly.  We hope to discover
  3556. whether some existing protocol will fill the bill in the next few
  3557. meetings.
  3558.  
  3559. The Interoperability subgroup of P1003.7 will continue work in this
  3560. area at our next meeting (Danvers, MA, July 16-20).  If you are an
  3561. interested party, we want to hear from you.
  3562.  
  3563. __________
  3564.  
  3565.  => PostScript is a trademark of Adobe Systems, Inc.
  3566.  
  3567. May 1990 IEEEd1003.7:dSystem Administration, Interoperability Subgroup
  3568.  
  3569. Volume-Number: Volume 20, Number 22
  3570.  
  3571. From jsq@longway.tic.com  Sun Jun  3 18:26:02 1990
  3572. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3573.     id AA13468; Sun, 3 Jun 90 18:26:02 -0400
  3574. Posted-Date: 1 Jun 90 15:45:20 GMT
  3575. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3576.     id AA12175; Sun, 3 Jun 90 17:25:59 -0500
  3577. Received: by longway.tic.com (4.22/4.16)
  3578.     id AA21565; Sun, 3 Jun 90 17:39:08 cdt
  3579. From: Andy Tanenbaum <cs.vu.nl!ast@longway.tic.com>
  3580. Newsgroups: comp.std.unix
  3581. Subject: Re: ANSI vs POSIX on <sys/types.h>
  3582. Message-Id: <714@longway.TIC.COM>
  3583. References: <711@longway.TIC.COM> <712@longway.TIC.COM>
  3584. Sender: std-unix@longway.tic.com
  3585. Reply-To: std-unix@uunet.uu.net
  3586. Organization: Fac. Wiskunde & Informatica, VU, Amsterdam
  3587. Date: 1 Jun 90 15:45:20 GMT
  3588. Apparently-To: std-unix-archive@uunet.uu.net
  3589.  
  3590. From:  Andy Tanenbaum <ast@cs.vu.nl>
  3591.  
  3592. In article <712@longway.TIC.COM> Doug Gwyn <gwyn@smoke.brl.mil> writes:
  3593. ><signal.h> must not define extra garbage such as the kill() interface
  3594. >or the POSIX *_t typedefs, except under control of some "feature test
  3595. >macro" such as _POSIX_SOURCE.  In the case of the typedefs, I would
  3596. >urge that they not be defined as a side effect of #including <signal.h>
  3597. >even in the presence of _POSIX_SOURCE.  You don't need pid_t to properly
  3598. >declare getpid() or kill() in an implementation; instead, simply use the
  3599. >equivalent type derived from basic types (in this case, probably "int").
  3600.  
  3601. POSIX specifically defines kill's first argument as type pid_t, so it
  3602. would seem to be poor programming practice to use int, even if this is legal.
  3603. If one replaced the *_t types by their definitions everywhere, then a
  3604. decision to change pid_t from, say, int, to, say, long, would require
  3605. a real expert to dig through all the code to find those int's that really
  3606. are pid_t's.  Maintenance of such code would be exceedingly difficult.
  3607. I think that the only realistic way is to use pid_t in the prototype of 
  3608. kill.  This prototype is required in <signal.h> (protected by
  3609. #ifdef _POSIX_SOURCE).
  3610.  
  3611. This then raises the question of how to make pid_t known.  In the example
  3612. implementation given, <sys/types.h> is included in raise.c.  If this is
  3613. indeed legal, then that is clearly one way to do it, as presumably all the
  3614. names introduced by <sys/types.h> are not present in the object file,
  3615. raise.o, and thus do not pollute the name space.
  3616.  
  3617. However, why do you urge not to put #include <sys/types.h> into <signal.h>
  3618. under protection of #ifdef _POSIX_SOURCE?
  3619.  
  3620. Andy Tanenbaum (ast@cs.vu.nl)
  3621.  
  3622. Volume-Number: Volume 20, Number 23
  3623.  
  3624. From jsq@longway.tic.com  Tue Jun  5 15:22:41 1990
  3625. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3626.     id AA22463; Tue, 5 Jun 90 15:22:41 -0400
  3627. Posted-Date: 1 Jun 90 12:55:40 GMT
  3628. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3629.     id AA00316; Tue, 5 Jun 90 14:22:33 -0500
  3630. Received: by longway.tic.com (4.22/4.16)
  3631.     id AA26801; Tue, 5 Jun 90 14:37:28 cdt
  3632. From: John S. Quarterman <usenix.org!jsq@longway.tic.com>
  3633. Newsgroups: comp.std.unix
  3634. Subject: Changes in IEEE Standards Numbers
  3635. Message-Id: <715@longway.TIC.COM>
  3636. Sender: std-unix@longway.tic.com
  3637. Reply-To: std-unix@uunet.uu.net
  3638. Date: 1 Jun 90 12:55:40 GMT
  3639. Apparently-To: std-unix-archive@uunet.uu.net
  3640.  
  3641. From: John S. Quarterman <jsq@usenix.org>
  3642.  
  3643. The IEEE Computer Society Technical Committee on Operating Systems
  3644. (IEEE/CS TCOS) is the group that sponsors the IEEE 1003 (POSIX),
  3645. IEEE 1201, etc. standards committees related to the UNIX operating
  3646. system.  TCOS (in the form of its Standards Executive Committee, or SEC)
  3647. recently approved a number of requests for work on new documents or for
  3648. the formation of new committees, as has been reported previously in
  3649. this newsgroup.
  3650.  
  3651. These Project Authorization Requests (PARs) then had to be approved by
  3652. the IEEE Standards Board (SB), which met a few weeks ago.  The SB
  3653. usually approves everything TCOS sends them, and in fact did so this
  3654. time.  However, they changed many of the characteristic numbers that
  3655. identify the committees from the numbers that were proposed in the PARs
  3656. and sent to SB by TCOS, and they also changed some of the titles slightly.
  3657.  
  3658. Some sort of revised compendium of the current TCOS-sponsored committees
  3659. will appear in this newsgroup soon, but in the meantime, here is a brief
  3660. list of the specific changes.  The appended information comes from Jim Isaak,
  3661. IEEE/CS TCOS Chair.
  3662.  
  3663. John S. Quarterman <jsq@usenix.org>
  3664. Institutional Representative from USENIX to IEEE/CS TCOS.
  3665.  
  3666.  
  3667. 1003.1a is now 1003.1 (a revision of a standard, takes on the full number)
  3668.  
  3669. 1003.1b is now 1003.1a (because of the elevation of the above item)
  3670.  
  3671. 1003.4b is a revision of 1003.4, and as such is a NEW PAR for 1003.4 !!
  3672.  
  3673. 1003.4c is now 1003.4b (because of the elevation of the above item)
  3674.  
  3675. without a .13 and .15, all those numbered higher have been advanced:
  3676.  
  3677. 1003.14 is now 1003.13 (Bill Corwin gets the lucky number)
  3678.  
  3679. 1003.16 is now 1003.14 (Bob Knighten & co)
  3680.  
  3681. 1003.17 is now 1003.15 (Batch for SC)
  3682.  
  3683. 1238.1 is 1238 (foundation document)
  3684. 1238.2 is now 1238.1 (dependent document)
  3685.  
  3686. title of 1003.2 has had "Part 2:" added (we dropped it by mistake in my office)
  3687.  
  3688. title of 1238 documents has had "PART #" removed in both cases.
  3689.  
  3690. title of 1237 is now .... Application Program Interface for RPC.
  3691.  
  3692. Title of 1003.2a has a comma added "shell and utilities, ..."
  3693.  
  3694. Volume-Number: Volume 20, Number 24
  3695.  
  3696. From jsq@longway.tic.com  Wed Jun  6 15:44:02 1990
  3697. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3698.     id AA05120; Wed, 6 Jun 90 15:44:02 -0400
  3699. Posted-Date: 5 Jun 90 21:38:23 GMT
  3700. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3701.     id AA06278; Wed, 6 Jun 90 14:43:54 -0500
  3702. Received: by longway.tic.com (4.22/4.16)
  3703.     id AA00600; Wed, 6 Jun 90 14:53:59 cdt
  3704. From: Russell J. Abbott <aerospace.aero.org!abbott@longway.tic.com>
  3705. Newsgroups: comp.std.unix
  3706. Subject: Overview/tutorial material on POSIX and GOSIP
  3707. Message-Id: <716@longway.TIC.COM>
  3708. Sender: std-unix@longway.tic.com
  3709. Reply-To: abbott@aerospace.aero.org (Russell J. Abbott)
  3710. Organization: The Aerospace Corporation, El Segundo, CA
  3711. Date: 5 Jun 90 21:38:23 GMT
  3712. Apparently-To: std-unix-archive@uunet.uu.net
  3713.  
  3714. From:  abbott@aerospace.aero.org (Russell J. Abbott)
  3715.  
  3716. We are suddenly in need of tutorial material on POSIX and GOSIP.  The
  3717. material should ideally discuss such things as the kinds of services
  3718. offered, advantages and disadvantages of adoption, timelines of expected
  3719. use and how widespread their adoption is likely to be, etc.  If anyone
  3720. can point to relevant articles, your help would be greatly appreciated.
  3721. Thanks.
  3722.  
  3723. -- Russ Abbott
  3724.  
  3725. Volume-Number: Volume 20, Number 25
  3726.  
  3727. From jsq@longway.tic.com  Wed Jun  6 15:44:25 1990
  3728. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3729.     id AA05201; Wed, 6 Jun 90 15:44:25 -0400
  3730. Posted-Date: 4 Jun 90 17:04:29 GMT
  3731. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3732.     id AA06325; Wed, 6 Jun 90 14:44:21 -0500
  3733. Received: by longway.tic.com (4.22/4.16)
  3734.     id AA00670; Wed, 6 Jun 90 14:59:56 cdt
  3735. From: Doug Gwyn <smoke.brl.mil!gwyn@longway.tic.com>
  3736. Newsgroups: comp.std.unix
  3737. Subject: Re: ANSI vs POSIX on <sys/types.h>
  3738. Message-Id: <717@longway.TIC.COM>
  3739. References: <711@longway.TIC.COM> <712@longway.TIC.COM> <714@longway.TIC.COM>
  3740. Sender: std-unix@longway.tic.com
  3741. Reply-To: std-unix@uunet.uu.net
  3742. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  3743. Date: 4 Jun 90 17:04:29 GMT
  3744. Apparently-To: std-unix-archive@uunet.uu.net
  3745.  
  3746. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  3747.  
  3748. In article <714@longway.TIC.COM> From:  Andy Tanenbaum <ast@cs.vu.nl>
  3749. >If one replaced the *_t types by their definitions everywhere, then a
  3750. >decision to change pid_t from, say, int, to, say, long, would require
  3751. >a real expert to dig through all the code to find those int's that really
  3752. >are pid_t's.
  3753.  
  3754. You miss an important point -- we're talking about system code provided
  3755. by the IMPLEMENTOR, not application code.  Presumably the implementor
  3756. IS a real expert, and furthermore is in charge of the decision about
  3757. what specific typedefs will be used.  I suspect that many implementors
  3758. will provide (for implementation use only) additional headers, say
  3759. <sys/_types.h>, that define identifiers such as __pid_t that are just
  3760. like the POSIX ones but taken from the name space reserved for use by
  3761. implementations.  Then, for example, <sys/types.h> could contain:
  3762.     /* <sys/types.h>: */
  3763.     #include <sys/_types.h>
  3764.     #define pid_t __pid_t
  3765. and <signal.h> could contain:
  3766.     /* <signal.h>: */
  3767.     #include <sys/_types.h>
  3768.     #ifdef _POSIX_SOURCE
  3769.     extern int kill(__pid_t, int);
  3770.     #endif
  3771. which addresses the maintenance issue that the implementor might be
  3772. faced with.  (Applications are oblivious to all this substructure,
  3773. which is the way things SHOULD be.)
  3774.  
  3775. >This then raises the question of how to make pid_t known.  In the example
  3776. >implementation given, <sys/types.h> is included in raise.c.  If this is
  3777. >indeed legal, then that is clearly one way to do it, as presumably all the
  3778. >names introduced by <sys/types.h> are not present in the object file,
  3779. >raise.o, and thus do not pollute the name space.
  3780.  
  3781. Yes, that was one of the points of the example.
  3782.  
  3783. >However, why do you urge not to put #include <sys/types.h> into <signal.h>
  3784. >under protection of #ifdef _POSIX_SOURCE?
  3785.  
  3786. Because I don't think that use of _POSIX_SOURCE should pollute the
  3787. name space beyond the minimum required for POSIX.
  3788.  
  3789. Volume-Number: Volume 20, Number 26
  3790.  
  3791. From jsq@longway.tic.com  Fri Jun  8 01:45:54 1990
  3792. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3793.     id AA28272; Fri, 8 Jun 90 01:45:54 -0400
  3794. Posted-Date: 7 Jun 90 15:21:45 GMT
  3795. Received: from longway.UUCP by cs.utexas.edu (5.61/1.62)
  3796.     id AA25089; Fri, 8 Jun 90 00:45:50 -0500
  3797. Received: by longway.tic.com (4.22/4.16)
  3798.     id AA02995; Thu, 7 Jun 90 23:39:36 cdt
  3799. From: Karl Heuer <IMA.IMA.ISC.COM!karl@longway.tic.com>
  3800. Newsgroups: comp.std.unix
  3801. Subject: Re: ANSI vs POSIX on <sys/types.h>
  3802. Message-Id: <719@longway.TIC.COM>
  3803. References: <711@longway.TIC.COM> <712@longway.TIC.COM> <714@longway.TIC.COM> <717@longway.TIC.COM>
  3804. Sender: std-unix@longway.tic.com
  3805. Reply-To: karl@IMA.IMA.ISC.COM (Karl Heuer)
  3806. Organization: Interactive Systems, Cambridge, MA 02138-5302
  3807. Date: 7 Jun 90 15:21:45 GMT
  3808. Apparently-To: std-unix-archive@uunet.uu.net
  3809.  
  3810. From:  karl@IMA.IMA.ISC.COM (Karl Heuer)
  3811.  
  3812. In article <717@longway.TIC.COM> From:  Doug Gwyn <gwyn@smoke.brl.mil>
  3813. >In article <714@longway.TIC.COM> From:  Andy Tanenbaum <ast@cs.vu.nl>
  3814. >>However, why do you urge not to put #include <sys/types.h> into <signal.h>
  3815. >>under protection of #ifdef _POSIX_SOURCE?
  3816. >
  3817. >Because I don't think that use of _POSIX_SOURCE should pollute the
  3818. >name space beyond the minimum required for POSIX.
  3819.  
  3820. In an earlier thread in this newsgroup, it was decided that this is in fact a
  3821. requirement of POSIX.  (Clarified in the Supplement, I believe.)  If the user
  3822. himself has not included <sys/types.h>, then the name `pid_t' is not reserved
  3823. to the implementation, and so it falls in the user's namespace.
  3824.  
  3825. Karl W. Z. Heuer (karl@ima.ima.isc.com or harvard!ima!karl), The Walking Lint
  3826.  
  3827. Volume-Number: Volume 20, Number 27
  3828.  
  3829. From jsq@tic.com  Fri Jun 15 02:54:22 1990
  3830. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3831.     id AA03271; Fri, 15 Jun 90 02:54:22 -0400
  3832. Posted-Date: 12 Jun 90 20:48:41 GMT
  3833. Received: by cs.utexas.edu (5.61/1.63)
  3834.     id AA12582; Fri, 15 Jun 90 01:15:10 -0500
  3835. Received: by longway.tic.com (4.22/tic.1.2)
  3836.     id AA06131; Thu, 14 Jun 90 23:17:29 cdt
  3837. From: Bob Lenk <rml@hpfcdc.fc.hp.com>
  3838. Newsgroups: comp.std.unix
  3839. Subject: Re: ANSI vs POSIX on <sys/types.h>
  3840. Message-Id: <720@longway.TIC.COM>
  3841. References: <719@longway.TIC.COM>
  3842. Sender: std-unix@tic.com
  3843. Reply-To: std-unix@uunet.uu.net
  3844. Date: 12 Jun 90 20:48:41 GMT
  3845. Apparently-To: std-unix-archive@uunet.uu.net
  3846.  
  3847. From:  Bob Lenk <rml@hpfcdc.fc.hp.com>
  3848.  
  3849. In article <719@longway.TIC.COM> karl@IMA.IMA.ISC.COM (Karl Heuer) writes:
  3850.  
  3851. > In an earlier thread in this newsgroup, it was decided that this is in fact a
  3852. > requirement of POSIX.  (Clarified in the Supplement, I believe.)  If the user
  3853. > himself has not included <sys/types.h>, then the name `pid_t' is not reserved
  3854. > to the implementation, and so it falls in the user's namespace.
  3855.  
  3856. It is worth pointing out that official interpretations of an IEEE
  3857. standard can only be issued by the IEEE.  Discussions in this newsgroup
  3858. (including this posting) can be very informative and useful, but they do
  3859. not decide the meaning of the standard.  In fact, there has been an
  3860. official request for an interpretation in this area, and I understand
  3861. the interpretation being issued is that all namespace reserved for the
  3862. implementation by the 1003.1-1988 standard is reserved whenever any
  3863. header mentioned in the standard is #included with _POSIX_SOURCE
  3864. #defined.
  3865.  
  3866. Draft 5 of the 1003.1a revision (actually 1003.1-199x) makes some changes
  3867. in this area, but clearly reserves names ending in _t when any POSIX.1
  3868. header is included.
  3869.  
  3870.         Bob Lenk
  3871.         rml@hpfcla.hp.com
  3872.         hplabs!hpfcla!rml
  3873.  
  3874. Volume-Number: Volume 20, Number 28
  3875.  
  3876. From jsq@tic.com  Fri Jun 15 03:01:00 1990
  3877. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3878.     id AA05237; Fri, 15 Jun 90 03:01:00 -0400
  3879. Posted-Date: 11 Jun 90 11:42:35 GMT
  3880. Received: by cs.utexas.edu (5.61/1.63)
  3881.     id AA12602; Fri, 15 Jun 90 01:15:21 -0500
  3882. Received: by longway.tic.com (4.22/tic.1.2)
  3883.     id AA06239; Thu, 14 Jun 90 23:24:34 cdt
  3884. From: Chuck.Phillips <Chuck.Phillips@FtCollins.NCR.COM>
  3885. Newsgroups: comp.std.unix
  3886. Subject: Re: Common Reference Ballot
  3887. Message-Id: <721@longway.TIC.COM>
  3888. References: <689@longway.TIC.COM> <692@longway.TIC.COM> <696@longway.TIC.COM>
  3889. Sender: std-unix@tic.com
  3890. Reply-To: std-unix@uunet.uu.net
  3891. Organization: NCR Microelectronics, Ft. Collins, CO
  3892. Date: 11 Jun 90 11:42:35 GMT
  3893. Apparently-To: std-unix-archive@uunet.uu.net
  3894.  
  3895. From:  Chuck.Phillips@FtCollins.NCR.COM (Chuck.Phillips)
  3896.  
  3897.  
  3898. >>>>> On 23 May 90 16:31:58 GMT, mikes@oakhill.sps.mot.com (Mike Schultz) said:
  3899. Mike> For REAL TIME purposes, shared memory functionality  is very useful, but
  3900. Mike> REQUIRING it to map files would be unacceptable for many implementations.
  3901.  
  3902. It *seems* to me that directly implementing mmap() with SVr4 semantics
  3903. under VMS, AGEIS (and of course Multics :-) would be possible.  UNIX
  3904. appears to be the late comer with shared memory.  Am I missing something?
  3905.  
  3906. Mike> ...
  3907.  
  3908. Mike> Now here are the latest developments.  SVR4 has taken the step of
  3909. Mike> implementing mmap without requiring it to be a file.  It states that one
  3910. Mike> is mapping in a virtual memory object instead.  It may be possible for
  3911. Mike> the SVR4 wording of mmap to be used as existing practice.  There will
  3912. Mike> have to be some functionality labeled as implementation defined.
  3913.  
  3914. Regarding IPC and mmap():
  3915.  
  3916. If I understand the SVr4 implementation of mmap() correctly, it is only
  3917. possible to share write enabled memory between processes if mmap()ing a
  3918. file system file, but not possible using "anonymous" (a.k.a. swap) memory.
  3919. Is it possible, and if it is possible, are you restricted to sharing
  3920. anonymous memory between parent and child processes due to lack of a
  3921. file system handle?
  3922.  
  3923. In any case, is (or are there plans for) one of the POSIX groups to address
  3924. mmap() (or whatever it will be called) specificly as a method of IPC?  It
  3925. appears SVr4 shared memory (shmat(), et al) offers little mmap() does not
  3926. (or couldn't easily be added, like handles).
  3927.  
  3928. Sorry if this posting is redundant.  We only recently started recieving a
  3929. full comp.* feed.
  3930.  
  3931.     Thanks in advance,
  3932. --
  3933. Chuck Phillips  MS440
  3934. NCR Microelectronics             Chuck.Phillips%FtCollins.NCR.com
  3935. Ft. Collins, CO.  80525           uunet!ncrlnk!ncr-mpd!bach!chuckp
  3936.  
  3937. Volume-Number: Volume 20, Number 29
  3938.  
  3939. From jsq@tic.com  Wed Jun 20 01:58:46 1990
  3940. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3941.     id AA10618; Wed, 20 Jun 90 01:58:46 -0400
  3942. Posted-Date: 18 Jun 90 20:01:40 GMT
  3943. Received: by cs.utexas.edu (5.61/1.63)
  3944.     id AA13382; Wed, 20 Jun 90 00:58:43 -0500
  3945. Received: by longway.tic.com (4.22/tic.1.2)
  3946.     id AA13243; Tue, 19 Jun 90 20:24:42 cdt
  3947. From: Gordon Spoelhof <spoelhof@newkodak.kodak.com>
  3948. Newsgroups: comp.std.unix
  3949. Subject: The FEDERAL MODEL
  3950. Message-Id: <722@longway.TIC.COM>
  3951. Sender: std-unix@tic.com
  3952. Reply-To: kodak.com!nobody@cs.utexas.edu
  3953. Organization: Eastman Kodak Co.
  3954. Date: 18 Jun 90 20:01:40 GMT
  3955. Apparently-To: std-unix-archive@uunet.uu.net
  3956.  
  3957. From:  spoelhof@newkodak.kodak.com (Gordon Spoelhof)
  3958.  
  3959. A few years ago, Al Hankerson of NIST gave a talk on Open Systems.  In it
  3960. he refenced the "FEDERAL MODEL" which seemed to be roughly equivalent to the
  3961. X/OPEN model.  Can anyone direct me to where I can find out more about the
  3962. Federal model - how it relates to other efforts (GOSSIP, POSIX, etc); how
  3963. it affects FIPS; and how it relates to X/OPEN...
  3964.  
  3965. Thanks in advance,
  3966.  
  3967. Gordon Spoelhof
  3968. Computer Technology Consultant
  3969. Eastman Kodak Co. - Information Technology Management
  3970.  
  3971. Disclaimer:        "Neither my wife nor my employer endorse opinion according
  3972.                    to Gordi..."
  3973.  
  3974. Internet:          spoelhof@Kodak.COM
  3975. Telephone:         716-781-5576
  3976. Secretary:         716-724-1365 (Sharon Hancock)
  3977. FAX:               716-781-5799
  3978. US Mail:           Gordon Spoelhof
  3979.                    CIS/ITM 2-9-KO
  3980.                    Eastman Kodak Co
  3981.                    343 State Street
  3982.                    Rochester, NY 14650-0724
  3983.  
  3984. Volume-Number: Volume 20, Number 30
  3985.  
  3986. From jsq@tic.com  Wed Jun 20 01:59:50 1990
  3987. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3988.     id AA10886; Wed, 20 Jun 90 01:59:50 -0400
  3989. Posted-Date: 17 Jun 90 10:49:17 GMT
  3990. Received: by cs.utexas.edu (5.61/1.63)
  3991.     id AA13627; Wed, 20 Jun 90 00:59:44 -0500
  3992. Received: by longway.tic.com (4.22/tic.1.2)
  3993.     id AA13834; Tue, 19 Jun 90 22:16:25 cdt
  3994. From: Dominic Dunlop <domo@the-standard-answer.co.uk>
  3995. Newsgroups: comp.unix.questions,comp.lang.perl,comp.std.unix
  3996. Subject: Re: Regular Expression tool
  3997. Keywords: POSIX, 1003.2, regular expression
  3998. Message-Id: <725@longway.TIC.COM>
  3999. References: <1990Jun8.174056.15313@icc.com> <8353@jpl-devvax.JPL.NASA.GOV>
  4000. Sender: std-unix@tic.com
  4001. Reply-To: tsa.co.uk!domo@cs.utexas.edu
  4002. Followup-To: comp.unix.questions
  4003. Organization: The Standard Answer Ltd.
  4004. Date: 17 Jun 90 10:49:17 GMT
  4005. Apparently-To: std-unix-archive@uunet.uu.net
  4006.  
  4007. From:  Dominic Dunlop <domo@tsa.co.uk>
  4008.  
  4009. Note Followup-To: above.  Post elsewhere iff you think appropriate.
  4010.  
  4011. In article <1990Jun8.174056.15313@icc.com> wdm@icc.com (Bill Mulert) writes:
  4012. : ... I would
  4013. : like to have a tool, call it regex, that would allow me to say:
  4014. : regex ' "^[^=]*=\(.*\)\" '
  4015. : and have regex say, in plain language, what the expression means.
  4016.  
  4017. In article <8353@jpl-devvax.JPL.NASA.GOV> lwall@jpl-devvax.JPL.NASA.GOV
  4018. (Larry Wall) writes:
  4019. >It's not likely to be too practical, for a couple of reasons.
  4020. >
  4021. >First, there a number of different standards out there.  For instance,
  4022. >sed and expr use \( ... \) to indicate grouping, while egrep and perl
  4023. >use ( ... ) for grouping, and \( and \) to indicate real parens...
  4024.  
  4025. We interrupt this posting for a word from our Sponsor Executive
  4026. Committee.  But seriously, the 1003.2 working group for the Shell and
  4027. Tools has at least documented the sh*t out of both ``Basic Regular
  4028. Expressions'' (as in ed) and Extended Regular Expressions (egrep) (and
  4029. perl, not that the thought of getting their claws (clauses?) into perl
  4030. seems yet to have occired to standards people).  The result of 1003.2
  4031. should be no obvious functional change in your favourite RE-using
  4032. utility, but rather the clearing up of what should happen in any number
  4033. of limiting cases around their edges.  (Actually, there are wide
  4034. ranging and useful functional extensions, which add yet more
  4035. hieroglyphic syntax: [=, =], [: and :] become special.  These
  4036. character pairs were chosen so as to minimise the danger of breaking
  4037. existing REs.)  The availability of a rigorous definition of REs and
  4038. EREs should make easier the work of anybody who wants to write a RE to
  4039. English translator.  (1003.2 could be considerably mor rigorous if it
  4040. used formal techniques, but let's leave that for another year or few.)
  4041.  
  4042. >  On top of that, when are ?, +, |, { and } metacharacters?  They
  4043. >are in some programs, and aren't in others.  Are you going to have a
  4044. >switch?
  4045. >
  4046. >    regex -sed   ' "^[^=]*=\(.*\)\" ' # In 1003.2
  4047. >    regex -expr  ' "^[^=]*=\(.*\)\" ' # In 1003.2
  4048. >    regex -egrep ' "^[^=]*=\(.*\)\" ' # In 1003.2
  4049. >    regex -ed    ' "^[^=]*=\(.*\)\" ' # In 1003.2
  4050. >    regex -perl  ' "^[^=]*=\(.*\)\" ' # Not 1003.2 territory
  4051. >    regex -emacs ' "^[^=]*=\(.*\)\" ' # Not 1003.2 territory
  4052. >    regex -vi    ' "^[^=]*=\(.*\)\" ' # In 1003.2 User Portability
  4053.                       #   Extension
  4054.  
  4055. Probably, even with 1003.2: the precise details of RE syntax vary between
  4056. utilities, as those who worked on the standard usually opted in favour of
  4057. documenting existing practice, even when the temptation to fix things was
  4058. strong.  Of course, to conform to 1003.2's command line syntax rules, usage
  4059. would have to be
  4060.  
  4061.     regex -t sed; regex -t expr      # or similar...
  4062. >
  4063. >Second, your big problem is not so much the regular expressions themselves
  4064. >as it is all the quoting you have to put around them because of the paucity of
  4065. >quoting mechanisms.  Take your first example:
  4066. >
  4067. >    echo "`expr \"$1\" : \"^[^=]*=\(.*\)\"`"
  4068. >
  4069. And so on, at rightly frustrated length.
  4070.  
  4071. One of several features which the 1003.2 definition of the shell lifts from
  4072. the korn shell is the construct
  4073.  
  4074.     $(command)
  4075.  
  4076. as a preferred alternative to the now-deprecated
  4077.  
  4078.     `command`
  4079.  
  4080. (It's stuff like this which has vendors jumping up and down, complaining
  4081. that they'll actually have to do some work before they can conform to the
  4082. standard.)  The new construct does cut down on the number and depth of
  4083. backslashes needed in... er... more interesting shell commands.  Although
  4084. my fingers still fly for the backslashes, even though I normally use a
  4085. korn shell...
  4086.  
  4087. >Unix is not a simple language.
  4088.  
  4089. I guess it's that way because it was designed to be easy for simple
  4090. computers to understand.
  4091. -- 
  4092. Dominic Dunlop
  4093.  
  4094.  
  4095. Volume-Number: Volume 20, Number 31
  4096.  
  4097. From uucp@tic.com  Thu Jun 21 18:02:12 1990
  4098. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  4099.     id AA26630; Thu, 21 Jun 90 18:02:12 -0400
  4100. Posted-Date: 21 Jun 90 19:47:14 GMT
  4101. Received: by cs.utexas.edu (5.64/1.63)
  4102.     id AA11445; Thu, 21 Jun 90 17:02:06 -0500
  4103. Received: by longway.tic.com (4.22/tic.1.2)
  4104.     id AA18884; Thu, 21 Jun 90 16:36:44 cdt
  4105. From: <jsh@usenix.org>
  4106. Newsgroups: comp.std.unix
  4107. Subject: Standards Update, IEEE 1003.12: PII
  4108. Message-Id: <375@usenix.ORG>
  4109. Sender: std-unix@usenix.ORG
  4110. Reply-To: std-unix@uunet.uu.net
  4111. Date: 21 Jun 90 19:47:14 GMT
  4112. Apparently-To: std-unix-archive@uunet.uu.net
  4113.  
  4114. From:  <jsh@usenix.org>
  4115.  
  4116.  
  4117.            An Update on UNIX*-Related Standards Activities
  4118.  
  4119.                                May 1990
  4120.  
  4121.                  USENIX Standards Watchdog Committee
  4122.  
  4123.                    Jeffrey S. Haemer, Report Editor
  4124.  
  4125. IEEE 1003.12: PII
  4126.  
  4127. Andy Nicholson <droid@earth.cray.com> reports on the April 23-27
  4128. meeting in Salt Lake City, UT:
  4129.  
  4130. Introduction
  4131.  
  4132. For starters, we've had some significant turnover.  [Editor:
  4133. Including, you'll note, Steve Head, our former, fine dot 12 snitch.
  4134. Thanks for diving in, Andy.] We are now down to five participants who
  4135. were present a year ago, are on our third AT&T representative, and an
  4136. HP representative has permanently left the working group.  Despite all
  4137. this, the group is beginning to make rapid advances on both the
  4138. Simplified (SNI) and Detailed (DNI) network interfaces.  This
  4139. meeting's progress is sketched below.
  4140.  
  4141. Overview of the Work We're Doing
  4142.  
  4143. The dot 12 committee is working on three projects: Simplified Network
  4144. interface (SNI), Detailed Network Interface (DNI), and Data
  4145. Representation Interface (DRI).  Work on DRI is being delayed until
  4146. SNI and DNI are well along.  DNI is a protocol-independent interface
  4147. to network services that allows access to protocol-dependent features
  4148. in a protocol-independent manner.  DNI is meant to provide a complete
  4149. interface to everything you might expect to be able to do with
  4150. networking services.  DNI is comparable to Berkeley Sockets or AT&T's
  4151. TLI, and we plan that anything that can be accomplished with those
  4152. interfaces will be subsumed by DNI.
  4153.  
  4154. The idea behind SNI is that many applications will not require
  4155. ``detailed'' access to networking services.  SNI gives a ``stdio''
  4156. type of interface for networking that combines common groupings of
  4157. procedures, eliminates access protocol-dependent features, and is just
  4158. plain easier to use.  Applications that use SNI aren't necessarily
  4159. simple, they just don't need DNI's detailed access to networking
  4160. services.
  4161.  
  4162. __________
  4163.  
  4164.   * UNIX is a registered trademark of AT&T in the U.S. and other
  4165.     countries.
  4166.  
  4167. May 1990 Standards Update                            IEEE 1003.12: PII
  4168.  
  4169.                 - 2 -
  4170.  
  4171. Simple Network Interface
  4172.  
  4173. We started the week discussing the SNI interface.  Norm Smith, from
  4174. Unisys, had intended to bring an alternate SNI proposal to this
  4175. meeting, but his group at Unisys decided to work with the current one.
  4176. Irene Hu, from DEC, says she may yet offer an alternate proposal.
  4177.  
  4178. I presented a paper, prepared from previous minutes, which gathered up
  4179. some deferred issues relating to SNI and we resolved some of them.
  4180. For example, we added some explicit goals for SNI that everyone seemed
  4181. to have accepted implicitly, but were never made official.
  4182.  
  4183. We also considered creating a formal definition of SNI functionality,
  4184. to help us determine whether any particular function should be
  4185. included, but decided it would be more efficient to keep deliberating
  4186. each case individually.  We'll record the rationale for each as part
  4187. of the standard document to help us avoid and respond to ballot
  4188. objections.
  4189.  
  4190.    + SNI functionality
  4191.      A paper by Tim Kirby (who works with me at Cray Research)
  4192.      prompted the group to redefine a function call.  Sni_recv(), was
  4193.      defined to discard excess data in a datagram when the buffer
  4194.      offered by an application isn't large enough.  The new version of
  4195.      Sni_recv(), allows an application either to discard excess data
  4196.      or to perform multiple sni_recv() calls to read it all.  It also
  4197.      allows applications to discard datagrams without reading them at
  4198.      all.  Here, I think the group has noticeably extended the power
  4199.      of the interface without sacrificing efficiency.
  4200.  
  4201.    + Kernel objects
  4202.      Because SNI endpoints may not be kernel objects, we need to
  4203.      define semantics and interfaces that will allow SNI endpoints to
  4204.      survive exec().  Unfortunately, we disagree on the semantics of
  4205.      the endpoint-preservation procedures.  Should multiple copies of
  4206.      the same endpoint exist in different processes' address spaces,
  4207.      as happens with fork() and exec()?  Implementing the protocol
  4208.      stack in a user library creates multiple copies of state
  4209.      information for the same endpoint, and it may be impossible to
  4210.      keep them synchronized.
  4211.  
  4212.      Some of us (Keith Sklower, from Berkeley, the author of the SNI
  4213.      document, and I) want to restrict endpoint semantics so that only
  4214.      one process may have a copy of an SNI endpoint; others (Irene and
  4215.      Norm) disagree and wish to allow multiple copies of SNI endpoints
  4216.      where the programmer wishes.
  4217.  
  4218. May 1990 Standards Update                            IEEE 1003.12: PII
  4219.  
  4220.                 - 3 -
  4221.  
  4222. Detailed Network Interface
  4223.  
  4224. We discussed DNI procedures in detail for the first time and found
  4225. tentative agreement on most of the many issues raised.  Mike Karels,
  4226. from Berkeley's Computer Science Research Group, presented an outline
  4227. of required functionality.  After discussing it, we agreed to make DNI
  4228. endpoints POSIX file descriptors (as returned by open()) until we see
  4229. a compelling counter-argument.  I'll challenge you to offer one.
  4230.  
  4231. On Wednesday, Irene gave an overview of XTI.  During the presentation,
  4232. Torez Hiley, our new attendee from ATT, told us that XTI is being
  4233. revised: input from vendors using the Berkeley socket interface is
  4234. prompting the addition of many features.  Torez will report on the
  4235. upcoming revision at the July meeting.  Where sockets and XTI/TLI
  4236. differ, the best solution is not clear.  Moreover, some features are
  4237. absent or inadequately supported in both interfaces.  Here, we have a
  4238. lot of work to do and are just getting started.  We're eager to hear
  4239. whether the new XTI solves any of our problems.
  4240.  
  4241. May 1990 Standards Update                            IEEE 1003.12: PII
  4242.  
  4243.  
  4244. Volume-Number: Volume 20, Number 32
  4245.  
  4246. From uucp@tic.com  Thu Jun 21 18:02:29 1990
  4247. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  4248.     id AA26744; Thu, 21 Jun 90 18:02:29 -0400
  4249. Posted-Date: 21 Jun 90 19:57:52 GMT
  4250. Received: by cs.utexas.edu (5.64/1.63)
  4251.     id AA11487; Thu, 21 Jun 90 17:02:19 -0500
  4252. Received: by longway.tic.com (4.22/tic.1.2)
  4253.     id AA18902; Thu, 21 Jun 90 16:37:43 cdt
  4254. From: <jsh@usenix.org>
  4255. Newsgroups: comp.std.unix
  4256. Subject: Standards Update, IEEE 1003.4: Real-time Extensions
  4257. Message-Id: <376@usenix.ORG>
  4258. Sender: std-unix@usenix.ORG
  4259. Reply-To: std-unix@uunet.uu.net
  4260. Date: 21 Jun 90 19:57:52 GMT
  4261. Apparently-To: std-unix-archive@uunet.uu.net
  4262.  
  4263. From:  <jsh@usenix.org>
  4264. From:  <jsh@usenix.org>
  4265.  
  4266.  
  4267.            An Update on UNIX*-Related Standards Activities
  4268.  
  4269.                               June 1990
  4270.  
  4271.                  USENIX Standards Watchdog Committee
  4272.  
  4273.                    Jeffrey S. Haemer, Report Editor
  4274.  
  4275. IEEE 1003.4: Real-time Extensions
  4276.  
  4277. John Gertwagen <jag@ism.isc.com> reports on the April 23-27 meeting in
  4278. Salt Lake City, UT:
  4279.  
  4280. 1.  Administrivia
  4281.  
  4282. P1003 met in Salt Lake City this time.  Actually, it was at Snowbird
  4283. Lodge, south of and well above the city.  It was spring in Salt Lake
  4284. but still winter in the mountains.  (Wish I skied.) The real-time
  4285. meetings drew 68 people the first day, and averaged around 40 all
  4286. week.  If some skiers hadn't deserted each day, we would have had
  4287. more.
  4288.  
  4289. 2.  .4 Balloting
  4290.  
  4291. Over 200 people joined the balloting group for P1003.4, Draft 9.  The
  4292. first ballot closed in mid-March and 75% of balloters returned their
  4293. ballots within a day or two of the official deadline, setting a new
  4294. record!  43% of these voted ``Yes'' on the first round, about average
  4295. for POSIX ballots.
  4296.  
  4297. Lack of time and logistics problems meant little ballot feedback by
  4298. meeting-time, (shame on those who didn't submit their ballots
  4299. electronically!) but a few issues surfaced.  Several objected to
  4300. having binary semaphores only in the path namespace and not also in
  4301. shared memory, where they could use simple test-and-set calls, and not
  4302. time-consuming system calls.  There's value providing a common
  4303. interface for both of these and for other ``synchronization objects.''
  4304.  
  4305. There were also objections to having ``events'' when there are
  4306. ``fixed'' signals in System V, Release 4.  The technical reviewer for
  4307. events will try to make SVR4 signals meet real-time requirements.
  4308. (Not too long ago, there were strong objections to changing signals.
  4309. There may still be protests over adding real-time-required
  4310. determinism.)
  4311.  
  4312. __________
  4313.  
  4314.   * UNIX is a registered trademark of AT&T in the U.S. and other
  4315.     countries.
  4316.  
  4317. June 1990 Standards Update           IEEE 1003.4: Real-time Extensions
  4318.  
  4319.  
  4320.                 - 2 -
  4321.  
  4322. 3.  Current Work
  4323.  
  4324. With .4 in limbo, the working group got on with Threads (.4a),
  4325. Language Independent Bindings (.4b), and Real-time Application
  4326. Environment Profiles (.14).  Threads got the most attention.
  4327. (Surprised?) Despite this, or perhaps because of it, the other two
  4328. drafts saw significant progress.
  4329.  
  4330. Rick Greer has reviewed a lot of the threads work, so I'll briefly
  4331. mention what's going on in .4b and .14, give you some personal views
  4332. on threads, and then amplify on areas where our editor, Jeff Haemer,
  4333. was recently raked over the coals.
  4334.  
  4335. 4.  AEP
  4336.  
  4337. At first, the real-time AEP small group had some trouble focusing.
  4338. They've identified two fairly easy targets, essentially minimum and
  4339. maximum configurations, and now seek proposals for intermediate
  4340. specifications.
  4341.  
  4342. In Utah, the group came up with a fairly complete specification for
  4343. embedded systems, and reviewed it with P1003.0 --  the POSIX Guide
  4344. group that is the driving force in defining AEP's.  One interesting
  4345. issue surfaced during the review: for embedded systems, the AEP group
  4346. wants to exclude interfaces of .4 and .1 that aren't needed!  Dot zero
  4347. hadn't thought of that before.  Resolving this should set an
  4348. interesting precedent.
  4349.  
  4350. 5.  Language-Independent Bindings
  4351.  
  4352. The people doing this have it down to a science, so the large group
  4353. has largely left them alone.  Most of their work is converting things
  4354. to ``normal'' form, which is mostly tabular, and throwing away the
  4355. stuff that is language-dependent.  They made good use of their time,
  4356. cranking through a good bit of the .4 draft.
  4357.  
  4358. 6.  Threads (P1003.4a)
  4359.  
  4360. The meeting saw two new proposals.  Both suggested fruitful changes to
  4361. the current Pthreads work, but neither was accepted as a new base for
  4362. the current draft.
  4363.  
  4364. John Zolnowsky of Sun Microsystems submitted one counter-proposal,
  4365. called ``strands'' because ``threads'' was already taken.  It was an
  4366. attempt to limit the scope of the interfaces and keep thread semantics
  4367. closer to process semantics.  Thus, it would have done away with
  4368. mutexes and conditions, leaving synchronization to be accomplished
  4369. through .4 binary semaphores, presumably modified to have inter-
  4370.  
  4371. June 1990 Standards Update           IEEE 1003.4: Real-time Extensions
  4372.  
  4373.  
  4374.                 - 3 -
  4375.  
  4376. thread, not just inter-process semantics.  It also proposed more
  4377. process-like exit semantics and a version of per-thread signaling.
  4378. The consensus on the strands proposal seems to have been that it was
  4379. too minimal.
  4380.  
  4381. In contrast, the VP (Virtual Processor) proposal, by Paul Borman of
  4382. Cray Research, proposed significant ``incremental'' functionality in
  4383. the form of a lower-level, virtual-processor interface for use by the
  4384. multi-processing and parallel processing communities.  (For those
  4385. familiar with Mach, it is roughly to Pthreads as cthreads is to
  4386. Cthreads.) Features of the VP proposal included:
  4387.  
  4388.    + fork() and exec() semantics for VPs
  4389.  
  4390.    + per-VP signal semantics
  4391.  
  4392.    + locks and events for synchronization
  4393.  
  4394.    + no ordering or scheduling constraints
  4395.  
  4396. The group had several concerns about VP
  4397.  
  4398.    + Could it support real-time requirements without ordering and
  4399.      scheduling constraints?
  4400.  
  4401.    + Could the Pthreads constraints be implemented on top of a layer
  4402.      that didn't support them?
  4403.  
  4404.    + Would the interfaces be used by applications or by system
  4405.      implementors?
  4406.  
  4407.    + Would an application using both Pthreads and VP interfaces
  4408.      encounter analogous problems to those caused by read()s and an
  4409.      fread()s on the same file?
  4410.  
  4411.    + Would standard interfaces for locks and events, implemented in
  4412.      hardware on many systems, constrain or encourage hardware
  4413.      development?
  4414.  
  4415.    + Would the standard benefit either the user or vendor community?
  4416.  
  4417.    + How soon could the proposal be completed and gain enough of the
  4418.      MP community's consensus to go to ballot?
  4419.  
  4420. Perhaps the deciding factor, though, was that the multi-processing AEP
  4421. group (P1003.16) started meeting officially at Snowbird.  [Editor:
  4422. Watch for the snitch report, coming soon.] A majority of our group
  4423. (including me) felt that MP-specific standards should grow from
  4424. requirements identified by .16, not be created on the fly by the
  4425. real-time working group.
  4426.  
  4427. June 1990 Standards Update           IEEE 1003.4: Real-time Extensions
  4428.  
  4429.  
  4430.                 - 4 -
  4431.  
  4432. In areas that are still not pinned down, the group made progress
  4433. towards a better-defined cancellation mechanism, towards a ``signals
  4434. compromise'' that improves on one hurriedly forged at the previous
  4435. meeting, and towards more process-like exit semantics.  The consensus
  4436. was that we should try to accommodate and specify per-thread signal
  4437. state.  Although there are a few strong supporters, a majority did not
  4438. feel that specification of per-thread signals is essential to a
  4439. standard.
  4440.  
  4441. Paul Borman of Cray Research will present a proposal on this at the
  4442. next meeting.  I'll be interested to see what Paul comes up with.
  4443. With three state elements, (mask, pending signals, and action vector)
  4444. and at least three signal delivery types (one, some, all), I can
  4445. create many implementation models and corresponding application
  4446. architectures.  It may prove easy to construct a plausible model, but
  4447. hard to construct one that 40 engineers can agree to live with for a
  4448. long time!  I suspect a portable application can assume nothing more
  4449. than ``exactly one signal gets delivered exactly once to exactly one
  4450. handler.'' (Looks an awful lot likes signals to a process, doesn't
  4451. it?)
  4452.  
  4453. The biggest progress in the meetings was wide consensus achieved for
  4454. the current threads proposal.  The working group resolved many of the
  4455. remaining threads issues, and we let Bill Corwin tell IEEE/ISO that we
  4456. expect to ballot P1003.4a in July, after the next meeting.
  4457.  
  4458. 7.  OSF and UI Cooperating?
  4459.  
  4460. Our editor's recent editorial stirred up a hornet's nest.  (It wasn't
  4461. so much what Jeff said as what he implied.) In his follow-up posting,
  4462. he said I'd speak about the joint meetings in more detail.  I didn't
  4463. really want to but he twisted my arm, so here goes.
  4464.  
  4465. The UI MP Working Group and OSF have been cooperating since the middle
  4466. of last year.  I happen to work for a company that belongs to both,
  4467. INTERACTIVE Systems Corporation, and though I haven't been to all of
  4468. the joint meetings, I've attended them off and on since last November
  4469. (which is I think, when they started).  Those I have attended focused
  4470. on finding solutions to interface/semantic problems that both OSF and
  4471. UI can endorse and that P1003.4 would probably endorse as well.
  4472. Although these meetings haven't been advertised I've seen at least one
  4473. article about OSF/UI/ATT negotiations that mentioned their cooperation
  4474. in the MP arena.  And the meetings have been open.  At least one non-
  4475. member has shown up uninvited, and was not asked to leave.
  4476.  
  4477. Now, it's no secret that several Pthreads-proposal initiators
  4478. (instigators?) work for OSF sponsors.  Since the Pthreads-proposal was
  4479. advanced before OSF adopted Mach, it's hard to say whether OSF
  4480. influenced the P1003.4 work or the other way around.  Also, in several
  4481. instances, OSF/UI members have voted personal opinions contrary to the
  4482. OSF/UI consensus established at the joint meetings.
  4483.  
  4484. June 1990 Standards Update           IEEE 1003.4: Real-time Extensions
  4485.  
  4486.  
  4487.                 - 5 -
  4488.  
  4489. What's the point?  The joint meetings contribute to the quality of the
  4490. ..4a work, but they don't drive it.  I think the work in P1003.4 is
  4491. pushing vendors to find multi-threading solutions faster than they
  4492. would have on their own.  It's an example of POSIX pushing emerging
  4493. technologies, not just creating standards.  There's even a chance that
  4494. ..4a will create a standard multi-threading interface before millions
  4495. of installed, heterogeneous systems force the standard to a lowest
  4496. common denominator or to incorporate a particular implementation's
  4497. garbage.
  4498.  
  4499. And POSIX is playing another role  --  uniting the industry.  I
  4500. believe Sun's tooth-and-nail fights with AT&T in P1003.1 led to their
  4501. current cooperation.  Maybe the collaboration of OSF and UI on threads
  4502. will also bring more unity to the industry.
  4503.  
  4504. 8.  The relationship between .4 and .4a
  4505.  
  4506. Despite what some think, the threads small group has never had any
  4507. official status.  Interest and participation in the threads effort
  4508. goes far beyond the small group, or even the .4 working group into
  4509. other POSIX committees.  Some history may clear this up.
  4510.  
  4511. Lightweight processes (i.e., threads) have been on P1003.4's list of
  4512. potential work items since its formation.  About 3 years ago, the
  4513. working group voted not to pursue them because they were not clearly
  4514. needed and the technology was not sufficiently mature.
  4515.  
  4516. About a year and a half ago, threads resurfaced as an item of interest
  4517. to the real-time users, and also to Ada, Transaction Processing, and
  4518. RPC working groups.  A small band of ``experts'' went off to draft a
  4519. proposal.  Since P1003.4 was an active system-interfaces committee and
  4520. the real-time user community wanted a threads proposal, a lot of hard
  4521. work culminated last summer in Minneapolis in a threads proposal being
  4522. accepted as an additional chapter for the .4 draft.
  4523.  
  4524. There are 12 other interface proposals in the .4 draft.  Some have
  4525. been mature for nearly two years, (some with broad consensus, others
  4526. without), others are still relatively wet behind the ears.  Still, all
  4527. the interfaces are relatively complete (sometimes too complete?), and
  4528. in November, when it seemed appropriate to send .4 to ballot, At the
  4529. Milpitas meeting, the P1003.4 working group decided to include the
  4530. threads chapter in the ballot for comment only, and sought and
  4531. obtained authorization to turn the threads work into a separate work
  4532. item for the P1003.4 working group.
  4533.  
  4534. After the Pthreads proposal was accepted into .4, the small group of
  4535. people whose primary interest was threads spent all their time on
  4536. threads.  Meanwhile many other .4 members time-shared all the other .4
  4537.  
  4538. June 1990 Standards Update           IEEE 1003.4: Real-time Extensions
  4539.  
  4540.  
  4541.                 - 6 -
  4542.  
  4543. activities.  Because the Pthreads supporters were so focused, they
  4544. sometimes seemed like a separate group.  (Some in the small group
  4545. might have been surprised to learn they weren't.  It takes a while to
  4546. understand the POSIX bureaucracy.) Nevertheless, though they may not
  4547. always have appeared to represent the entire working group, the
  4548. Pthreads proposal now enjoys wide consensus.  Apparently, the small
  4549. group has listened well to the interests of the working group and the
  4550. POSIX community.
  4551.  
  4552. At Snowbird, there wasn't a threads small group, there were seven of
  4553. them!  These small groups examined how the current and the alternative
  4554. proposals addressed:
  4555.  
  4556.    + thread management
  4557.  
  4558.    + synchronization
  4559.  
  4560.    + signals/asynch events
  4561.  
  4562.    + cancellation
  4563.  
  4564.    + thread-specific data
  4565.  
  4566.    + re-entrant functions
  4567.  
  4568.    + process control
  4569.  
  4570. After reviewing all the issues, we discovered a consensus in most of
  4571. these areas, and fairly strong agreement on most issues in the three
  4572. or four groups that are still needed.  It looks like things are pretty
  4573. well on target.
  4574.  
  4575. I'm partially responsible for pushing .4a in before .4 was done, so
  4576. I'm partially responsible for the process's not always appearing fair
  4577. or well organized.  I'll take my share of the blame.  But I'll also
  4578. take my share of the credit for progress in a technology that I
  4579. believe to be important for real-time and for the entire POSIX
  4580. community.
  4581.  
  4582. June 1990 Standards Update           IEEE 1003.4: Real-time Extensions
  4583.  
  4584. Volume-Number: Volume 20, Number 33
  4585.  
  4586. From uucp@tic.com  Thu Jun 21 18:02:47 1990
  4587. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  4588.     id AA26860; Thu, 21 Jun 90 18:02:47 -0400
  4589. Posted-Date: 21 Jun 90 20:06:46 GMT
  4590. Received: by cs.utexas.edu (5.64/1.63)
  4591.     id AA11531; Thu, 21 Jun 90 17:02:41 -0500
  4592. Received: by longway.tic.com (4.22/tic.1.2)
  4593.     id AA18922; Thu, 21 Jun 90 16:38:51 cdt
  4594. From: <jsh@usenix.org>
  4595. Newsgroups: comp.std.unix
  4596. Subject: Standards Update, IEEE 1003.3: Test Methods
  4597. Message-Id: <377@usenix.ORG>
  4598. Sender: std-unix@usenix.ORG
  4599. Reply-To: std-unix@uunet.uu.net
  4600. Date: 21 Jun 90 20:06:46 GMT
  4601. Apparently-To: std-unix-archive@uunet.uu.net
  4602.  
  4603. From:  <jsh@usenix.org>
  4604.  
  4605.            An Update on UNIX*-Related Standards Activities
  4606.  
  4607.                               June, 1990
  4608.  
  4609.                  USENIX Standards Watchdog Committee
  4610.  
  4611.                    Jeffrey S. Haemer, Report Editor
  4612.  
  4613. IEEE 1003.3: Test Methods
  4614.  
  4615. Doris Lebovits <lebovits@attunix.att.com> reports on the April 23-27
  4616. meeting in Salt Lake City, UT:
  4617.  
  4618. Dot three's job is to do test methods for all of the other 1003
  4619. standards.  The group's work, whose first parts are now in ballot,
  4620. specifies the requirements for OS conformance testing for our industry
  4621. and for NIST.  This makes what the balloting group and technical
  4622. reviewers are doing, and their schedules, worth watching.  Pay
  4623. attention, also, to what comes out of the Steering Committee on
  4624. Conformance Testing (SCCT).  Their projects and decisions will be
  4625. interesting and important.
  4626.  
  4627. This was the working group's sixteenth meeting.  As usual, we reviewed
  4628. the ballot status of P1003.1 test methods, worked on P1003.2 test
  4629. methods, and reviewed steering committee activities.  As before, each
  4630. morning we did technical reviews of parts I and II; afternoons were
  4631. spent writing assertions for part III.  Participants from the usual
  4632. companies attended.  (AT&T, NIST, OSF, Mindcraft, IBM, DEC, HP, Data
  4633. General, Cray Research, Unisys, Perennial, and Unisoft Ltd.)
  4634.  
  4635. Document structure and some new PARs
  4636.  
  4637. Currently, our evolving document has two parts: Part I is generic test
  4638. methods; Part II is test methods for measuring P1003.1 conformance,
  4639. including test assertions; and Part III contains test methods and
  4640. assertions for measuring P1003.2 conformance.  (As other P1003
  4641. standards evolve, they will become separate activities in the working
  4642. group's schedule.)
  4643.  
  4644. After the ballot, each part will become a separate standard.  Part I
  4645. will be published as IEEE P1003.3; Part II as IEEE P1003.3.1; and Part
  4646. III as IEEE P1003.3.2.  To this end, we developed and submitted three
  4647. new PARs to the Standards Executive Committee (SEC).  The PAR for
  4648. P1003.3 lets Part I apply to all TCOS standards (i.e., POSIX).  The
  4649. PAR for P1003.3.1 lets Part II include test methods for P1003.1 and
  4650. P1003.1a.  The PAR for P1003.3.2 lets Part III include test methods
  4651. for P1003.2.
  4652.  
  4653. __________
  4654.  
  4655.   * UNIX is a registered trademark of AT&T in the U.S. and other
  4656.     countries.
  4657.  
  4658. June, 1990 Standards Update                  IEEE 1003.3: Test Methods
  4659.  
  4660.  
  4661.                 - 2 -
  4662.  
  4663. Ballot status
  4664.  
  4665. Draft 11 of the current ballot, which was re-circulated to the
  4666. (approximately) ninety-member balloting group late in February, closed
  4667. balloting March 23.  Of the 65 respondents, 29 approved, 17
  4668. disapproved, and 19 abstained.  This meets the two-thirds response
  4669. requirement, but falls short of the needed two-thirds approval.
  4670. Another re-circulation will probably take place in Fall, 1990.
  4671.  
  4672. P1003.2 verification
  4673.  
  4674. This was our fourth meeting working on a verification standard for the
  4675. P1003.2 standard.  The assertion writing and review were done in small
  4676. groups.  Some of the assertions were based upon P1003.2 Draft 9.  This
  4677. group needs help from the P1003.2 working group in writing test
  4678. assertions, but no formal arrangement is in place yet to provide it.
  4679.  
  4680. Officers for the P1003.2 Test Methods activities are: Ray Wilkes
  4681. (Unisys), Chair; Lowell Johnson (Unisys) Secretary; and Andrew Twigger
  4682. (Unisoft Ltd), Technical Editor.
  4683.  
  4684. Steering Committee on Conformance Testing (SCCT)
  4685.  
  4686. The test-methods steering committee is supposed to alleviate the
  4687. increasing dot-three work load all the other, proliferating groups are
  4688. creating.  Their job is coordinating the activities of all test-
  4689. methods groups, monitoring their conformance to test methods, and
  4690. writing Project Authorization Requests (PARs).  Currently, its members
  4691. are Roger Martin (NIST, Steering Committee Chair), Anita Mundkur (HP),
  4692. Andrew Twigger (Unisoft Ltd), Bruce Weiner (Mindcraft), and Lowell
  4693. Johnson (Unisys), but membership will be dynamic, Right now, this
  4694. committee is documenting procedures.  Roger Martin is also clarifying
  4695. which standards the working group will address.  The Technical
  4696. Reviewers will review this work sometime before the next meeting.
  4697.  
  4698. June, 1990 Standards Update                  IEEE 1003.3: Test Methods
  4699.  
  4700.  
  4701. Volume-Number: Volume 20, Number 34
  4702.  
  4703. From uucp@tic.com  Thu Jun 21 18:03:02 1990
  4704. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  4705.     id AA26982; Thu, 21 Jun 90 18:03:02 -0400
  4706. Posted-Date: 21 Jun 90 20:17:50 GMT
  4707. Received: by cs.utexas.edu (5.64/1.63)
  4708.     id AA11544; Thu, 21 Jun 90 17:02:52 -0500
  4709. Received: by longway.tic.com (4.22/tic.1.2)
  4710.     id AA18940; Thu, 21 Jun 90 16:39:41 cdt
  4711. From: <jsh@usenix.org>
  4712. Newsgroups: comp.std.unix
  4713. Subject: Standards Update, IEEE 1003.2: Shell and tools
  4714. Message-Id: <378@usenix.ORG>
  4715. Sender: std-unix@usenix.ORG
  4716. Reply-To: std-unix@uunet.uu.net
  4717. Date: 21 Jun 90 20:17:50 GMT
  4718. Apparently-To: std-unix-archive@uunet.uu.net
  4719.  
  4720. From:  <jsh@usenix.org>
  4721.  
  4722.            An Update on UNIX*-Related Standards Activities
  4723.  
  4724.                               June 1990
  4725.  
  4726.                  USENIX Standards Watchdog Committee
  4727.  
  4728.                    Jeffrey S. Haemer, Report Editor
  4729.  
  4730. IEEE 1003.2: Shell and tools
  4731.  
  4732. Randall Howard <rand@mks.com> reports on the April 23-27 meeting in
  4733. Salt Lake City, UT:
  4734.  
  4735. Background on POSIX.2
  4736.  
  4737. The POSIX.2 standard deals with the shell programming language and
  4738. utilities.  Currently, it is divided into two pieces:
  4739.  
  4740.    + POSIX.2, the base standard, deals with the basic shell
  4741.      programming language and a set of utilities required for
  4742.      application portability.  Application portability essentially
  4743.      means portability of shell scripts and thus excludes most
  4744.      features that might be considered interactive.  In an analogy to
  4745.      the ANSI C standard, the POSIX.2 shell command language is the
  4746.      counterpart to the C programming language, while the utilities
  4747.      play, roughly, the role of the C library.  POSIX.2 also
  4748.      standardizes command-line and function interfaces related to
  4749.      certain POSIX.2 utilities (e.g., popen, regular expressions,
  4750.      etc.) This document is also known as ``Dot 2 Classic.''
  4751.  
  4752.    + POSIX.2a, the User Portability Extension or UPE, is a supplement
  4753.      to the base POSIX.2 standard; it will eventually be an optional
  4754.      chapter of a future draft of the base document.  The UPE
  4755.      standardizes commands, such as screen editors, that might not
  4756.      appear in shell scripts but are important enough that users must
  4757.      learn them on any real system.  It is essentially an interactive
  4758.      standard that attempts to reduce retraining costs incurred by
  4759.      system-to-system variation.
  4760.  
  4761.      Some utilities, have interactive as well as non-interactive
  4762.      features.  In such cases, the UPE defines extensions from the
  4763.      base POSIX.2 utility.  An example is the shell, for which the UPE
  4764.      defines job control, history, and aliases.  Features used both
  4765.      interactively and in scripts tend to be defined in the base
  4766.      standard.
  4767.  
  4768. __________
  4769.  
  4770.   * UNIX is a registered trademark of AT&T in the U.S. and other
  4771.     countries.
  4772.  
  4773. June 1990 Standards Update                IEEE 1003.2: Shell and tools
  4774.  
  4775.  
  4776.                 - 2 -
  4777.  
  4778. Together Dot 2 Classic and the UPE will make up the International
  4779. Standards Organization's IS 9945/2 - the second volume of the proposed
  4780. ISO four-volume standard related to POSIX.
  4781.  
  4782. In addition to providing current information about the activities of
  4783. the Working and Balloting Groups for POSIX.2, a special topic of focus
  4784. will be chosen for each report.  Therefore, the reader is referred to
  4785. earlier reports for information on such topics as the history of the
  4786. Shell Wars and the controversial scope of the UPE.  The next section
  4787. talks about the functions, rather than utilities, that are found with
  4788. POSIX.2.
  4789.  
  4790. The POSIX.2 API Functions
  4791.  
  4792. Perhaps it will come as a surprise to many readers that the POSIX
  4793. Shell and Utilities standard also contains specifications for about
  4794. fourteen new or extended C function bindings -- in effect, its own API
  4795. extending the POSIX.1 bindings -- as follows:
  4796.  
  4797.   confstr(), sysconf() The first function was created to provide
  4798.             string-valued, configuration-specific values such as the
  4799.             default setting of the PATH environment variable.  The
  4800.             second extends the POSIX.1 function of the same name with
  4801.             numeric-valued configuration information such as the
  4802.             largest scale value in the bc utility and the
  4803.             implementation's line length restriction.
  4804.  
  4805.   fnmatch() This functional interface implements the form of pattern
  4806.             matching used by file-name generation (glob) in the shell,
  4807.             case statements in the shell, and the -name option of the
  4808.             find utility.
  4809.  
  4810.   getopt()  This functional interface provides a standard utility
  4811.             argument parser that enforces the ``standard utility
  4812.             syntax'' guidelines and might be used to implement the
  4813.             getopts utility from POSIX.2.
  4814.  
  4815.   glob(), globfree() This set of functions does shell-style file-name
  4816.             generation and presumably calls the fnmatch() function.
  4817.  
  4818.   popen(), pclose() This pair of functions, which is a part of the
  4819.             standard I/O package on conventional UNIX systems,
  4820.             provides the ability to communicate through pipes to
  4821.             another process by executing a string in the POSIX.2 shell
  4822.             language.
  4823.  
  4824.   regexec(), regcomp() This set of routines provides support for both
  4825.             the Basic and Extended Regular Expressions defined in
  4826.             POSIX.2, including full internationalization support.
  4827.  
  4828. June 1990 Standards Update                IEEE 1003.2: Shell and tools
  4829.  
  4830.  
  4831.                 - 3 -
  4832.  
  4833.   wordexp(), wordfree() This set of routines provides a mechanism for
  4834.             an application to use word expansion (parameter expansion)
  4835.             that is compatible with the POSIX.2 shell language.
  4836.             Although most implementations of this routine will
  4837.             normally call the shell, it is (at least conceptually)
  4838.             possible that the shell be implemented to call these
  4839.             routines for word expansion.
  4840.  
  4841.   system()  This ``classical'' function executes a command written in
  4842.             shell language.
  4843.  
  4844. All of these functions form part of an optional C binding to POSIX.2
  4845. and it is expected that the soon-to-be-released, draft version of the
  4846. NIST FIPS will make this ``optional'' functional interface mandatory
  4847. for US government procurements.  Other language-binding working
  4848. groups, such as those exploring Ada and FORTRAN, are presumably
  4849. encouraged to add their own optional bindings if they so wish.
  4850.  
  4851. Although the inclusion of these functions seems to be a little out of
  4852. place in a shell-and-tools standard, there is some rationale for this.
  4853. In fact, when POSIX consisted only of POSIX.1, the early attempts to
  4854. define system() and popen() made apparent the need to completely
  4855. specify the shell language in which the argument string to these
  4856. functions was written.  That, in turn, along with the desire to
  4857. standardize the classical UNIX utility set, led to the creation of
  4858. POSIX.2 as the first offshoot group in the POSIX family of standards.
  4859. From this beginning, the POSIX.1 sysconf() function was extended and
  4860. the confstr() function was created to provide an underlying
  4861. implementation for the getconf utility, which allowed shell-level
  4862. applications to query configuration-specific values such as maximum
  4863. line length of text files.  Once the beachhead of having functional
  4864. interfaces in POSIX.2 was established, the temptation to continually
  4865. add to this list has led to the current list as of Draft 9.
  4866.  
  4867. On the other hand, there are some very strong arguments against the
  4868. inclusion of these functions.  First, although the regular expression
  4869. functions will almost certainly be required to implement many POSIX.2
  4870. utilities such as ed, grep, awk, sed, etc., these functions stop short
  4871. of the complete support needed to implement some utilities.  For
  4872. example, the handling of error messages (as in a syntactically
  4873. incorrect regular expression) and the mechanisms of doing
  4874. substitutions (including & and \n support) are not addressed.  Because
  4875. of this most implementors will be required to have ``non-portable,''
  4876. proprietary extensions to their regular expression support to make a
  4877. ``commercially-viable'' implementation.  The issue of where to ``draw
  4878. the line'' between inclusion and exclusion is a difficult one indeed.
  4879. Second, vendors and application writers may find it difficult, both
  4880. procedurally and from a licensing perspective, to have part of the
  4881. subroutine library come from a POSIX.1 developer and the other part
  4882. implemented by the POSIX.2 implementor.  For example, the implementor
  4883. of sysconf(), popen(), or system() might do a much better job if
  4884.  
  4885. June 1990 Standards Update                IEEE 1003.2: Shell and tools
  4886.  
  4887.  
  4888.                 - 4 -
  4889.  
  4890. common source code and assumptions were possible between the POSIX.1
  4891. and POSIX.2 APIs.
  4892.  
  4893. Status of POSIX.2 Balloting
  4894.  
  4895. ``Dot 2 Classic'' remains in its second round of balloting on Draft 9
  4896. with a new draft going to ballot in the June-to-July time frame,
  4897. according to Hal Jespersen the POSIX.2 Technical Editor.
  4898.  
  4899. During the Snowbird meeting, much of Monday was devoted to a
  4900. presentation on the status of the Dot 2 Classic Balloting resolution.
  4901. It is possible, and indeed likely, that Hal Jespersen will limit
  4902. balloting on Draft 10 to unresolved objections and new material.  If
  4903. this is the case, it most likely indicates (although he didn't
  4904. specifically say) that Hal has confidence that Draft 10 has a high
  4905. probability of achieving the requisite 75% affirmative vote.
  4906. Personally, I am not convinced that this is a likely event.  While
  4907. some decisions will be reversed (perhaps several times) before Draft
  4908. 10, the following is a summary of issues and/or changes appearing in
  4909. Draft 10:
  4910.  
  4911.    + The internationalization utilities locale and particularly
  4912.      localedef are still controversial, particularly within AT&T.
  4913.      Because of the strong rationale for their existence it appears
  4914.      that they will remain in Draft 10, certainly with considerable
  4915.      amendment as the UniForum Technical Committee on
  4916.      Internationalization refines these newly developed utilities.
  4917.      This is just one case where the conflict between the role of
  4918.      standards to codify existing practice and the obvious holes in
  4919.      existing practice creates controversy.  Perhaps this issue will
  4920.      be resolved by a balloting referendum such as was used for uucp.
  4921.  
  4922.    + The Draft 10 shell will almost certainly strongly resemble that
  4923.      of Draft 9.  Most of the important controversies appear to be
  4924.      largely settled and most changes appear to be corrections and
  4925.      clarifications.
  4926.  
  4927.    + Most complex utilities, such as awk, shell, lex, yacc, etc., have
  4928.      undergone extensive reworking in response to ballot objections.
  4929.      Often a seemingly simple objection will cause large parts of the
  4930.      description to be rewritten in order to tighten it up with
  4931.      respect to completeness and clarity.  I believe that Hal
  4932.      Jespersen believes that most of these changes are uncontroversial
  4933.      and he has ensured this by circulating draft sections via E-mail
  4934.      to various ``experts.'' Certainly, many of these utilities
  4935.      desperately needed this clarification.
  4936.  
  4937.    + It appears that the newly-engineered hexdump utility is to be
  4938.      replaced by a (much simpler) reversion to od.  While od is the
  4939.      existing practice, the POSIX od will be a superset of the
  4940.      original one with most useful functionality in the new parts.  It
  4941.  
  4942. June 1990 Standards Update                IEEE 1003.2: Shell and tools
  4943.  
  4944.  
  4945.                 - 5 -
  4946.  
  4947.      is not clear that hiding new invention under the same name is any
  4948.      less controversial than advertising its existence.
  4949.  
  4950.    + Of course, there will be innumerable other changes, obviously
  4951.      important to many, that cannot for reasons of space be covered
  4952.      here.
  4953.  
  4954. A mock ballot on Draft 4 of the UPE was sent to the working group
  4955. during February 1990 to allow ballot resolution to be the main focus
  4956. of the Salt Lake meeting this April.
  4957.  
  4958. Status of the New Orleans Meeting
  4959.  
  4960. Monday, the working group reviewed the current status of the balloting
  4961. on ``Dot 2 Classic''.  This has already been discussed in earlier in
  4962. this report.
  4963.  
  4964. The other four days were spent reviewing the 600 to 700 objections
  4965. produced by the mock balloting process for the UPE.  While the number
  4966. of objections seems low compared to the rate of objections for the
  4967. corresponding number of pages in Dot 2 Classic, this may simply be a
  4968. symptom of a general shortage of time and the lower number of people
  4969. (generally 15 to 20) in the UPE working group.  This lower number and
  4970. general lack of time, is a reflection of the fragmentation of the
  4971. entire POSIX process caused by a proliferation of working groups.
  4972.  
  4973. Most of the work during mock balloting was of the nature of cleaning
  4974. up incomplete or poorly worded textual descriptions.  Particularly
  4975. controversial issues were often left in the rationale for Draft 5.
  4976. Some controversial utilities were moved to an appendix based upon the
  4977. belief that they should be removed while still allowing the balloting
  4978. group one last chance to save them.  The lint89 was one such utility
  4979. whose raison d'etre was meager.  At best, the functionality probably
  4980. should be an option to c89 in the ``Dot 2 Classic'' document.  The
  4981. sdiff utility which was inadvertently omitted from Draft 4, is to be
  4982. included in Draft 5.
  4983.  
  4984. Altogether, it appears that Draft 5 is in a relatively healthy state
  4985. to survive the rigors of the balloting process.  None the less, I
  4986. expect that there will be a greater number of objections in the
  4987. balloting this summer than there were in the mock ballot.
  4988.  
  4989. June 1990 Standards Update                IEEE 1003.2: Shell and tools
  4990.  
  4991.  
  4992. Volume-Number: Volume 20, Number 35
  4993.  
  4994. From jsq@tic.com  Fri Jun 22 01:58:32 1990
  4995. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  4996.     id AA15962; Fri, 22 Jun 90 01:58:32 -0400
  4997. Posted-Date: 21 Jun 90 17:29:22 GMT
  4998. Received: by cs.utexas.edu (5.64/1.63)
  4999.     id AA07782; Fri, 22 Jun 90 00:16:59 -0500
  5000. Received: by longway.tic.com (4.22/tic.1.2)
  5001.     id AA19374; Thu, 21 Jun 90 23:33:35 cdt
  5002. From: Steve Emmerson <steve@unidata.ucar.edu>
  5003. Newsgroups: comp.std.unix,comp.unix.questions
  5004. Subject: POSIX equivalent to <sys/file.h> or <fcntl.h>
  5005. Message-Id: <727@longway.TIC.COM>
  5006. Sender: std-unix@tic.com
  5007. Reply-To: std-unix@uunet.uu.net
  5008. Followup-To: comp.unix.questions
  5009. Organization: University Corporation for Atmospheric Research (UCAR)
  5010. Date: 21 Jun 90 17:29:22 GMT
  5011. Apparently-To: std-unix-archive@uunet.uu.net
  5012.  
  5013. From:  steve@unidata.ucar.edu (Steve Emmerson)
  5014.  
  5015. Would some please tell me what header file (or files) is the POSIX-
  5016. equivalent to the BSD <sys/file.h> or the System V <fcntl.h>.
  5017.  
  5018. I have the P1003.1 document on order, but it will take 4 to 6 weeks to
  5019. arrive and I need to get on with my work.
  5020.  
  5021. Thanks in advance.
  5022.  
  5023. (If someone would send me a general header-file mapping, that would be 
  5024. great!)
  5025.  
  5026. Steve Emmerson        steve@unidata.ucar.edu        ...!ncar!unidata!steve
  5027.  
  5028. Volume-Number: Volume 20, Number 36
  5029.  
  5030. From jsq@tic.com  Fri Jun 22 13:51:38 1990
  5031. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5032.     id AA08050; Fri, 22 Jun 90 13:51:38 -0400
  5033. Posted-Date: 22 Jun 90 00:21:27 GMT
  5034. Received: by cs.utexas.edu (5.64/1.63)
  5035.     id AA22292; Fri, 22 Jun 90 12:51:34 -0500
  5036. Received: by longway.tic.com (4.22/tic.1.2)
  5037.     id AA20745; Fri, 22 Jun 90 12:39:46 cdt
  5038. From: <ficc!peter@cs.utexas.edu>
  5039. Newsgroups: comp.std.unix
  5040. Subject: Re: Standards Update, IEEE 1003.2: Shell and tools
  5041. Message-Id: <728@longway.TIC.COM>
  5042. References: <378@usenix.ORG>
  5043. Sender: std-unix@tic.com
  5044. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  5045. Organization: Xenix Support, FICC
  5046. Date: 22 Jun 90 00:21:27 GMT
  5047. Apparently-To: std-unix-archive@uunet.uu.net
  5048.  
  5049. From:  peter@ficc.uucp
  5050.  
  5051. In article <378@usenix.ORG> std-unix@uunet.uu.net writes:
  5052. >   getopt()  This functional interface provides a standard utility
  5053. >             argument parser that enforces the ``standard utility
  5054. >             syntax'' guidelines and might be used to implement the
  5055. >             getopts utility from POSIX.2.
  5056.  
  5057. Might it not be time to "push the envelope" as 1003.4 has done, and specify
  5058. Eric Allman's far superior "parseargs" interface? Getopt really doesn't do
  5059. that much: a command line parser using getopt is only slightly simpler than
  5060. one assembled completely out of a nested loop, and it doesn't do anything
  5061. to help generate usage messages and the like... with the result that usage
  5062. messages that are out of date are not that uncommon, even in system programs.
  5063.  
  5064. Parseargs also helps by providing a system-independent interface, more so
  5065. if you use my extended version of the unix driver routine. That way folks
  5066. who work in other environments will be encouraged to produce programs that
  5067. follow the P1003.2 interface when compiled under POSIX... and POSIX programs
  5068. will fit well into VAX/VMS, MS-DOS, etc...
  5069. -- 
  5070. Peter da Silva.   `-_-'
  5071. +1 713 274 5180.
  5072. <peter@ficc.ferranti.com>
  5073.  
  5074. Volume-Number: Volume 20, Number 37
  5075.  
  5076. From uucp@tic.com  Fri Jun 22 20:43:01 1990
  5077. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5078.     id AA17291; Fri, 22 Jun 90 20:43:01 -0400
  5079. Posted-Date: 22 Jun 90 19:22:41 GMT
  5080. Received: by cs.utexas.edu (5.64/1.63)
  5081.     id AA22512; Fri, 22 Jun 90 19:42:51 -0500
  5082. Received: by longway.tic.com (4.22/tic.1.2)
  5083.     id AA22387; Fri, 22 Jun 90 16:48:19 cdt
  5084. From: <jsh@usenix.org>
  5085. Newsgroups: comp.std.unix
  5086. Subject: Standards Update, IEEE 1003.5: Ada bindings
  5087. Message-Id: <379@usenix.ORG>
  5088. Sender: std-unix@usenix.ORG
  5089. Reply-To: std-unix@uunet.uu.net
  5090. Date: 22 Jun 90 19:22:41 GMT
  5091. Apparently-To: std-unix-archive@uunet.uu.net
  5092.  
  5093. From:  <jsh@usenix.org>
  5094.  
  5095.  
  5096.            An Update on UNIX*-Related Standards Activities
  5097.  
  5098.                               June 1990
  5099.  
  5100.                  USENIX Standards Watchdog Committee
  5101.  
  5102.                    Jeffrey S. Haemer, Report Editor
  5103.  
  5104. IEEE 1003.5: Ada bindings
  5105.  
  5106. Jayne Baker <cgb@d74sun.mitre.org> reports on the April 23-27 meeting
  5107. in Salt Lake City, UT:
  5108.  
  5109. Overview
  5110.  
  5111. The Utah meeting was the group's first since our October meeting in
  5112. Brussels.  In the interim, we had completed a mock ballot of Draft
  5113. 4.0.  Jim Lonjers of Unisys, one of our two co-chairs, managed the
  5114. effort.  The document was mailed out to reviewers on December 1, 1989
  5115. and comments were due January 19, 1990.  Although only 16% of the
  5116. ballots were returned, the high quality of the comments received made
  5117. the mock ballot a success.  Ted Baker, of Florida State University,
  5118. hosted a special meeting in Tallahassee, March 19 - 23, to resolve
  5119. issues and comments; the result was draft 4.1.  We did not attend the
  5120. January, New Orleans meeting because balloters lacked sufficient time
  5121. to review and return comments prior to the meeting, though some
  5122. members came to attend other groups' meetings.
  5123.  
  5124. Our main goal in Utah was to prepare the Ada Language Binding Document
  5125. for IEEE and ISO Ballot.  We addressed the few, unresolved technical
  5126. issues from mock ballot; read draft 4.1 cover-to-cover, for accuracy
  5127. (of text and Ada code), content, and consistency; established a plan
  5128. for addressing the ISO formatting issues; adopted an optimistic
  5129. schedule for IEEE and ISO ballots; and tried to establish a position
  5130. on threads.
  5131.  
  5132. Unresolved Technical Issues from Mock Ballot
  5133.  
  5134. Most unresolved technical issues from the mock ballot were trivial,
  5135. and quickly resolved.  They included the details of iterations (e.g.,
  5136. through a directory), string lower bounds with respect to a string
  5137. returned by a function, the behavior of a file that is opened non-
  5138. blocking when the I/O operation cannot complete, static initialization
  5139. versus ``easy implementation'' of constants, and Text I/O page
  5140. terminators.
  5141.  
  5142. __________
  5143.  
  5144.   * UNIX is a registered trademark of AT&T in the U.S. and other
  5145.     countries.
  5146.  
  5147. June 1990 Standards Update                   IEEE 1003.5: Ada bindings
  5148.  
  5149.  
  5150.                 - 2 -
  5151.  
  5152. The most detailed discussion involved whether or not files should be
  5153. closed on an Exec.  The Ada binding provides a Start_Process function,
  5154. which is a primitive that safely creates a new process.  In the face
  5155. of Ada tasking, Fork and Exec are unsafe and cannot be used to
  5156. accomplish the results of a Start_Process call.  Once one of these
  5157. unsafe primitives is issued, an application program is no longer under
  5158. the control of the Ada run time system; the operating system is
  5159. involved.  Therefore, the integrity of the child process is
  5160. jeopardized, and the state of the process's I/O (i.e., which files are
  5161. open/closed) is not guaranteed.  Application programs that must be
  5162. safe with Ada tasking and must have files closed and buffers flushed,
  5163. should call Start_Process to create a new process.
  5164.  
  5165. Global Issues Effecting the Document
  5166.  
  5167. We solved several global, editorial issues.  We agreed to use a terse
  5168. wording style except where a more lengthy, explanatory style is needed
  5169. for clarity.  We accepted the current packaging of the Ada code
  5170. (multiple packages) and the non-Ada-Language-Reference-Manual coding
  5171. style.  Chapter authors were assigned action items to complete their
  5172. respective references and rationale sections.
  5173.  
  5174. We spent a large portion of the meeting going through the document,
  5175. chapter-by-chapter, noting very specific changes.  Changes recorded in
  5176. a ``master red-lined'' copy were forwarded to appropriate chapter
  5177. authors at the close of the meeting.  These changes will be made
  5178. before the June delivery of the document to WG 15.
  5179.  
  5180. ISO Format Issues
  5181.  
  5182. We need to make several minor modifications, additions, and deletions
  5183. before the June  WG 15 meeting, to put the document in ISO standard
  5184. format.  After the March, Tallahassee meeting, Jim Moore, of IBM,
  5185. investigated the possibility of hiring a consulting technical editor
  5186. to do this work.  IBM volunteered to fund this effort at a level
  5187. sufficient to translate the document into ISO format, maintain that
  5188. format, and make one major edit and two to three minor editorial
  5189. revisions.  We accepted IBM's offer, and hired Hal Jespersen.
  5190.  
  5191. Threads Issues
  5192.  
  5193. As in New Orleans, several group members met with P1003.4 for threads
  5194. discussions.  Most group members feel we should establish a position
  5195. on threads, but we remain firmly divided on what it should be.
  5196. Several members believe the currently defined primitives (i.e., the
  5197. most basic system functions) are insufficient, and think that any
  5198. thread model and primitives proposed should be sufficient to support
  5199. Ada tasking, and implement an Ada Run-Time.  In contrast, at least one
  5200. group member believes we are unrealistic to require a threads proposal
  5201. in C to meet Ada requirements --  we should, instead, require that C
  5202. and Ada be able to play together in some reasonable fashion, and have
  5203.  
  5204. June 1990 Standards Update                   IEEE 1003.5: Ada bindings
  5205.  
  5206.  
  5207.                 - 3 -
  5208.  
  5209. a fair understanding of how it will be accomplished.  We decided to
  5210. admit our dissension to P1003.4.  Interested P1003.5 members are
  5211. acting as liaisons to represent their own views, but these liaisons do
  5212. not represent any consolidated P1003.5. view.
  5213.  
  5214. The IEEE and ISO ballots
  5215.  
  5216. Steve Deller, our chair, asked the Sponsor's Executive Committee (SEC)
  5217. to approve our entry into the IEEE ballot process.  Jim Isaak, SEC
  5218. Chair, met with us early in the week to discuss the IEEE and ISO
  5219. ballot processes and help us establish a schedule to reach IEEE and
  5220. ISO ballots simultaneously.  Since the ballot process seems to be of
  5221. general interest, here is a brief overview.
  5222.  
  5223. A hierarchy of organizations is responsible for producing
  5224. international operating-system standards and managing the ISO ballot
  5225. process.  Two independent, international standards organizations, the
  5226. International Standards Organization (ISO) and the International
  5227. Electrotechnical Committee (IEC), sit on top.  Joint Technical
  5228. Committee 1 (JTC 1), a combined effort of these two organizations
  5229. designed to coordinate their efforts in areas of overlap, is at the
  5230. second level; Subcommittee 22 (SC 22), Languages, at the third; and
  5231. Working Group 15 (WG 15), Portable Operating Systems for Computer
  5232. Environments, at the fourth.  National organizations, such as the
  5233. American National Standards Institute (ANSI), manage ISO balloting
  5234. within each country.  Each participating country has one or more
  5235. representatives in WG 15.  The United States has a Technical Advisory
  5236. Group (TAG), which meets with and advises the United States' WG 15
  5237. representatives on the US's position on important issues.
  5238.  
  5239. This bureaucracy requires quite a bit of coordination and planning to
  5240. coordinate IEEE and ISO ballots.  Most documents require about one
  5241. year to complete the IEEE ballot cycle.  Historically, POSIX documents
  5242. have begun with the IEEE ballot process; three to four months later,
  5243. either the original draft, or a newer version incorporating IEEE
  5244. -ballot-process comments, enters the ISO process, and is delivered to
  5245. both WG 15 and SC 22 for approval.  Typically, the IEEE ballot is held
  5246. open until all comments from both IEEE and ISO processes are received,
  5247. reviewed, and incorporated.  The result is returned to both the IEEE
  5248. and ISO ballot groups for their approval.  If the IEEE comments are
  5249. substantive, they enter into the ISO process by the submission of a
  5250. United States position.  For example, P1003.1a is the U.S. position on
  5251. P1003.1..
  5252.  
  5253. Our group also initiated formation of a formal ballot group --  is the
  5254. group that will actually vote on the current draft.  We will deliver
  5255. Draft 5.0, in ISO format, to WG 15 at the Ada Europe meeting this
  5256. June.  Draft 6.0 will go to IEEE ballot on August 6.  If we receive
  5257. the required 75% response by September 21, the ballot will close
  5258. immediately; if not, we must reconsider the ballot group membership,
  5259. and revise our schedule. In early October, draft 6.0 will be delivered
  5260.  
  5261. June 1990 Standards Update                   IEEE 1003.5: Ada bindings
  5262.  
  5263.  
  5264.                 - 4 -
  5265.  
  5266. to SC22.  At the October meeting, in Seattle, we will resolve the IEEE
  5267. ballot comments and produce Draft 7.0, which will enter the ISO Ballot
  5268. process.  At the January '91, New Orleans Meeting, we will determine
  5269. whether a second IEEE Ballot is needed.  Any changes to Draft 7.0
  5270. resulting from a second IEEE Ballot will be entered into the ISO
  5271. process through a pro forma objection.  There are no guarantees, but
  5272. P1003.5 could reach Draft International Standard (DIS) status by late
  5273. second quarter of 1991.
  5274.  
  5275. Conclusion
  5276.  
  5277. The April '90/Salt Lake City Meeting was a success.  We addressed the
  5278. issues we hoped to address and attained our goal for the meeting.  We
  5279. also established a schedule for reaching IEEE and ISO ballot; although
  5280. this schedule is optimistic, we think we can meet it.
  5281.  
  5282. June 1990 Standards Update                   IEEE 1003.5: Ada bindings
  5283.  
  5284.  
  5285. Volume-Number: Volume 20, Number 38
  5286.  
  5287. From jsq@tic.com  Sat Jun 23 09:04:34 1990
  5288. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5289.     id AA09404; Sat, 23 Jun 90 09:04:34 -0400
  5290. Posted-Date: 23 Jun 90 00:03:08 GMT
  5291. Received: by cs.utexas.edu (5.64/1.63)
  5292.     id AA12273; Sat, 23 Jun 90 08:04:31 -0500
  5293. Received: by longway.tic.com (4.22/tic.1.2)
  5294.     id AA23600; Sat, 23 Jun 90 06:34:45 cdt
  5295. From: David J. MacKenzie <djm@eng.umd.edu>
  5296. Newsgroups: comp.std.unix
  5297. Subject: parseargs vs. getopt
  5298. Message-Id: <729@longway.TIC.COM>
  5299. References: <378@usenix.ORG> <728@longway.TIC.COM>
  5300. Sender: std-unix@tic.com
  5301. Reply-To: std-unix@uunet.uu.net
  5302. Organization: University of Maryland
  5303. Date: 23 Jun 90 00:03:08 GMT
  5304. Apparently-To: std-unix-archive@uunet.uu.net
  5305.  
  5306. From: David J. MacKenzie <djm@eng.umd.edu>
  5307.  
  5308. > From:  peter@ficc.uucp
  5309.  
  5310. > Might it not be time to "push the envelope" as 1003.4 has done, and specify
  5311. > Eric Allman's far superior "parseargs" interface? Getopt really doesn't do
  5312. > that much: a command line parser using getopt is only slightly simpler than
  5313. > one assembled completely out of a nested loop, and it doesn't do anything
  5314. > to help generate usage messages and the like... with the result that usage
  5315. > messages that are out of date are not that uncommon, even in system programs.
  5316.  
  5317. > Parseargs also helps by providing a system-independent interface, more so
  5318. > if you use my extended version of the unix driver routine. That way folks
  5319. > who work in other environments will be encouraged to produce programs that
  5320. > follow the P1003.2 interface when compiled under POSIX... and POSIX programs
  5321. > will fit well into VAX/VMS, MS-DOS, etc...
  5322.  
  5323. Parseargs has a lot of problems; I looked at it and discarded it.  It
  5324. might provide a superior interface to the programmer, but it doesn't
  5325. provide the same interface to the user; that is, it doesn't conform to
  5326. the standard Unix option syntax that most programs use (allowing
  5327. ganging of multiple single-letter options into a single argument, for
  5328. example).  Since getopt is an existing-practice de-facto standard, I
  5329. see no justification for trying to push something quite different that
  5330. hardly anyone uses as an IEEE standard.  I don't think what 1003.4 is
  5331. doing is necessarily a good idea either.  It probably exceeds the
  5332. POSIX charter.
  5333. --
  5334. David J. MacKenzie <djm@eng.umd.edu> <djm@ai.mit.edu>
  5335.  
  5336. Volume-Number: Volume 20, Number 39
  5337.  
  5338. From jsq@tic.com  Sat Jun 23 09:04:44 1990
  5339. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5340.     id AA09464; Sat, 23 Jun 90 09:04:44 -0400
  5341. Posted-Date: 22 Jun 90 20:58:21 GMT
  5342. Received: by cs.utexas.edu (5.64/1.63)
  5343.     id AA12295; Sat, 23 Jun 90 08:04:41 -0500
  5344. Received: by longway.tic.com (4.22/tic.1.2)
  5345.     id AA23693; Sat, 23 Jun 90 06:41:26 cdt
  5346. From: Dave Decot <decot@hpisod2.cup.hp.com>
  5347. Newsgroups: comp.std.unix
  5348. Subject: Re: POSIX equivalent to <sys/file.h> or <fcntl.h>
  5349. Message-Id: <730@longway.TIC.COM>
  5350. References: <727@longway.TIC.COM>
  5351. Sender: std-unix@tic.com
  5352. Reply-To: std-unix@uunet.uu.net
  5353. Organization: Hewlett Packard, Cupertino
  5354. Date: 22 Jun 90 20:58:21 GMT
  5355. Apparently-To: std-unix-archive@uunet.uu.net
  5356.  
  5357. From:  decot@hpisod2.cup.hp.com (Dave Decot)
  5358.  
  5359. > From:  steve@unidata.ucar.edu (Steve Emmerson)
  5360. > Would some please tell me what header file (or files) is the POSIX-
  5361. > equivalent to the BSD <sys/file.h> or the System V <fcntl.h>.
  5362. > I have the P1003.1 document on order, but it will take 4 to 6 weeks to
  5363. > arrive and I need to get on with my work.
  5364.  
  5365. With few exceptions, POSIX preferred the System V header name to the BSD
  5366. header name when conflicts existed.  This case is no exception:  POSIX
  5367. requires that <fcntl.h> define the flag and command macros needed
  5368. for open(), creat(), and fcntl().
  5369.  
  5370. Dave Decot
  5371.  
  5372. Volume-Number: Volume 20, Number 40
  5373.  
  5374. From jsq@tic.com  Sat Jun 23 09:04:53 1990
  5375. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5376.     id AA09487; Sat, 23 Jun 90 09:04:53 -0400
  5377. Posted-Date: 23 Jun 90 05:54:31 GMT
  5378. Received: by cs.utexas.edu (5.64/1.63)
  5379.     id AA12308; Sat, 23 Jun 90 08:04:50 -0500
  5380. Received: by longway.tic.com (4.22/tic.1.2)
  5381.     id AA23749; Sat, 23 Jun 90 06:43:39 cdt
  5382. From: Doug Gwyn <gwyn@smoke.brl.mil>
  5383. Newsgroups: comp.std.unix
  5384. Subject: Re: Standards Update, IEEE 1003.2: Shell and tools
  5385. Message-Id: <731@longway.TIC.COM>
  5386. References: <378@usenix.ORG> <728@longway.TIC.COM>
  5387. Sender: std-unix@tic.com
  5388. Reply-To: std-unix@uunet.uu.net
  5389. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  5390. Date: 23 Jun 90 05:54:31 GMT
  5391. Apparently-To: std-unix-archive@uunet.uu.net
  5392.  
  5393. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  5394.  
  5395. In article <728@longway.TIC.COM> peter@ficc.ferranti.com (Peter da Silva) writes:
  5396. >Might it not be time to "push the envelope" as 1003.4 has done, and specify
  5397. >Eric Allman's far superior "parseargs" interface?
  5398.  
  5399. There have actually been MANY such inventions; however, getopt() is the
  5400. de facto standard in this area, and thus is appropriate for standardization.
  5401.  
  5402. Volume-Number: Volume 20, Number 41
  5403.  
  5404. From jsq@tic.com  Sat Jun 23 09:05:02 1990
  5405. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5406.     id AA09546; Sat, 23 Jun 90 09:05:02 -0400
  5407. Posted-Date: 23 Jun 90 05:58:43 GMT
  5408. Received: by cs.utexas.edu (5.64/1.63)
  5409.     id AA12327; Sat, 23 Jun 90 08:04:58 -0500
  5410. Received: by longway.tic.com (4.22/tic.1.2)
  5411.     id AA23805; Sat, 23 Jun 90 06:45:31 cdt
  5412. From: Doug Gwyn <gwyn@smoke.brl.mil>
  5413. Newsgroups: comp.std.unix
  5414. Subject: Re: Standards Update, IEEE 1003.5: Ada bindings
  5415. Message-Id: <732@longway.TIC.COM>
  5416. References: <379@usenix.ORG>
  5417. Sender: std-unix@tic.com
  5418. Reply-To: std-unix@uunet.uu.net
  5419. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  5420. Date: 23 Jun 90 05:58:43 GMT
  5421. Apparently-To: std-unix-archive@uunet.uu.net
  5422.  
  5423. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  5424.  
  5425. -The most detailed discussion involved whether or not files should be
  5426. -closed on an Exec.  The Ada binding provides a Start_Process function,
  5427. -which is a primitive that safely creates a new process.  In the face
  5428. -of Ada tasking, Fork and Exec are unsafe and cannot be used to
  5429. -accomplish the results of a Start_Process call.  Once one of these
  5430. -unsafe primitives is issued, an application program is no longer under
  5431. -the control of the Ada run time system; the operating system is
  5432. -involved. ...
  5433.  
  5434. Correct me if I'm mistaken, but I thought the specific task of
  5435. 1003.5 was to provide Ada-language bindings to 1003.1, not to
  5436. add functionality.
  5437.  
  5438. Volume-Number: Volume 20, Number 42
  5439.  
  5440. From uucp@tic.com  Sat Jun 23 14:45:48 1990
  5441. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5442.     id AA19419; Sat, 23 Jun 90 14:45:48 -0400
  5443. Posted-Date: 23 Jun 90 12:21:21 GMT
  5444. Received: by cs.utexas.edu (5.64/1.63)
  5445.     id AA17434; Sat, 23 Jun 90 10:02:01 -0500
  5446. Received: by longway.tic.com (4.22/tic.1.2)
  5447.     id AA24904; Sat, 23 Jun 90 09:25:02 cdt
  5448. From: <jsh@usenix.org>
  5449. Newsgroups: comp.std.unix
  5450. Subject: Standards Update, IEEE 1003.9: FORTRAN bindings
  5451. Message-Id: <380@usenix.ORG>
  5452. Sender: std-unix@usenix.ORG
  5453. Reply-To: std-unix@uunet.uu.net
  5454. Date: 23 Jun 90 12:21:21 GMT
  5455. Apparently-To: std-unix-archive@uunet.uu.net
  5456.  
  5457. From:  <jsh@usenix.org>
  5458.  
  5459.  
  5460.            An Update on UNIX*-Related Standards Activities
  5461.  
  5462.                                May 1990
  5463.  
  5464.                  USENIX Standards Watchdog Committee
  5465.  
  5466.                    Jeffrey S. Haemer, Report Editor
  5467.  
  5468. IEEE 1003.9: FORTRAN bindings
  5469.  
  5470. Michael Hannah <mjhanna@SANDIA.GOV> reports on the April 23-27 meeting
  5471. in Salt Lake City, UT:
  5472.  
  5473. FORTRAN bindings committee prepares to go to ballot
  5474.  
  5475. The FORTRAN bindings committee is preparing the official call for a
  5476. ballot group.  Because the POSIX work is all done under the auspices
  5477. of the IEEE Technical Committee on Operating Systems Standards
  5478. Subcommittee (TCOS-SS), all members of the ballot group must be both
  5479. regular IEEE or Computer Society members.  and members of the TCOS-SS
  5480. (no extra charge to join).  Non-members may submit informative
  5481. ballots, but such ballots cannot count towards the required response
  5482. percentage (75%), or percentage of affirmative responses (also 75%)
  5483. required for passage of the standard.  [Editor: Institutional
  5484. Representatives are exceptions to this rule.  See IEEE 1003.1-1988,
  5485. p. 177 for a detailed explanation of the rules.]
  5486.  
  5487. For more information, the appropriate membership forms, and
  5488. instructions for returning the forms to the proper IEEE offices,
  5489. contact the committee chair, John McGrory, at the address listed at
  5490. the end of this article.  This information/sign-up packet will be
  5491. available by the end of June, but you may contact the chair as soon as
  5492. you want your name added to the distribution list.
  5493.  
  5494. The formal sign-up period is expected to be August 15 through October
  5495. 19, 1990.  The ballot period is expected to last from November 9, 1990
  5496. through January 4, 1991.  We are especially eager to attract a large,
  5497. representative balloting group, and encourage interested individuals
  5498. to sign up.  While the views represented on the P1003.9 working group
  5499. have been appropriate and varied, the number of active members has
  5500. been small (typically, around a dozen).
  5501.  
  5502. __________
  5503.  
  5504.   * UNIX is a registered trademark of AT&T in the U.S. and other
  5505.     countries.
  5506.  
  5507. May 1990 Standards Update                IEEE 1003.9: FORTRAN bindings
  5508.  
  5509.  
  5510.                 - 2 -
  5511.  
  5512. Some history
  5513.  
  5514. As the committee prepares to go to ballot, it might be of value to
  5515. review some of the more sticky issues that the working group has
  5516. addressed.  The formal, adopted charter of the committee is to provide
  5517. access to the POSIX-defined, standard operating system interface and
  5518. environment, directly from the FORTRAN language.  There are two major
  5519. issues of scope that bear comment: ``Access to how much of POSIX?''
  5520. and ``Which FORTRAN?''
  5521.  
  5522. Some POSIX features are easily imagined as useful to a FORTRAN
  5523. application (e.g., chmod, exec, etc.); some are less easily imagined
  5524. (pick your favorite obscure system call).  It was unclear where to
  5525. draw the line, so the committee took the attitude of ensuring access
  5526. to all features defined in 1003.1 (IEEE 1003.1-1988, or ISO/IEC 9945-
  5527. 1:1990).  It seemed clear that full functional access would be
  5528. provided by most vendors, so full standardization seemed called for.
  5529. Some diehard C language addicts continue to ask, ``Why have any
  5530. FORTRAN bindings?'' Although most vendors provide a method of calling
  5531. C functions from FORTRAN, they vary from vendor to vendor.  Further,
  5532. any library of C routines provided by a vendor to map FORTRAN
  5533. constructs to the POSIX defined procedures is bound to differ among
  5534. vendors.  The P1003.9 bindings are silent on implementation, so the
  5535. FORTRAN subprograms defined in the bindings could be implemented as
  5536. just such a library.  The bindings just standardize the interface.
  5537. Keeping in mind the POSIX goal of application portability, only a
  5538. truly complete FORTRAN binding would provide portability of any
  5539. FORTRAN application.
  5540.  
  5541. A harder issue was, ``Which FORTRAN?'' Our choices were:
  5542.  
  5543.   1.  FORTRAN 77 [ANSI X3.9-1978, ISO 1539-1980 (E)],
  5544.  
  5545.   2.  a codification of common extensions/enhancements to FORTRAN 77,
  5546.       or
  5547.  
  5548.   3.  the revised FORTRAN standard emerging from the ANSI X3J3
  5549.       committee --  previously referred to as FORTRAN 8X but now
  5550.       called Fortran 90.  (The working group has been delighted to
  5551.       have an officially appointed representative of X3J3 as an active
  5552.       member.) [Editor: Note that Fortran 90 will finally let us type
  5553.       the name of the language without using the caps-lock key.  ``And
  5554.       gain is gain, however small.''  --  Robert Browning]
  5555. We chose the first.
  5556.  
  5557. For FORTRAN 77 vs. Fortran 90, we were swayed by the fact that FORTRAN
  5558. 77 is currently the only adopted standard.  (Fortran 90 is scheduled
  5559. to be adopted as an ANSI standard after P1003.9 goes to ballot.)
  5560. Further, FORTRAN-77-based applications are expected to exist for some
  5561. years.  Thus, the working group felt that FORTRAN-77-based bindings
  5562. would be of value to the user community.  The working group expects to
  5563.  
  5564. May 1990 Standards Update                IEEE 1003.9: FORTRAN bindings
  5565.  
  5566.  
  5567.                 - 3 -
  5568.  
  5569. develop a new set of bindings, based solely on Fortran 90, after
  5570. completion of the FORTRAN 77 bindings (and after the Fortran 90
  5571. standard is adopted).  One result of this decision is a subprogram-
  5572. naming scheme that reflects the version of the language (e.g., CALL
  5573. F77MKDIR(...) ).  This will ensure that there will be no name-space
  5574. conflict with similar-purpose subprograms in a future Fortran 90
  5575. binding.
  5576.  
  5577. An even harder issue, once we decided to base the bindings on FORTRAN
  5578. 77, was whether to define the bindings as extensions and/or
  5579. enhancements to the language itself, or simply as a library of
  5580. callable FORTRAN subprograms.  While the latter was finally chosen,
  5581. there was considerable argument for the former.  In fact, one
  5582. extension to FORTRAN 77 was considered minimally essential.  The
  5583. current document requires the language to differentiate external names
  5584. unique to 31 characters, even though the FORTRAN 77 standard limits
  5585. them to six.  The extension seems harmless.  Fortran 90 specifies
  5586. uniqueness to 31 characters and all current FORTRAN 77 compilers
  5587. researched provide this extension.  Further, since the list of P1003.9
  5588. subprogram names is finite, if necessary, a vendor could provide a
  5589. preprocessor to convert these names into unique strings of six
  5590. characters.
  5591.  
  5592. If the P1003.9 bindings had defined changes to the language itself,
  5593. then major missing constructs in the FORTRAN 77 language needed for
  5594. easy POSIX access (most notably, structures and pointers) could have
  5595. been provided by choosing either the emerging Fortran 90 constructs or
  5596. an existing vendor solution.  At first the working group felt that
  5597. this might be required for some access features.  However, as we
  5598. struggled with each issue, working papers and proposals were
  5599. introduced that resolved every one with callable FORTRAN subprograms
  5600. (though some might argue about elegance or ease of use).  While we
  5601. mostly steered clear of ``ease-of-implementation'' arguments, since we
  5602. viewed the FORTRAN 77 bindings as an interim, we felt that vendors
  5603. would be quicker to implement a library of subprograms than
  5604. modifications to compilers.
  5605.  
  5606. A final, hard question of standard scope concerned whether to restrict
  5607. the standard to 1003.1, or expand it to general, FORTRAN-application
  5608. portability issues, both within and outside the POSIX arena.  Both a
  5609. lack of resources and a desire to provide a timely bindings on the
  5610. heels of 1003.1 made us decide to limit the scope to 1003.1
  5611. functionality.
  5612.  
  5613. As other base standards are produced (e.g., 1003.2, 1003.4, etc.), we
  5614. expect to construct and ballot bindings for those standards.  For
  5615. example, we have worked with P1003.2 in defining a standardized
  5616. command to invoke the FORTRAN compiler (after a number of iterations,
  5617. now named fort77) which is part of their current draft.  Actual
  5618. P1003.9 bindings to 1003.2 might include definitions of additional
  5619. utilities of use to FORTRAN applications not mentioned in the base
  5620. 1003.2 standard (e.g., f77split, f77lint, etc.).
  5621.  
  5622. May 1990 Standards Update                IEEE 1003.9: FORTRAN bindings
  5623.  
  5624.  
  5625.                 - 4 -
  5626.  
  5627. Another argument against adding features was that many, if not most,
  5628. of the problems we saw in portability are solved by new constructs in
  5629. Fortran 90.  Many of us felt that as a standards group we should only
  5630. provide a minimum set of features for ``perhaps-soon-to-be-obsolete''
  5631. FORTRAN 77, and thereby speed up the date for providing full bindings
  5632. to the new Fortran 90, which provides more features for application
  5633. portability.
  5634.  
  5635. How to get involved
  5636.  
  5637. If you have strong feelings about these issues, the most effective
  5638. avenue to express them at this point is to join the balloting group
  5639. being formed.  Nevertheless, if you wish to discuss them before this
  5640. you can also directly contact the chair (John McGrory) or me (vice-
  5641. chair, Michael Hannah), or join the e-mail discussion group.
  5642. Addresses follow:
  5643.  
  5644. P1003.9 Chair
  5645. John McGrory
  5646. Hewlett Packard Co.
  5647. Division 2615
  5648. 19046 Pruneridge Avenue
  5649. Cupertino, Ca 95014
  5650. mcgrory%hpda@HPLABS.HP.COM
  5651.  
  5652. P1003.9 ViceChair
  5653. Michael Hannah
  5654. Sandia National Labs
  5655. Albuquerque, NM 87185
  5656. mjhanna@SANDIA.GOV
  5657.  
  5658. Un-moderated mailing list:
  5659. posix-fortran@SANDIA.GOV
  5660. To join the list, send request to:
  5661. posix-fortran-request@SANDIA.GOV
  5662.  
  5663. May 1990 Standards Update                IEEE 1003.9: FORTRAN bindings
  5664.  
  5665. Volume-Number: Volume 20, Number 43
  5666.  
  5667. From uucp@tic.com  Sat Jun 23 14:44:47 1990
  5668. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5669.     id AA19242; Sat, 23 Jun 90 14:44:47 -0400
  5670. Posted-Date: 23 Jun 90 12:28:11 GMT
  5671. Received: by cs.utexas.edu (5.64/1.63)
  5672.     id AA17482; Sat, 23 Jun 90 10:02:16 -0500
  5673. Received: by longway.tic.com (4.22/tic.1.2)
  5674.     id AA24922; Sat, 23 Jun 90 09:26:07 cdt
  5675. From: <jsh@usenix.org>
  5676. Newsgroups: comp.std.unix
  5677. Subject: Standards Update, IEEE 1003.14: Multiprocessing
  5678. Message-Id: <381@usenix.ORG>
  5679. Sender: std-unix@usenix.ORG
  5680. Reply-To: std-unix@uunet.uu.net
  5681. Date: 23 Jun 90 12:28:11 GMT
  5682. Apparently-To: std-unix-archive@uunet.uu.net
  5683.  
  5684. From:  <jsh@usenix.org>
  5685.  
  5686.  
  5687.            An Update on UNIX*-Related Standards Activities
  5688.  
  5689.                               June, 1990
  5690.  
  5691.                  USENIX Standards Watchdog Committee
  5692.  
  5693.                    Jeffrey S. Haemer, Report Editor
  5694.  
  5695. IEEE 1003.14: Multiprocessing
  5696.  
  5697. Bill Cox <bill@attunix.att.com> reports on the April 23-27 meeting in
  5698. Salt Lake City, UT: The POSIX Multiprocessing Study Group had its
  5699. first official meeting as P1003.14 in Utah, where the SEC approved its
  5700. Project Authorization Request (PAR) for a Multiprocessing Execution
  5701. Environment Profile.  Multiprocessing systems have become cost-
  5702. effective means for providing computing power, but with the advantages
  5703. have some specific concerns that need to be addressed at the interface
  5704. level.  The goal of this work is to try to make POSIX safe for
  5705. multiprocessing; a secondary goal is to try to make POSIX hospitable
  5706. for multiprocessing.  POSIX working groups do not necessarily share
  5707. the concerns of the implementors and users of multiprocessing systems.
  5708.  
  5709. Bob Knighten (Encore) is the Chair, Bill Cox (AT&T UNIX Software
  5710. Operation) is Secretary, and Dave Plauger (Alliant) is the Technical
  5711. Editor.  Officers must have a commitment of support from their
  5712. employers, to ensure that they can attend working group meetings and
  5713. devote necessary time to the purposes of the working group.  16 people
  5714. attended the group meetings.
  5715.  
  5716. People interested in .4A (threads) have tended to be interested in .14
  5717. and vice versa.  Many .14 members that have been meeting with
  5718. P1003.4/.4A see substantial problems with pthreads in a multiprocessor
  5719. environment, and I know at least eight people working on .4A that want
  5720. to come work in .14.
  5721.  
  5722. The working group designated one official liaison to .4A, who was
  5723. joined by two other tentative volunteers.  We will also establish
  5724. liaisons with .1, .6, .7, .8, .10, and .12.
  5725.  
  5726. During the week, we spent time in three areas.
  5727.  
  5728.   1.  We clarified the group's work items, and started work on the
  5729.       most important, the Application Environment Profile.  (An AEP
  5730.       may specify relevant portions of other POSIX working groups'
  5731.       work, make choices where options are permitted, and specify
  5732.       behavior that a [draft] standard may have left undefined or
  5733.       unspecified.)
  5734.  
  5735. __________
  5736.  
  5737.   * UNIX is a registered trademark of AT&T in the U.S. and other
  5738.     countries.
  5739.  
  5740. June, 1990 Standards Update              IEEE 1003.14: Multiprocessing
  5741.  
  5742.  
  5743.                 - 2 -
  5744.  
  5745.   2.  We discussed current conventional wisdom on multiprocessing.
  5746.       The discussions centered around presentations by BBN, Cray,
  5747.       Encore, AT&T USO, and Alliant on lessons they've learned.
  5748.  
  5749.   3.  We created two small groups.
  5750.  
  5751.       The first began work on high-level requirements placed on
  5752.       pthreads by multiprocessing.  Attendees included Rick Greer
  5753.       (Interactive), Mary Weeks (Sun), and Bill Cox (AT&T USO).
  5754.  
  5755.       Here are some requirements we feel strongly about:
  5756.  
  5757.          + A library implementation of ``user-level threads'' is
  5758.            vitally important.  User-level threads often must be
  5759.            multiplexed onto kernel-supported
  5760.            objects/processes/threads, largely for performance reasons.
  5761.            These kernel-supported objects, etc, are sometimes called
  5762.            ``virtual processors,'' because they support an abstraction
  5763.            closer to that of a physical processor, with
  5764.            interrupts/signals, and a significant amount of state.
  5765.  
  5766.          + The formal memory model of P1003.4/D9 section 13.1 must
  5767.            apply to .4A.  This model defines the semantics of memory
  5768.            interaction that should be preserved in a multithreaded or
  5769.            multiprocessing environment.
  5770.  
  5771.          + Global threads scheduling makes little sense in a
  5772.            multiprocessor, though such scheduling could be useful as a
  5773.            hint (Like C's register declarations if you don't have
  5774.            enough registers.) Global policy is difficult to implement
  5775.            in a multiplexed thread environment.
  5776.  
  5777.          + use of attribute structures for mutual exclusion variables
  5778.            (in particular, for scheduling hints)
  5779.  
  5780.          + Locks shouldn't be opaque, and programmers should be able
  5781.            to statically initialize them.  The latter is important so
  5782.            that locks can be part of data structures, and not require
  5783.            time-consuming dynamic allocation and initialization.
  5784.  
  5785.          + There must be only one set of libraries.  There are
  5786.            performance reasons to have single-threaded libraries,
  5787.            i.e., libraries that are not thread-aware, for a
  5788.            uniprocessor or single-threaded applications.  The group
  5789.            believes that the cost of maintaining such libraries is
  5790.            sufficiently high that a non-reentrant library or set of
  5791.            libraries should not be required.
  5792.  
  5793. June, 1990 Standards Update              IEEE 1003.14: Multiprocessing
  5794.  
  5795.  
  5796.                 - 3 -
  5797.  
  5798.       The other group began work on the AEP itself.
  5799.  
  5800.       Members of this small group, and their responsibilities,
  5801.       included
  5802.  
  5803.          + Dave Plauger (Alliant) - skeleton for the document,
  5804.  
  5805.          + Frank Lawlor (IBM) - checkpoint restart, review, and
  5806.            liaison with .10 and .7,
  5807.  
  5808.          + James Gibson (BBN) - review and liason with .2,
  5809.  
  5810.          + Bob Knighten (Encore) - review and liason with .4, and
  5811.  
  5812.          + Tom Weaver (IBM) - review and liason with .1 and .6.
  5813.  
  5814.       This group identified several areas of concern:
  5815.  
  5816.          + microtasking models
  5817.  
  5818.          + checkpoint, snapshots, and core dump format/synchronization
  5819.  
  5820.          + a general programming model
  5821.  
  5822.          + dividing the ``reading list'' (other P1003 standards and
  5823.            drafts)
  5824.  
  5825.          + determining focus (are we dealing with portability for
  5826.            application writers, users, and/or administrators?)
  5827.  
  5828.          + standardizing system services
  5829.  
  5830.       A sketch of the planned document includes:
  5831.  
  5832.          + reference to TIMS
  5833.  
  5834.          + multithreaded applications (.4A)
  5835.  
  5836.          + HLL parallel applications (PCF FORTRAN, parallel C)
  5837.  
  5838.          + IPC
  5839.  
  5840. June, 1990 Standards Update              IEEE 1003.14: Multiprocessing
  5841.  
  5842. Volume-Number: Volume 20, Number 44
  5843.  
  5844. From uucp@tic.com  Mon Jun 25 09:20:02 1990
  5845. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5846.     id AA27057; Mon, 25 Jun 90 09:20:02 -0400
  5847. Posted-Date: 25 Jun 90 10:40:07 GMT
  5848. Received: by cs.utexas.edu (5.64/1.63)
  5849.     id AA19014; Mon, 25 Jun 90 08:19:58 -0500
  5850. Received: by longway.tic.com (4.22/tic.1.2)
  5851.     id AA27185; Mon, 25 Jun 90 06:29:15 cdt
  5852. From: Lavalle <Warren@tic.com>
  5853. Newsgroups: world
  5854. Subject: comp.mail.maps is an already existing moderated , valid group
  5855. Message-Id: <14346@know.pws.bull.com>
  5856. Control: newgroup comp.mail.maps moderated
  5857. Sender: news@pws.bull.com
  5858. Reply-To: warren@pws.bull.com
  5859. Date: 25 Jun 90 10:40:07 GMT
  5860. Apparently-To: std-unix-archive@uunet.uu.net
  5861.  
  5862. In an earlier control article, samsung!cs.utexas.edu!rutgers!psuvax1!eds1!devon!mbitow!root
  5863. requested that comp.mail.maps be changed from moderated to unmoderated
  5864.  
  5865. samsung!cs.utexas.edu!rutgers!psuvax1!eds1!devon!mbitow!root says:
  5866. Pathalias map distribution group.
  5867.  
  5868. This control message is to change it back to moderated, like it should be.
  5869.  
  5870. --
  5871. News Administrator                       news@pws.bull.com
  5872. 900 Middlesex Tpk, Bldg. #2, Billerica, MA.  01821
  5873. "Know Bull"
  5874.  
  5875. From jsq@tic.com  Wed Jun 27 03:41:58 1990
  5876. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5877.     id AA06881; Wed, 27 Jun 90 03:41:58 -0400
  5878. Posted-Date: 23 Jun 90 19:27:43 GMT
  5879. Received: by cs.utexas.edu (5.64/1.63)
  5880.     id AA25125; Wed, 27 Jun 90 02:41:53 -0500
  5881. Received: by longway.tic.com (4.22/tic.1.2)
  5882.     id AA29691; Tue, 26 Jun 90 17:19:35 cdt
  5883. From: D'Arcy J.M. Cain <druid!darcy@cs.utexas.edu>
  5884. Newsgroups: comp.std.unix
  5885. Subject: Re: parseargs vs. getopt
  5886. Message-Id: <733@longway.TIC.COM>
  5887. References: <378@usenix.ORG> <728@longway.TIC.COM> <729@longway.TIC.COM>
  5888. Sender: std-unix@tic.com
  5889. Reply-To: druid!darcy@cs.utexas.edu (D'Arcy J.M. Cain)
  5890. Organization: D'Arcy Cain Consulting, West Hill, Ontario
  5891. Date: 23 Jun 90 19:27:43 GMT
  5892. Apparently-To: std-unix-archive@uunet.uu.net
  5893.  
  5894. From:  darcy@druid.uucp (D'Arcy J.M. Cain)
  5895.  
  5896. In article <729@longway.TIC.COM> From: David J. MacKenzie <djm@eng.umd.edu>
  5897. >Parseargs has a lot of problems; I looked at it and discarded it.  It
  5898. >might provide a superior interface to the programmer, but it doesn't
  5899. >provide the same interface to the user; that is, it doesn't conform to
  5900. >the standard Unix option syntax that most programs use (allowing
  5901. >ganging of multiple single-letter options into a single argument, for
  5902. >example).  Since getopt is an existing-practice de-facto standard, I
  5903.  
  5904. You might like my getarg function.  I designed it as a replacement for
  5905. getopt but in such a way that the user can use it exactly like getopt.
  5906. It does however support extra functionality which can be used if the user
  5907. is aware of it.  For one thing, options and arguments (files) can be
  5908. mixed instead of requiring all options to precede the files.  You can
  5909. also initialise the argument list more than once supporting things such
  5910. as environment default command lines, arguments from files etc mixed
  5911. with arguments from the command line.  I just posted it recently to
  5912. alt.sources and I'm interested in getting some feedback on it.
  5913.  
  5914. -- 
  5915. D'Arcy J.M. Cain (darcy@druid)     |   Government:
  5916. D'Arcy Cain Consulting             |   Organized crime with an attitude
  5917. West Hill, Ontario, Canada         |
  5918. (416) 281-6094                     |
  5919.  
  5920. Volume-Number: Volume 20, Number 45
  5921.  
  5922. From jsq@tic.com  Wed Jun 27 03:42:10 1990
  5923. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5924.     id AA06977; Wed, 27 Jun 90 03:42:10 -0400
  5925. Posted-Date: 25 Jun 90 16:23:17 GMT
  5926. Received: by cs.utexas.edu (5.64/1.63)
  5927.     id AA25136; Wed, 27 Jun 90 02:42:04 -0500
  5928. Received: by longway.tic.com (4.22/tic.1.2)
  5929.     id AA29760; Tue, 26 Jun 90 17:25:05 cdt
  5930. From: Dorothy Carney <uudot@earth.lerc.nasa.gov>
  5931. Newsgroups: comp.std.unix
  5932. Subject: Directory Standards to expect?
  5933. Message-Id: <734@longway.TIC.COM>
  5934. Sender: std-unix@tic.com
  5935. Reply-To: earth.lerc.nasa.gov!uudot@cs.utexas.edu
  5936. Organization: NASA Lewis Research Center
  5937. Date: 25 Jun 90 16:23:17 GMT
  5938. Apparently-To: std-unix-archive@uunet.uu.net
  5939.  
  5940. From:  uudot@earth.lerc.nasa.gov (Dorothy Carney)
  5941.  
  5942. As we manage UNIX workstations, what should we expect from POSIX 1003.7 
  5943. System Administration regarding directories?  For example, we have heard
  5944. about partitioning the directory tree into sharable and non-sharable sets,
  5945. with userids to reside in /home in a non-sharable set.  Comments & POSIX
  5946. forecasts will be appreciated.
  5947.  
  5948. Volume-Number: Volume 20, Number 46
  5949.  
  5950. From jsq@tic.com  Wed Jun 27 03:42:36 1990
  5951. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5952.     id AA07081; Wed, 27 Jun 90 03:42:36 -0400
  5953. Posted-Date: 25 Jun 90 15:14:32 GMT
  5954. Received: by cs.utexas.edu (5.64/1.63)
  5955.     id AA25148; Wed, 27 Jun 90 02:42:13 -0500
  5956. Received: by longway.tic.com (4.22/tic.1.2)
  5957.     id AA29825; Tue, 26 Jun 90 17:28:35 cdt
  5958. From: <rabin@osf.org>
  5959. Newsgroups: comp.std.unix
  5960. Subject: Question about file offsets
  5961. Message-Id: <735@longway.TIC.COM>
  5962. Sender: std-unix@tic.com
  5963. Reply-To: std-unix@uunet.uu.net
  5964. Date: 25 Jun 90 15:14:32 GMT
  5965. Apparently-To: std-unix-archive@uunet.uu.net
  5966.  
  5967. From:  rabin@osf.org
  5968.  
  5969. I am looking for an informal interpretation of IEEE Std 1003.1-1988.
  5970.  
  5971. Section 6.5.3.4 specifies that lseek() returns EINVAL if the resulting 
  5972. file offset would be invalid, but it doesn't say which file offsets
  5973. are invalid. The rationale (B.6.5.3) says:
  5974.  
  5975.     An illegal file offset that would cause [EINVAL] to be
  5976.     returned may be both implementation defined and device
  5977.     dependent (for example, memory may have few illegal values).
  5978.     A negative file offset may be legal for some devices in
  5979.     some implementations.
  5980.  
  5981. The standard does not specify an error for I/O operations attempted at
  5982. an illegal offset. It _seems_ that the intent is for an offset to be legal
  5983. only if some I/O operation is possible at that offset, and for it to be
  5984. impossible to set an illegal offset.  This is not changed in the 1990
  5985. revision of the standard or in the P1003.1b supplement.
  5986.  
  5987. XPG3 is not too clear on this point, but it looks like its intent is to
  5988. permit setting illegal file offsets. Optional [ENXIO] errors are added to 
  5989. all I/O interfaces and an _optional_ [EINVAL] is added to fseek() in the
  5990. case that the resulting file offset is negative.
  5991.  
  5992. Some implementations do permit lseek() to set "illegal" file offsets,
  5993. and some applications take advantage of this.  Does anyone know whether
  5994. the original members of the 1003.1 working group intended to permit this?
  5995. Does anyone have an implementation that returns [EINVAL] if the
  5996. file offset resulting from lseek() is negative, or positive and "too
  5997. large"?  Are file offsets represented in your kernel by a signed or an
  5998. unsigned type?
  5999.  
  6000. Thanks!
  6001.  
  6002.     Paul Rabin
  6003.     Open Software Foundation
  6004.     rabin@osf.org or uunet!osf.org!rabin
  6005.     (617) 621-8873
  6006.  
  6007. Volume-Number: Volume 20, Number 47
  6008.  
  6009. From jsq@tic.com  Wed Jun 27 03:42:30 1990
  6010. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  6011.     id AA07040; Wed, 27 Jun 90 03:42:30 -0400
  6012. Posted-Date: 24 Jun 90 19:41:00 GMT
  6013. Received: by cs.utexas.edu (5.64/1.63)
  6014.     id AA25169; Wed, 27 Jun 90 02:42:24 -0500
  6015. Received: by longway.tic.com (4.22/tic.1.2)
  6016.     id AA29925; Tue, 26 Jun 90 17:38:32 cdt
  6017. From: Gordon Burditt <gordon@sneaky.lonestar.org>
  6018. Newsgroups: comp.std.unix,comp.unix.questions
  6019. Subject: Re: POSIX equivalent to <sys/file.h> or <fcntl.h>
  6020. Message-Id: <736@longway.TIC.COM>
  6021. References: <727@longway.TIC.COM>
  6022. Sender: std-unix@tic.com
  6023. Reply-To: std-unix@uunet.uu.net
  6024. Organization: Gordon Burditt
  6025. Date: 24 Jun 90 19:41:00 GMT
  6026. Apparently-To: std-unix-archive@uunet.uu.net
  6027.  
  6028. From:  gordon@sneaky.lonestar.org (Gordon Burditt)
  6029.  
  6030. >Would some please tell me what header file (or files) is the POSIX-
  6031. >equivalent to the BSD <sys/file.h> or the System V <fcntl.h>.
  6032.  
  6033. Assuming you're looking for defines like O_RDONLY, the equivalent
  6034. is <fcntl.h>.
  6035.  
  6036. >(If someone would send me a general header-file mapping, that would be 
  6037. >great!)
  6038.  
  6039. In general, the equivalent of the System V header <x> in POSIX is
  6040. either <x> or doesn't exist (isn't standardized).
  6041.  
  6042.                         Gordon L. Burditt
  6043.                         sneaky.lonestar.org!gordon
  6044.  
  6045. Volume-Number: Volume 20, Number 48
  6046.  
  6047. From jsq@tic.com  Wed Jun 27 03:44:00 1990
  6048. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  6049.     id AA07360; Wed, 27 Jun 90 03:44:00 -0400
  6050. Posted-Date: 24 Jun 90 20:20:50 GMT
  6051. Received: by cs.utexas.edu (5.64/1.63)
  6052.     id AA25226; Wed, 27 Jun 90 02:43:55 -0500
  6053. Received: by longway.tic.com (4.22/tic.1.2)
  6054.     id AA29990; Tue, 26 Jun 90 17:42:09 cdt
  6055. From: <ficc!peter@cs.utexas.edu>
  6056. Newsgroups: comp.std.unix
  6057. Subject: Re: parseargs vs. getopt
  6058. Message-Id: <737@longway.TIC.COM>
  6059. References: <378@usenix.ORG> <728@longway.TIC.COM> <729@longway.TIC.COM>
  6060. Sender: std-unix@tic.com
  6061. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  6062. Organization: Xenix Support, FICC
  6063. Date: 24 Jun 90 20:20:50 GMT
  6064. Apparently-To: std-unix-archive@uunet.uu.net
  6065.  
  6066. From:  peter@ficc.uucp
  6067.  
  6068. In article <729@longway.TIC.COM> From: David J. MacKenzie <djm@eng.umd.edu>
  6069. > Parseargs has a lot of problems; I looked at it and discarded it.
  6070.  
  6071. On the other hand, I looked at it and fixed them. Check comp.sources.misc.
  6072.  
  6073. > It
  6074. > might provide a superior interface to the programmer, but it doesn't
  6075. > provide the same interface to the user; that is, it doesn't conform to
  6076. > the standard Unix option syntax that most programs use (allowing
  6077. > ganging of multiple single-letter options into a single argument, for
  6078. > example).
  6079.  
  6080. Actually, it does do this. You shoulda looked harder. What it doesn't do
  6081. is handle variable nubers of arguments, which is one thing I fixed.
  6082.  
  6083. > Since getopt is an existing-practice de-facto standard, I
  6084. > see no justification for trying to push something quite different that
  6085. > hardly anyone uses as an IEEE standard.
  6086.  
  6087. Given the things that have already gone in to POSIX, even the almighty
  6088. base (such as fgetpos, or banning silent truncation of long file names)
  6089. I think that's a bit of a quibble. Getopt pretty much has to stay, I
  6090. agree. But parseargs should be considered as a recommended alternative.
  6091. -- 
  6092. Peter da Silva.   `-_-'
  6093. +1 713 274 5180.
  6094. <peter@ficc.ferranti.com>
  6095.  
  6096.  
  6097. Volume-Number: Volume 20, Number 49
  6098.  
  6099. From jsq@tic.com  Wed Jun 27 03:44:15 1990
  6100. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  6101.     id AA07398; Wed, 27 Jun 90 03:44:15 -0400
  6102. Posted-Date: 24 Jun 90 01:47:10 GMT
  6103. Received: by cs.utexas.edu (5.64/1.63)
  6104.     id AA25256; Wed, 27 Jun 90 02:44:11 -0500
  6105. Received: by longway.tic.com (4.22/tic.1.2)
  6106.     id AA00077; Tue, 26 Jun 90 17:51:35 cdt
  6107. From: Shane McCarron <ahby@uinj.UI.ORG>
  6108. Newsgroups: comp.std.unix
  6109. Subject: Re: Standards Update, IEEE 1003.5: Ada bindings
  6110. Message-Id: <738@longway.TIC.COM>
  6111. References: <732@longway.TIC.COM>;
  6112. Sender: std-unix@tic.com
  6113. Reply-To: std-unix@uunet.uu.net
  6114. Date: 24 Jun 90 01:47:10 GMT
  6115. Apparently-To: std-unix-archive@uunet.uu.net
  6116.  
  6117. From:  ahby@uinj.UI.ORG (Shane McCarron)
  6118.  
  6119. > From:  Doug Gwyn <gwyn@smoke.brl.mil>
  6120. > Correct me if I'm mistaken, but I thought the specific task of
  6121. > 1003.5 was to provide Ada-language bindings to 1003.1, not to
  6122. > add functionality.
  6123.  
  6124. Remember the history of POSIX.1.  We have a standard which should have
  6125. been specified in a language independent manner.  If that had been
  6126. done, a number of the functions that are in the standard would not be
  6127. there, or would be in the C bindings section.  They are convenience
  6128. functions for C.  Likewise, there will be convenience functions for
  6129. other languages.  Ada is particularly nasty, for all the obvious
  6130. reasons.
  6131.  
  6132. Someday there will be a language independent 1003.1 specification.  It
  6133. will detail the real functionality of the underlying system in such a
  6134. way that it will be clear to people doing language bindings which
  6135. features they must include.  Until then, there will continue to be
  6136. confusion on the subject.
  6137.  
  6138. -- 
  6139. Shane P. McCarron            ATT:    +1 201 263-8400 x232
  6140. Project Manager                UUCP:    mccarron@uiunix.ui.org
  6141.  
  6142. Volume-Number: Volume 20, Number 50
  6143.  
  6144. From jsq@tic.com  Wed Jun 27 16:55:34 1990
  6145. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  6146.     id AA03432; Wed, 27 Jun 90 16:55:34 -0400
  6147. Posted-Date: 27 Jun 90 12:14:08 GMT
  6148. Received: by cs.utexas.edu (5.64/1.64)
  6149.     id AA26591; Wed, 27 Jun 90 15:55:27 -0500
  6150. Received: by longway.tic.com (4.22/tic.1.2)
  6151.     id AA01608; Wed, 27 Jun 90 13:41:04 cdt
  6152. From: Doug Gwyn <gwyn@smoke.brl.mil>
  6153. Newsgroups: comp.std.unix
  6154. Subject: Re: Standards Update, IEEE 1003.5: Ada bindings
  6155. Message-Id: <739@longway.TIC.COM>
  6156. References: <732@longway.TIC.COM> <738@longway.TIC.COM>
  6157. Sender: std-unix@tic.com
  6158. Reply-To: std-unix@uunet.uu.net
  6159. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  6160. Date: 27 Jun 90 12:14:08 GMT
  6161. Apparently-To: std-unix-archive@uunet.uu.net
  6162.  
  6163. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  6164.  
  6165. In article <738@longway.TIC.COM> From: ahby@uinj.UI.ORG (Shane McCarron)
  6166. >Remember the history of POSIX.1.  We have a standard which should have
  6167. >been specified in a language independent manner.  If that had been
  6168. >done, a number of the functions that are in the standard would not be
  6169. >there, or would be in the C bindings section.  They are convenience
  6170. >functions for C.  Likewise, there will be convenience functions for
  6171. >other languages.  Ada is particularly nasty, for all the obvious
  6172. >reasons.
  6173.  
  6174. I DO remember the history of 1003.1; I was there!  We most certainly
  6175. did NOT set out to create a language-independent standard; C was
  6176. specifically chosen for the obvious reason that it was the SOLE
  6177. appropriate language for systems-level programming on UNIX, for a
  6178. variety of reasons, including the fact that the UNIX kernel has a
  6179. marked preference for being fed C data types.
  6180.  
  6181. This "language binding" nonsense was foisted off on P1003 in an
  6182. attempt to meet ISO guidelines.  I think it must have been adopted
  6183. by ISO as the result of Pascal types insisting that they never have
  6184. to use any other language.
  6185.  
  6186. Clearly, a BASIC, COBOL, or even LISP binding to 1003.1 would be
  6187. ludicrous.  I don't know how languages are selected for binding,
  6188. but I do know what constitutes a UNIX system interface, and if a
  6189. language can support one then that is what it should be given as a
  6190. 1003.1 binding.
  6191.  
  6192. Volume-Number: Volume 20, Number 51
  6193.  
  6194. From jsq@tic.com  Wed Jun 27 16:56:06 1990
  6195. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  6196.     id AA03583; Wed, 27 Jun 90 16:56:06 -0400
  6197. Posted-Date: 27 Jun 90 12:00:46 GMT
  6198. Received: by cs.utexas.edu (5.64/1.64)
  6199.     id AA26602; Wed, 27 Jun 90 15:55:37 -0500
  6200. Received: by longway.tic.com (4.22/tic.1.2)
  6201.     id AA01678; Wed, 27 Jun 90 13:51:51 cdt
  6202. From: Doug Gwyn <gwyn@smoke.brl.mil>
  6203. Newsgroups: comp.std.unix
  6204. Subject: Re: Question about file offsets
  6205. Message-Id: <740@longway.TIC.COM>
  6206. References: <735@longway.TIC.COM>
  6207. Sender: std-unix@tic.com
  6208. Reply-To: std-unix@uunet.uu.net
  6209. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  6210. Date: 27 Jun 90 12:00:46 GMT
  6211. Apparently-To: std-unix-archive@uunet.uu.net
  6212.  
  6213. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  6214.  
  6215. In article <735@longway.TIC.COM> From: Paul Rabin <rabin@osf.org>
  6216. >Section 6.5.3.4 specifies that lseek() returns EINVAL if the resulting 
  6217. >file offset would be invalid, but it doesn't say which file offsets
  6218. >are invalid.
  6219.  
  6220. That's right; it would be overspecification to try to spell out which
  6221. file offsets are required to be valid.
  6222.  
  6223. >    An illegal file offset that would cause [EINVAL] to be
  6224. >    returned may be both implementation defined and device
  6225. >    dependent (for example, memory may have few illegal values).
  6226. >    A negative file offset may be legal for some devices in
  6227. >    some implementations.
  6228.  
  6229. The rationale is also right.
  6230.  
  6231. >The standard does not specify an error for I/O operations attempted at
  6232. >an illegal offset. It _seems_ that the intent is for an offset to be legal
  6233. >only if some I/O operation is possible at that offset, and for it to be
  6234. >impossible to set an illegal offset.  This is not changed in the 1990
  6235. >revision of the standard or in the P1003.1b supplement.
  6236.  
  6237. I/O even at a valid offset may nonetheless fail, depending on the type
  6238. of file and on various circumstances.  It is certainly the intent of a
  6239. successful lseek() that under appropriate circumstances a subsequent
  6240. I/O operation MIGHT succeed, but it is not required.  (Consider lseek()
  6241. to the end of a non-extendable file.)
  6242.  
  6243. >Some implementations do permit lseek() to set "illegal" file offsets,
  6244. >and some applications take advantage of this.  Does anyone know whether
  6245. >the original members of the 1003.1 working group intended to permit this?
  6246.  
  6247. If lseek() reports failure, the attempted offset should not stick.
  6248. Otherwise, it should.  The absolute offset may be negative and succeed
  6249. for some file types; this was intentional.  For example, on a process
  6250. opened as a file a negative offset may be useful to access registers and
  6251. the u-area.
  6252.  
  6253. >Does anyone have an implementation that returns [EINVAL] if the
  6254. >file offset resulting from lseek() is negative, or positive and "too
  6255. >large"?  Are file offsets represented in your kernel by a signed or an
  6256. >unsigned type?
  6257.  
  6258. On 4.3BSD, lseek() to a negative absolute offset on an ordinary file
  6259. reports success and returns the (negative) absolute offset.  This is
  6260. probably a bug rather than a feature, since I'm sure no valid data can
  6261. be returned from the negative bytes of an ordinary file.
  6262.  
  6263. Volume-Number: Volume 20, Number 52
  6264.  
  6265. From jsq@tic.com  Thu Jun 28 15:39:10 1990
  6266. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  6267.     id AA08943; Thu, 28 Jun 90 15:39:10 -0400
  6268. Posted-Date: 27 Jun 90 12:41:55 GMT
  6269. Received: by cs.utexas.edu (5.64/1.65)
  6270.     id AA13723; Thu, 28 Jun 90 14:39:04 -0500
  6271. Received: by longway.tic.com (4.22/tic.1.2)
  6272.     id AA05245; Thu, 28 Jun 90 12:17:32 cdt
  6273. From: Chip Salzenberg <tct!chip@cs.utexas.edu>
  6274. Newsgroups: comp.std.unix
  6275. Subject: Re: parseargs vs. getopt
  6276. Message-Id: <741@longway.TIC.COM>
  6277. References: <728@longway.TIC.COM> <729@longway.TIC.COM> <733@longway.TIC.COM>
  6278. Sender: std-unix@tic.com
  6279. Reply-To: std-unix@uunet.uu.net
  6280. Organization: ComDev/TCT, Sarasota, FL
  6281. Date: 27 Jun 90 12:41:55 GMT
  6282. Apparently-To: std-unix-archive@uunet.uu.net
  6283.  
  6284. From:  chip@tct.uucp (Chip Salzenberg)
  6285.  
  6286. According to darcy@druid.uucp (D'Arcy J.M. Cain):
  6287. >[Getarg] support[s] extra functionality which can be used if the user
  6288. >is aware of it.  For one thing, options and arguments (files) can be
  6289. >mixed instead of requiring all options to precede the files.
  6290.  
  6291. Consider:
  6292.  
  6293.     rm ./-a -b -c -d -e -f
  6294.  
  6295. With getopt, all five arguments are filenames.  With getarg, the first
  6296. argument is a filename and the rest are options.  This is a feature?
  6297. No thanks.
  6298.  
  6299. -- 
  6300. Chip Salzenberg at ComDev/TCT     <chip@tct.uucp>, <uunet!ateng!tct!chip>
  6301.  
  6302. Volume-Number: Volume 20, Number 53
  6303.  
  6304. From jsq@tic.com  Thu Jun 28 15:39:19 1990
  6305. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  6306.     id AA08971; Thu, 28 Jun 90 15:39:19 -0400
  6307. Posted-Date: 27 Jun 90 15:32:10 GMT
  6308. Received: by cs.utexas.edu (5.64/1.65)
  6309.     id AA13736; Thu, 28 Jun 90 14:39:16 -0500
  6310. Received: by longway.tic.com (4.22/tic.1.2)
  6311.     id AA05324; Thu, 28 Jun 90 12:22:37 cdt
  6312. From: Leslie Giles <codex!lezz@cs.utexas.edu>
  6313. Newsgroups: comp.std.unix
  6314. Subject: Re: parseargs vs. getopt
  6315. Message-Id: <742@longway.TIC.COM>
  6316. References: <378@usenix.ORG> <728@longway.TIC.COM> <729@longway.TIC.COM> <733@longway.TIC.COM>
  6317. Sender: std-unix@tic.com
  6318. Reply-To: std-unix@uunet.uu.net
  6319. Organization: Codex Corp., Canton MA
  6320. Date: 27 Jun 90 15:32:10 GMT
  6321. Apparently-To: std-unix-archive@uunet.uu.net
  6322.  
  6323. From:  lezz@codex.uucp (Leslie Giles)
  6324.  
  6325. darcy@druid.uucp (D'Arcy J.M. Cain) writes:
  6326.  
  6327. >You might like my getarg function.  I designed it as a replacement for
  6328. >   ... You can
  6329. >also initialise the argument list more than once supporting things such
  6330. >as environment default command lines, arguments from files etc mixed
  6331. >with arguments from the command line.  I just posted it recently to
  6332. >alt.sources and I'm interested in getting some feedback on it.
  6333.  
  6334. It is also possible to restart getopt() by setting various variables.
  6335. I did this in some code to support defaults, as mentioned above.  If anybody
  6336. wants to know how to do this then you can mail me (I don't have the code in
  6337. front of me at the moment - it'd take time to find it) at...
  6338.  
  6339. codex!lezz
  6340.  
  6341. Volume-Number: Volume 20, Number 54
  6342.  
  6343. From uucp@tic.com  Thu Jun 28 16:59:49 1990
  6344. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  6345.     id AA28596; Thu, 28 Jun 90 16:59:49 -0400
  6346. Posted-Date: 28 Jun 90 18:20:43 GMT
  6347. Received: by cs.utexas.edu (5.64/1.65)
  6348.     id AA19186; Thu, 28 Jun 90 15:59:39 -0500
  6349. Received: by longway.tic.com (4.22/tic.1.2)
  6350.     id AA06448; Thu, 28 Jun 90 15:04:01 cdt
  6351. From: <jsh@usenix.org>
  6352. Newsgroups: comp.std.unix
  6353. Subject: Standards Update, IEEE 1003.6: Security
  6354. Message-Id: <384@usenix.ORG>
  6355. Sender: std-unix@usenix.ORG
  6356. Reply-To: std-unix@uunet.uu.net
  6357. Date: 28 Jun 90 18:20:43 GMT
  6358. Apparently-To: std-unix-archive@uunet.uu.net
  6359.  
  6360. From:  <jsh@usenix.org>
  6361.  
  6362.            An Update on UNIX*-Related Standards Activities
  6363.  
  6364.                               June, 1990
  6365.  
  6366.                  USENIX Standards Watchdog Committee
  6367.  
  6368.                    Jeffrey S. Haemer, Report Editor
  6369.  
  6370. IEEE 1003.6: Security
  6371.  
  6372. An anonymous source reports on the April 23-27 meeting in Salt Lake
  6373. City, UT:
  6374.  
  6375. Apologia
  6376.  
  6377. This is my first and last review as a snitch.  [ Editor: We thank you
  6378. for doing it, and hope your circumstances change to allow you to file
  6379. more.  ] In it, you'll see no party line.  My views will sometimes be
  6380. controversial, and I hope they spark discussion and feedback.  They
  6381. represent neither the views of my company nor of its clients -- I'm
  6382. submitting this anonymously so no one can misconstrue them as being my
  6383. company's -- and they're certainly not meant to represent the
  6384. consensus of the 1003.6 Working Group.
  6385.  
  6386. I'll put my biases on the table.  I'm a commercial user and commercial
  6387. software provider, not a government user, government software
  6388. provider, or UNIX vendor.  To some degree, these biases have
  6389. influenced the committee, since I've been active in the group since
  6390. its inception and attended every 1003.6 meeting.  With that
  6391. perspective, let's begin.
  6392.  
  6393. 1.  Overview
  6394.  
  6395. The 1003.6 Working Group is putting together a Department-of-Defense-
  6396. inspired version of UNIX.  Our efforts will help vendors sell systems
  6397. to the U.S. Government and its contractors.  All our interfaces will
  6398. make it easier to evaluate conforming systems at one of the DoD's
  6399. Trusted Computer Security Evaluation Criteria (TCSEC) levels.  This is
  6400. not inherently bad, but it does sell the commercial and international
  6401. communities short.  (More on this later.)
  6402.  
  6403. The working group is considering four areas: Discretionary Access
  6404. Control (DAC), Mandatory Access Control (MAC), Least Privilege, and
  6405. Audit.
  6406.  
  6407. __________
  6408.  
  6409.   * UNIX is a registered trademark of AT&T in the U.S. and other
  6410.     countries.
  6411.  
  6412. June, 1990 Standards Update                      IEEE 1003.6: Security
  6413.  
  6414.  
  6415.                 - 2 -
  6416.  
  6417. 1.1  Discretionary Access Control
  6418.  
  6419. The DAC group's job is hard.  They are devising an Access Control List
  6420. (ACL) mechanism that must co-exist with the familiar user/group/other
  6421. mechanism.  ACLs are discretionary because the user, not the system,
  6422. decides each object's access rights.  The traditional user/group/other
  6423. mechanism is also discretionary: file protections are specified by the
  6424. user.  ACLs extend this by allowing users to grant different access
  6425. permissions to arbitrary lists of named users and groups.  (In other
  6426. words, the traditional mechanism is an ACL with exactly three
  6427. entries.) Designing an ACL is easy; maintaining compatibility with
  6428. chmod, stat, umask, and the file creation mask of creat isn't.
  6429.  
  6430. 1.2  Mandatory Access Control
  6431.  
  6432. MAC is another type of access control mechanism.  All system objects
  6433. get a security label and all system users have a security
  6434. classification set by the system or the Security Administrator
  6435. (Systems Administrator).  Users have no control over this mechanism's
  6436. application; objects created by a user of classification X
  6437. automatically receive a security label of X.  Only users with
  6438. appropriate classifications can access or modify a system object.  (As
  6439. a useful, if inexact, analogy, think of the way UNIX automatically
  6440. assigns file ownerships.)
  6441.  
  6442. The TCSEC security criteria's popularity and widespread acceptance
  6443. have given MAC another connotation -- that of a codification of the
  6444. familiar, U.S.-government, hierarchical security classifications: Top
  6445. Secret, Classified, and Unclassified.  Government policy prohibits
  6446. users of a lower classification from viewing work of a higher
  6447. classification.  Conversely, users at a high classification may not
  6448. make their work available to users at a lower classification: one can
  6449. neither ``read up'' nor ``write down.'' There are also compartments
  6450. within each classification level, such as NATO, nuclear, DOE, or
  6451. project X.  Access requires the proper level and authorization for all
  6452. compartments associated with the resource.  The MAC group is defining
  6453. interfaces for such a mandatory mechanism.  It's not as confusing as
  6454. it sounds, but outside of the DoD it is as useless as it sounds.
  6455. (Prove me wrong.  Show me how this DoD policy is useful in a
  6456. commercial environment.)
  6457.  
  6458. 1.3  Least Privilege
  6459.  
  6460. The Least Privilege group is eliminating root.  They're creating both
  6461. a list of privileges to encompass all of root's special uses, (e.g.,
  6462. set-uid to a different user-id, create a directory, create a file
  6463. system, override DAC protection) and a mechanism to inherit, assign,
  6464. and enable those privileges.
  6465.  
  6466. June, 1990 Standards Update                      IEEE 1003.6: Security
  6467.  
  6468.  
  6469.                 - 3 -
  6470.  
  6471. 1.4  Audit
  6472.  
  6473. The Audit group is preparing a standard interface for a logging
  6474. mechanism, a standard format for logging records, and a list of system
  6475. calls and commands to log.
  6476.  
  6477. 2.  Standards
  6478.  
  6479. At the ISO level, there will be no separate security standard.  Our
  6480. work will be merged with the 1003.1 (System Interface), 1003.2
  6481. (Commands and Utilities), and 1003.7 (System Administration) work in
  6482. the ISO 9945-1, -2, and -3 standards.  This means every conforming
  6483. system will include security mechanisms.  I like this.  Do you?
  6484.  
  6485. 3.  Scope and motivation
  6486.  
  6487. All 1003.6 members feel we are making POSIX secure, not merely helping
  6488. sell systems to the U.S. government.  Our work is important and
  6489. necessary (except, of course, MAC), but I think our focus has been too
  6490. narrow.  We included mechanisms for the TCSEC criteria but stopped
  6491. there.  We haven't sought out the work of other countries.  We haven't
  6492. considered the work being done in international standards bodies such
  6493. as ISO and CCITT.  We haven't explicitly considered commercial users.
  6494. We've limited ourselves to helping provide TCSEC-conforming systems.
  6495. Many of us believe that the TCSEC criteria are good for commercial
  6496. applications.  Is that hopeful claim just self-serving?  We don't
  6497. know.  I wish eminent computer scientists and researchers had gotten
  6498. together to study the needs of commercial users and drawn up an
  6499. independent set of commercial security requirements.  But they didn't.
  6500.  
  6501. Kevin Murphy, of British Telecom, is the ISO/IEC JTC1/SC22/WG15
  6502. security rapporteur -- he formally represents the international
  6503. community's concerns and views.  In January, Kevin brought several of
  6504. these to the working group's attention, including our TCSEC biases and
  6505. lack of attention to ISO activities.  The international set seems to
  6506. consider the document's constant references to the TCSEC work
  6507. provincial and inconsiderate of other countries' requirements.  They
  6508. also feel we should be more aware and accepting of ISO terminology in
  6509. the document.  Kevin also says our scope is too limited in the CCITT
  6510. X.400 and X.500 areas.
  6511.  
  6512. 4.  Snowbird
  6513.  
  6514. June, 1990 Standards Update                      IEEE 1003.6: Security
  6515.  
  6516.  
  6517.                 - 4 -
  6518.  
  6519. 4.1  Plenary
  6520.  
  6521. The meeting opened with a short plenary session.  This time, the first
  6522. topic of discussion was the progress of the 1003.6 draft document.
  6523. Mike Ressler, of Bellcore, accepted the position of technical editor
  6524. and brought a new draft of 1003.6, which contained work of all but the
  6525. Audit subgroup.  In addition, an electronic copy of the document was
  6526. available for the subgroups to modify and update during the meeting.
  6527. The technical editor position had been open since October.  No draft
  6528. was available during this time, which worried us since it prevented us
  6529. from setting any realistic completion date.  With a draft in hand and
  6530. a technical editor we now project completion in April, 1991.
  6531.  
  6532. Charlie Testa's absence meant we lacked our usual, detailed report on
  6533. TRUSIX.  (TRUSIX is a DoD-sponsored organization made up of the
  6534. National Computer Security Center, AT&T, and several other companies.)
  6535. Rick Sibenaler and Shaun Rovansek, of the NCSC, gave us a brief
  6536. update, reporting that the audit rationale will be available at the
  6537. July POSIX meeting and that select experts are now reviewing the draft
  6538. version of their formal model, which is written in a formal
  6539. verification language, INA JO.
  6540.  
  6541. Some of the work of TRUSIX augments the work of 1003.6 --  pursuit of
  6542. a formal security model and descriptive, top-level specification, and
  6543. a mapping between them, for example -- but some overlaps.  I'm still
  6544. puzzled over why TRUSIX has pursued audit and DAC mechanisms when
  6545. 1003.6 is doing the same work.  (Another challenge: can anyone out
  6546. there tell me?) To their credit, TRUSIX is accomplishing their goals
  6547. much faster than 1003.6.  For example, Charlie reported in January
  6548. that the TRUSIX DAC work is already complete.  This speed may be at
  6549. the expense of POSIX, since many very good people in both
  6550. organizations are forced to split time between the two unnecessarily.
  6551.  
  6552. Mike Ressler reported on the networking/administration/security
  6553. liaison group, which spends an afternoon at every POSIX meeting
  6554. discussing mutual concerns of these three independent working groups.
  6555. Here are the liaison group's goals, in areas of our common interest:
  6556.  
  6557.    + identify areas of overlapping or missing coverage,
  6558.  
  6559.    + provide an interface to ISO, ECMA, CCITT, and other international
  6560.      bodies, and
  6561.  
  6562.    + exchange ideas and discuss related issues.
  6563.  
  6564. Peter Cordsen, of DataCentralen (Denmark), presented Danish security
  6565. requirements.  They define three levels of sensitivity, with criminal
  6566. data among the most sensitive.  There was no specific comparison to
  6567. either the U.S. TCSEC or the emerging European security criteria.
  6568. Peter suggested that the security working group begin addressing
  6569. authentication, a position that received much support from other
  6570. representatives.
  6571.  
  6572. June, 1990 Standards Update                      IEEE 1003.6: Security
  6573.  
  6574.  
  6575.                 - 5 -
  6576.  
  6577. 4.2  Draft work
  6578.  
  6579. After the plenary, we worked on the document in subgroups.
  6580.  
  6581. 4.2.1  Discretionary_Access_Control_(DAC)  The group put together a
  6582. new outline for the general and introductory sections of the draft and
  6583. rewrote those sections to follow the new outline.  They also resolved
  6584. several issues:
  6585.  
  6586.    + There will be only one type of default ACL, not the previously
  6587.      planned separate types for regular files and directories.
  6588.  
  6589.    + A mask entry type has been added to provide a mechanism that
  6590.      temporarily overrides all other entries without actually changing
  6591.      their values or deleting them from the ACL.  The feature also
  6592.      fits nicely with the current plan for ACL interaction with the
  6593.      old POSIX permission bits.
  6594.  
  6595.    + The user model for both default and actual ACLs will be the same.
  6596.      (The internal representations are undefined.) System interfaces
  6597.      will be the same, too.  A flag will be added to any interfaces
  6598.      that need to be able to distinguish the two.
  6599.  
  6600. 4.3  Audit
  6601.  
  6602. Olin Sibert, of Sun, presented a new, ``compromise'' audit proposal,
  6603. based on an earlier one by Kevin Brady, of AT&T, and Doug Steves, of
  6604. IBM, which he thought resolved some of the earlier work's problems.
  6605. The working group accepted Olin's proposal with minor changes and
  6606. incorporated it into Draft 6, which was distributed in the IEEE May
  6607. mailing.
  6608.  
  6609. 4.4  Mandatory Access Control (MAC)
  6610.  
  6611. Since Kevin Brady, the MAC chair, was participating in the Audit
  6612. discussion, and Chris Hughes, of ICL, the acting chair, was also
  6613. absent, Joe Bulger, of NCSC, ran the meeting.  It is still unclear who
  6614. will chair the MAC subgroup.
  6615.  
  6616. Through the joint efforts of Bellcore and AT&T, the MAC draft had been
  6617. translated from a proprietary, word-processor format into the
  6618. [n|t]roff + POSIX-macro format required for inclusion in the draft
  6619. standard.  The MAC draft's contents had been stable for several
  6620. meetings, so the group spent the entire week changing the document.
  6621.  
  6622. This group seems to be having the most difficulty getting its job
  6623. done.  There doesn't seem to be as much discussion and active
  6624. participation in the MAC group as the others.
  6625.  
  6626. June, 1990 Standards Update                      IEEE 1003.6: Security
  6627.  
  6628.  
  6629.                 - 6 -
  6630.  
  6631. 4.5  Privileges
  6632.  
  6633. No functional changes were made to the privileges material at this
  6634. meeting, but significant changes were made to the rationale.  The
  6635. group also firmed up concepts and disambiguated functional
  6636. ambiguities.
  6637.  
  6638. 4.6  Networking, Administration, and Security Liaison
  6639.  
  6640. The networking/administration/security liaison group held its second
  6641. meeting Wednesday afternoon.  The meeting, chaired by Mike Ressler,
  6642. started by reviewing the group's scope and goals.
  6643.  
  6644. Since there had been no ISO meeting since the January POSIX meeting,
  6645. Yvon Klein, of Group Bull (France), didn't have anything new to say
  6646. about ISO's security activities.
  6647.  
  6648. As part of the group's continuing efforts to and identify problem
  6649. areas, the system administration group and two networking groups gave
  6650. presentations on their work.  Steve Carter, of Bellcore, presented the
  6651. scope and charter of the system administration group, 1003.7, and
  6652. explained their use of an object-oriented paradigm.  Jim Oldroyd, of
  6653. the Instruction Set, followed this by presenting the work of 1003.7's
  6654. interoperability subgroup.
  6655.  
  6656. Kester Fong, of General Motors, gave an overview of the FTAM group.
  6657. He left us with the impression that there wasn't much room for
  6658. collaboration, but we'll surely need to review the relationship
  6659. between the file-system's security semantics and those of FTAM.
  6660.  
  6661. Jason Zions, of HP, gave one of the most interesting and aggressive
  6662. presentations of the day, on the work of the Transparent File Access
  6663. Group, which included a preliminary list of issues that 1003.8 feels
  6664. need to be reviewed.
  6665.  
  6666. Finally, David Rogers, of ICL (Britain), gave a presentation on the
  6667. European security criteria.  He predicted harmonization by June, 1990
  6668. of the work of Britain, France, Germany, and Holland.  The European
  6669. criteria will define separate levels of functionality and assurance.
  6670. There will be ten classes of functionality.  The first five are
  6671. hierarchical and are similar to the U.S. Orange-Book criteria; the
  6672. remaining five address particular security needs, such as integrity,
  6673. availability, and networks.  There are seven classes of assurance.  A
  6674. product evaluated under these criteria is likely to receive a rating
  6675. from the first five functional classes, one or more of the next five
  6676. functional classes, and an assurance rating.
  6677.  
  6678. June, 1990 Standards Update                      IEEE 1003.6: Security
  6679.  
  6680.  
  6681.                 - 7 -
  6682.  
  6683. 4.7  Final Comments
  6684.  
  6685. With the short plenary session, the availability of the draft document
  6686. in electronic form, and the presence of many lap-top systems to work
  6687. on, this meeting was one of our most productive.  The group seems to
  6688. have picked up enthusiasm from the knowledge that our work is coming
  6689. together and the end is in sight.
  6690.  
  6691. June, 1990 Standards Update                      IEEE 1003.6: Security
  6692.  
  6693. Volume-Number: Volume 20, Number 55
  6694.  
  6695. From uucp@tic.com  Thu Jun 28 18:15:17 1990
  6696. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  6697.     id AA24519; Thu, 28 Jun 90 18:15:17 -0400
  6698. Posted-Date: 28 Jun 90 18:34:23 GMT
  6699. Received: by cs.utexas.edu (5.64/1.65)
  6700.     id AA25755; Thu, 28 Jun 90 17:15:02 -0500
  6701. Received: by longway.tic.com (4.22/tic.1.2)
  6702.     id AA06579; Thu, 28 Jun 90 16:10:59 cdt
  6703. From: <jsh@usenix.org>
  6704. Newsgroups: comp.std.unix
  6705. Subject: Standards Update, IEEE 1003.1: System services interface
  6706. Message-Id: <385@usenix.ORG>
  6707. Sender: std-unix@usenix.ORG
  6708. Reply-To: std-unix@uunet.uu.net
  6709. Date: 28 Jun 90 18:34:23 GMT
  6710. Apparently-To: std-unix-archive@uunet.uu.net
  6711.  
  6712. From:  <jsh@usenix.org>
  6713.  
  6714.            An Update on UNIX*-Related Standards Activities
  6715.  
  6716.                               June, 1990
  6717.  
  6718.                  USENIX Standards Watchdog Committee
  6719.  
  6720.                    Jeffrey S. Haemer, Report Editor
  6721.  
  6722. IEEE 1003.1: System services interface
  6723.  
  6724. Paul Rabin <rabin@osf.org> reports on the April 23-27 meeting in Salt
  6725. Lake City, UT:
  6726.  
  6727. 1.  Introduction
  6728.  
  6729. The POSIX 1003.1 working group is the oldest POSIX group, responsible
  6730. for specifying general-purpose operating system interfaces for
  6731. portable applications.  This group developed the original 1988 POSIX
  6732. standard, and is now responsible for writing supplements and revisions
  6733. to that standard.  This work includes
  6734.  
  6735.    + corrections and clarifications to the 1988 POSIX standard
  6736.  
  6737.    + material that was too controversial to handle before
  6738.  
  6739.    + new interfaces requested by other POSIX working groups
  6740.  
  6741. Like other working groups developing ``base standards,'' the 1003.1
  6742. working group is responsible for writing both C language and
  6743. language-independent versions of the specifications that it develops.
  6744. So far, the group has concentrated on the C language versions, but
  6745. there is increasing pressure to make progress on the language-
  6746. independent specifications.
  6747.  
  6748. The working group recently completed a revision of the 1988 POSIX
  6749. standard, and is currently working on a supplement to that revision.
  6750.  
  6751. There has been a lot of turnover in the group since the 1988 POSIX
  6752. standard was completed, but there are still a few old-timers to
  6753. provide continuity.  About 15 people attended the last two meetings.
  6754. This seems to be a good size for getting work done.  This is
  6755. definitely a technical crowd; check your politics at the door.
  6756.  
  6757. For more information about the group and how to participate, contact
  6758. the chair, Donn Terry, at donn@hpfcla.fc.hp.com or hplabs!hpfcla!donn.
  6759.  
  6760. __________
  6761.  
  6762.   * UNIXTM is a Registered Trademark of UNIX System Laboratories in
  6763.     the United States and other countries.
  6764.  
  6765. June, 1990 Standards Update     IEEE 1003.1: System services interface
  6766.  
  6767.  
  6768.                 - 2 -
  6769.  
  6770. Send comments and proposals to the secretary, Keith Stuck, at
  6771. keith@sp7040.uucp.  I've made this report a bit more detailed than
  6772. usual in order to give the technical details wider exposure.  New
  6773. proposals, and comments on any of the current active proposals or
  6774. issues are welcome.
  6775.  
  6776. 2.  1003.1a Status
  6777.  
  6778. 1003.1a is the recently completed revision to the 1988 POSIX standard.
  6779. No new interfaces or features were introduced, but the text was
  6780. revised in several ways.  The main reason for the revision was to
  6781. prepare the text for balloting as an ISO standard, so the document had
  6782. to be made to look like an ISO standard.  This meant adding ISO
  6783. boiler-plate, changing external document references to pretend that
  6784. only standards exist, changing internal cross-references so that
  6785. chapters are renamed sections, and sections are renamed clauses and
  6786. subclauses, changing ``will'' to ``shall,'' etc., ad nauseam.  While
  6787. the working group was having fun with all that, they took the
  6788. opportunity to do some cleaning up.  They corrected errors, clarified
  6789. unclear language, and changed the function synopses to use ANSI C
  6790. prototypes.  The group did make one normative change, which was to
  6791. specify reserved namespaces.  This will allow implementations and
  6792. revisions to the standard to define extensions without breaking
  6793. existing, conforming applications.  It's messier than you might think.
  6794.  
  6795. After four recirculation ballots, IEEE balloting was completed in
  6796. April.  Now it has to get through the ISO balloting process.  See the
  6797. recent snitch report on 1003.5 for a description of how IEEE and ISO
  6798. balloting is synchronized, and what all of the acronyms mean.
  6799.  
  6800. ISO has been balloting 1003.1a as ISO/IEC DIS 9945-1.  After the first
  6801. ISO ballot, JTC1 approved 9945-1 for promotion to full IS status.
  6802. This approval was overruled by the ISO Central Secretariat on the
  6803. grounds that the document format was still not satisfactory (still
  6804. haven't caught all of those ``will''s).  Rather than publish the
  6805. current document and then immediately revise, ballot, and publish it
  6806. again, it was decided to create a new DIS and to start a second round
  6807. of ISO balloting.  This will cause a delay in the publication of the
  6808. international POSIX standard (and hence also the IEEE POSIX.1
  6809. standard).  The U.S. Technical Advisory Group (TAG) is responsible for
  6810. generating the U.S. ballot.  Assuming that no normative changes are
  6811. introduced by the ISO balloting process, the resulting document will
  6812. be published by IEEE as IEEE Std 1003.1-1990.
  6813.  
  6814. June, 1990 Standards Update     IEEE 1003.1: System services interface
  6815.  
  6816.  
  6817.                 - 3 -
  6818.  
  6819. 3.  1003.1b Status
  6820.  
  6821. Since 1003.1a is now out of IEEE's hands, the working group spent the
  6822. Utah meeting working on 1003.1b, the first supplement to 1003.1a.
  6823. This will include some corrections and clarifications that didn't make
  6824. it into 1003.1a, but will mainly consist of new interfaces and
  6825. features.
  6826.  
  6827. 1003.1b has been in the works for several meetings, so the draft
  6828. already contains a lot of material.  The first day was devoted to
  6829. revision of the draft, the rest of the week to considering new
  6830. proposals.  The previously announced schedule for 1003.1b specified
  6831. the Utah meeting as the cutoff date for new proposals.  Unfortunately,
  6832. some expected proposals were not received, and some that were received
  6833. were not ready for incorporation, so the cutoff was deferred until the
  6834. next meeting, in Danvers, Massachusetts.
  6835.  
  6836. Draft 2 of 1003.1b was distributed just before the meeting in Utah.
  6837. Draft 3 should be available before the Danvers meeting.  1003.1b is
  6838. expected to be approved sometime in early 1991, and to be published by
  6839. IEEE as a separate supplement to the IEEE Std 1003.1-1990.
  6840.  
  6841. 3.1  New Features in the Current Draft of 1003.1b
  6842.  
  6843. Draft 2 of P1003.1b includes a new data interchange format, and new
  6844. interface specifications for symbolic links, environment list access,
  6845. and file-tree walking.  These had been proposed and generally accepted
  6846. at previous meetings.  Many new issues were raised and discussed.
  6847.  
  6848. 3.1.1  Symbolic_Links  P1003.1b adds BSD symbolic links to the 1988
  6849. POSIX standard as a new required feature.  New interfaces for
  6850. symlink(), readlink(), and lstat() are specified, and the definition
  6851. of pathname resolution is amended to include the handling of symbolic
  6852. links.  Implementations may optionally enforce a limit on the number
  6853. of symbolic links that can be tolerated during the resolution of a
  6854. single pathname, for instance to detect loops.  The new symbol
  6855. {_POSIX_SYMLOOP} is defined to be the minimum value of such a limit.
  6856. A new error, [ELOOP], is returned if such a limit is exceeded.
  6857. Symbolic links that are encountered in pathname prefixes are always
  6858. resolved.  Symbolic links named by the final component of a pathname
  6859. will be resolved or not, depending on the particular interface.  By
  6860. default, such symbolic links will be resolved, unless specified
  6861. otherwise.  The interfaces that will not resolve symbolic links named
  6862. by pathname arguments are:
  6863.  
  6864.    + readlink()
  6865.      If the pathname argument names a symbolic link, the contents of
  6866.      the link will be returned.
  6867.  
  6868.    + lstat()
  6869.      If the pathname argument names a symbolic link, a stat structure
  6870.      will be returned for the link itself.
  6871.  
  6872. June, 1990 Standards Update     IEEE 1003.1: System services interface
  6873.  
  6874.  
  6875.                 - 4 -
  6876.  
  6877.    + unlink()
  6878.      If the pathname argument names a symbolic link, the link itself
  6879.      will be removed.
  6880.  
  6881.    + rmdir()
  6882.      If the pathname argument names a symbolic link, the link will not
  6883.      be followed and the call will fail.
  6884.  
  6885.    + open()
  6886.      Symbolic links are followed, unless both O_CREAT and O_EXCL are
  6887.      set.  If both O_CREAT and O_EXCL are set, and the pathname
  6888.      argument names an existing symbolic link, the link will not be
  6889.      followed and the call will fail.
  6890.  
  6891.    + link()
  6892.      If the new pathname names a symbolic link, the link will not be
  6893.      followed and the call will fail.  If the old pathname names a
  6894.      symbolic link, the link will be followed.  This is the BSD
  6895.      behavior.  SVR4.0 does not follow the link in this case, thus
  6896.      supporting hard links to symbolic links.  The working group felt
  6897.      that the SVR4 behavior unnecessarily restricts implementations
  6898.      (for instance, those that do not implement symbolic links with
  6899.      inodes), and has much more complex semantics.
  6900.  
  6901.    + rename()
  6902.      If the old pathname names a symbolic link, the link will not be
  6903.      followed.  Instead, the symbolic link itself will be renamed.  If
  6904.      the new pathname names a symbolic link, it will not be followed.
  6905.      Instead, the symbolic link will be removed, and a new hard link
  6906.      will be created naming the file that was previously named by the
  6907.      old pathname.
  6908.  
  6909.      The 1988 POSIX standard specifies that if the new pathname names
  6910.      an existing file, rename() will fail if the new and old pathnames
  6911.      do not either both name directories or both name non-directory
  6912.      files.  This rule needs to be expanded to include the case of the
  6913.      new pathname naming a symbolic link.  Should the rename() call
  6914.      fail depending on whether or not the symbolic link named by the
  6915.      new pathname itself names a directory or a non-directory file?
  6916.      This will be resolved at the next meeting.
  6917.  
  6918. Symbolic links are not required to have any attributes other than
  6919. their file type and their contents.  This is intended to provide the
  6920. simplest semantics and to allow the greatest latitude for
  6921. implementations.
  6922.  
  6923. 3.1.2  Other_BSD_Interfaces  P1003.1b also includes specifications for
  6924. the following interfaces:
  6925.  
  6926. June, 1990 Standards Update     IEEE 1003.1: System services interface
  6927.  
  6928.  
  6929.                 - 5 -
  6930.  
  6931.    + fchmod()
  6932.  
  6933.    + fchown()
  6934.  
  6935.    + fsync()
  6936.  
  6937.    + ftruncate()
  6938.  
  6939. 3.1.3  Environment_List  The ANSI-C standard defines the getenv()
  6940. function to retrieve the value corresponding to a given name in a
  6941. program's environment list, but does not specify the implementation or
  6942. initialization of that list.  The 1988 POSIX standard specified the
  6943. traditional list implementation using the external variable environ,
  6944. and specified the initialization of the list by the exec functions.
  6945. In an attempt to extend the set of high-level interfaces to the
  6946. environment list, and to pave the way for the possible eventual
  6947. removal of environ, the working group has included putenv() and
  6948. clearenv() interfaces in 1003.1b.  Three problems have been identified
  6949. with these high-level interfaces:
  6950.  
  6951.    + They cause static data to be shared between the application and
  6952.      the implementation.  Neither the application nor the
  6953.      implementation can easily manage the storage for environment
  6954.      "name=value" strings.
  6955.  
  6956.    + They are not robust.  The interactions between the high-level
  6957.      interfaces and access via environ is not specified.
  6958.  
  6959.    + They can't be easily extended to handle multiple lists.  There is
  6960.      no way to copy a list, or to build a new list for execle() or
  6961.      execve().
  6962.  
  6963. The putenv() and clearenv() interfaces may be removed from 1003.1b at
  6964. the next meeting if a revised proposal does not appear.
  6965.  
  6966. 3.1.4  File_Tree_Walk  The 1003.1 working group promised the 1003.2
  6967. group (Shell and Utilities) that a mechanism would be provided for
  6968. walking an directory tree of unbounded depth using any given (non-
  6969. zero) number of free file descriptors.  The Berkeley folks have
  6970. implemented a set of high-level interfaces defined by David Korn of
  6971. Bell Labs, and proposed them for inclusion in 1003.1b.  These
  6972. interfaces support every option and search order required by the
  6973. 1003.2 commands.  The 1003.1 group wants a simpler interface suitable
  6974. for typical application programs, so Keith Bostic will put the
  6975. proposal on a ``weight-reducing diet'' and resubmit it for the next
  6976. draft.
  6977.  
  6978. The high-level file-tree walk interfaces can be implemented using only
  6979. the existing 1003.1 interfaces.  Since 1003.1 does not define a
  6980. portable way to save and restore file position for a directory and
  6981. cannot hold a file descriptor open for each directory level, the
  6982.  
  6983. June, 1990 Standards Update     IEEE 1003.1: System services interface
  6984.  
  6985.  
  6986.                 - 6 -
  6987.  
  6988. implementation must read and save all directory entries each time a
  6989. new directory is visited.  This requires only a single file descriptor
  6990. (or whatever resource is used by by opendir()).  If the underlying
  6991. system does provide a way to save and restore file position for
  6992. directories, the file-tree walk implementation can use it to reduce
  6993. memory consumption.
  6994.  
  6995. There was a discussion about whether it is possible (and preferable)
  6996. to improve the low-level directory interfaces instead of adding new,
  6997. high-level interfaces.  Do the high-level interfaces really add new
  6998. functionality for portable applications?  Do they belong with the
  6999. low-level operating system interfaces specified in 1003.1?
  7000.  
  7001. Walking an unbounded file tree requires an unbounded number of
  7002. directory file positions to be supported using a bounded number of
  7003. file descriptors.  Either seekdir() and telldir() are needed, or an
  7004. unbounded number of opendir()'s must use a bounded number of file
  7005. descriptors.  The working group has already rejected seekdir() and
  7006. telldir() because they cannot easily be supported on implementations
  7007. that use a non-linear directory format.  A prohibition of simple
  7008. implementations of opendir() using file descriptors is also likely to
  7009. be rejected.
  7010.  
  7011. The underlying problem is that the orderedness of directory entries
  7012. was implicit in the traditional implementations, but was not made
  7013. fully explicit in 1003.1, partly out of a desire to permit alternate
  7014. implementations (for instance, b-trees).  As a result, orderedness
  7015. must now be imposed by the application.  On a non-linear directory
  7016. implementation, if positioning is not supported, even opendir() must
  7017. read in the whole directory.
  7018.  
  7019. 3.1.5  Data-Interchange_Format  The 1988 POSIX standard specified two
  7020. data-interchange formats based on existing utilities.  These define
  7021. the data-stream encoding of a sequence of files, together with their
  7022. pathnames and other attributes.  The first format is based on tar and
  7023. encodes files as a stream of 512-byte blocks.  The second format is
  7024. based on cpio and encodes files as an unblocked byte stream.
  7025.  
  7026. The ISO POSIX group (JTC1/SC22/WG15) pointed out that both of these
  7027. formats are incompatible with accepted international and U.S.
  7028. standards.  After some arm twisting, the 1003.1 working group agreed
  7029. to devise a new data interchange format based on IS 1001: 1986, which
  7030. is more or less equivalent to ANS X3.27-1987, the familiar ANSI
  7031. labeled tape format.
  7032.  
  7033. The current draft of 1003.1b includes the framework for the new
  7034. specification, but a lot more work is needed.  Previous meetings
  7035. discussed alternate proposals.  The topic has been strangely quiet
  7036. lately, considering the confusion that may be expected when it goes to
  7037. ballot.  It wasn't discussed at the Utah meeting at all.
  7038.  
  7039. June, 1990 Standards Update     IEEE 1003.1: System services interface
  7040.  
  7041.  
  7042.                 - 7 -
  7043.  
  7044. 3.2  {_POSIX_PATH_MAX}: A Clarification
  7045.  
  7046. The 1988 POSIX standard included two conflicting statements regarding
  7047. {PATH_MAX} and {_POSIX_PATH_MAX}: one said that the null was included
  7048. in the count; the other said that the null was excluded.  Traditional
  7049. implementations have included the trailing null; some new
  7050. implementations have excluded the null.
  7051.  
  7052. One alternative or the other had to be endorsed.  The working group
  7053. decided that {_POSIX_PATH_MAX} should not include the trailing null,
  7054. since specifying this will not break currently conforming
  7055. applications.
  7056.  
  7057. 3.3  Headers and Name-Space Control
  7058.  
  7059. Since 1003.1b is adding many new identifiers to the standard, there
  7060. was discussion about whether new identifiers should be declared in new
  7061. headers, or whether existing headers could be used, with new feature-
  7062. test-macros to control visibility of the additional identifiers.  It
  7063. was agreed that although both headers and feature-test macros control
  7064. identifier visibility, their functions are complementary.  Headers are
  7065. appropriately used to divide name-spaces horizontally, by
  7066. functionality.  Feature-test macros are appropriately used to divide
  7067. name-spaces vertically, by specification level.
  7068.  
  7069. With this understanding, the group decided that new identifiers will
  7070. be declared in the ``right place.'' A new header will be created only
  7071. if no existing header is functionally appropriate.
  7072.  
  7073. A new feature-test macro will be specified by 1003.1b and subsequent
  7074. revisions: _POSIX_1_SOURCE.  This macro takes ordinal values, starting
  7075. with 2 for 1003.1b, and will be incremented by 1 for every subsequent
  7076. revision.  If the value is 1, the effect will be the same as if
  7077. _POSIX_SOURCE were defined.
  7078.  
  7079. There are two changes here.  The new name was used to indicate that
  7080. the macro only controls the visibility of identifiers defined in
  7081. POSIX.1.  The usage was changed to allow the value to indicate the
  7082. particular revision or supplement to the standard, rather than having
  7083. to create a new macro each time.  This should simplify the
  7084. construction and maintenance of header files.
  7085.  
  7086. 3.4  Requests
  7087.  
  7088. Two requests were made by vendors trying to support POSIX behavior on
  7089. non-UNIX file systems:
  7090.  
  7091.    + that {_POSIX_LINK_MAX} be reduced from 6 to 2
  7092.  
  7093.    + that {_POSIX_PATH_MAX} be reduced from 255 to 252
  7094.  
  7095. June, 1990 Standards Update     IEEE 1003.1: System services interface
  7096.  
  7097.  
  7098.                 - 8 -
  7099.  
  7100. Both requests were rejected.  Either of these changes could have made
  7101. existing conforming applications non-conforming.  Even where the risk
  7102. of breaking applications seemed small, the working group was reluctant
  7103. to set a precedent without a pretty good rationale to protect them
  7104. against similar requests in the future.
  7105.  
  7106. 3.5  New Proposals
  7107.  
  7108. Five proposals for new interfaces were submitted for inclusion in
  7109. 1003.1b, many of which provoked lively discussion.  Some were
  7110. accepted, some were rejected, and others were deferred to allow a
  7111. revised proposal to be submitted or to allow more time for
  7112. consideration.
  7113.  
  7114. 3.5.1  seteuid(),_setegid()  Bob Lenk and Mike Karels proposed a set
  7115. of changes to the way the effective user and group id's are handled,
  7116. in order to provide better support for setuid/setgid programs.
  7117.  
  7118.    + Require that all implementations support the functionality of the
  7119.      saved user ID and saved group ID.  These process attributes are
  7120.      set by the exec functions and by privileged calls to setuid() and
  7121.      setgid().
  7122.  
  7123.    + Add seteuid() and setegid() as new functions that change only the
  7124.      effective user ID and effective group ID, respectively.  A change
  7125.      is allowed if the proposed new user/group ID is the same as
  7126.      either the real user/group ID or the saved user/group ID.
  7127.  
  7128.    + Redefine the {_POSIX_SAVED_IDS} option to apply only to non-
  7129.      privileged calls to setuid() and setgid().
  7130.  
  7131. This proposal has general support in the working group, and will be
  7132. included in the next draft of 1003.1b.
  7133.  
  7134. The discussion of this proposal led to a general lament about how
  7135. unclear the group model is in the 1988 POSIX standard, perhaps the
  7136. result of a hasty marriage between the System V and BSD models.  At
  7137. the next meeting, the working group intends to add new text to
  7138. P1003.1b to clarify the relation between the effective group ID and
  7139. the supplementary group list.
  7140.  
  7141. 3.5.2  Magnetic_Tape_Support  The 1003.10 working group
  7142. (Supercomputing Profiles) proposed new interfaces to support basic
  7143. controller functions for magnetic tape drives, based on the ioctl()
  7144. commands supported in 4.3BSD.  Although support for these interfaces
  7145. would be optional in 1003.1b, the working group decided that the
  7146. functions should be further specified according to whether they are:
  7147.  
  7148.    + required for all types of tape drives;
  7149.  
  7150. June, 1990 Standards Update     IEEE 1003.1: System services interface
  7151.  
  7152.  
  7153.                 - 9 -
  7154.  
  7155.    + required only for 9-track tape drives;
  7156.  
  7157.    + required only for cartridge tape drives; or
  7158.  
  7159.    + optional on all types of tape drives.
  7160.  
  7161. The proposal needed further revision, but was generally supported by
  7162. the working group.
  7163.  
  7164. The submitted proposal also included interfaces for mounting labeled
  7165. tape volumes.  These were considered to be inappropriate for inclusion
  7166. at this time and will be deferred until a later revision of the
  7167. standard.
  7168.  
  7169. 3.5.3  Checkpoint/Restart  The 1003.10 working group also proposed new
  7170. (optional) interfaces for checkpointing and restarting processes.
  7171. This proposal is based on two existing implementations.  The
  7172. interfaces are intended to protect very-long-running applications from
  7173. both scheduled shutdowns and unexpected failures of the system.
  7174.  
  7175. The 1003.1 working group was not happy to have to deal with this and
  7176. had lots of questions.  Were programming interfaces for portable
  7177. applications really needed, or was a command interface sufficient?
  7178. How much state needed to be saved in the checkpoint?  What if the
  7179. processes depended on additional state information that was not in the
  7180. checkpoint, such as file data or the states of other communicating
  7181. processes or devices?  In this case, the restart would only be
  7182. successful if this additional state had not changed since the
  7183. checkpoint.  How could such changes be detected or prevented?  What is
  7184. the set of interfaces that an application can use and be sure that it
  7185. can be checkpointed and restarted successfully, without dependencies
  7186. on additional state?  Should applications have a mechanism for
  7187. checkpointing themselves, or for blocking an external request that
  7188. they be checkpointed?
  7189.  
  7190. Because a checkpoint/restart mechanism will have a major impact on
  7191. implementations, and the requirements are not yet clear, the working
  7192. group was unwilling to endorse the current proposal.  A task force
  7193. made up of representatives of the 1003.1 and 1003.10 working groups
  7194. will be created to clarify the requirements and revise the proposal.
  7195.  
  7196. This proposal is going to need a lot more discussion, so checkpoint
  7197. restart interfaces will almost certainly not be included in P1003.1b,
  7198. but they may be adopted in a subsequent revision.
  7199.  
  7200. 3.5.4  Messaging  The UniForum proposal for new messaging interfaces
  7201. has been before the 1003.1 working group for a couple of meetings now.
  7202. The proposed interfaces are intended as replacements for the message
  7203. catalog interfaces specified in XPG3, and differ from those in several
  7204. ways (since the discussion was fairly contentious, I'll try to be
  7205. objective):
  7206.  
  7207. June, 1990 Standards Update     IEEE 1003.1: System services interface
  7208.  
  7209.  
  7210.                 - 10 -
  7211.  
  7212.    + The XPG3 interfaces identify a message by the triple: <catalog
  7213.      name, set ID, msg ID>, where catalog name is a file name, and set
  7214.      ID and msg ID are integers.  The UniForum interfaces identify a
  7215.      message by the triple: <locale name, domain name, message name>,
  7216.      where locale name, domain name, and message name are all strings.
  7217.      The locale for messages is specified by the new LC_MESSAGES
  7218.      category of the locale.  Advocates of the UniForum proposal claim
  7219.      that string identifiers are easier to use and are more robust
  7220.      against errors during application development and maintenance.
  7221.  
  7222.    + In the XPG3 scheme, each message catalog is an ordinary file.
  7223.      Message catalogs must be specified by filename and explicitly
  7224.      opened before messages can be retrieved.  The NLSPATH environment
  7225.      variable provides a search path for message catalogs that can be
  7226.      parameterized by (among other things) the language, territory,
  7227.      and codeset fields of the LANG environment variable.  In the
  7228.      UniForum scheme, groups of messages are specified by an abstract
  7229.      ``domain.'' A default domain can be set to control message
  7230.      accesses, or the domain can be explicitly specified for an
  7231.      individual message access.  Advocates of the UniForum proposal
  7232.      claim that the binding of message catalogs to files unnecessarily
  7233.      restricts implementations and imposes a more complex interface on
  7234.      application developers.
  7235.  
  7236.    + The XPG3 interface includes an additional string argument that is
  7237.      returned in case no message specified by <set ID, msg ID> can be
  7238.      retrieved from the message catalog.  In the UniForum proposal,
  7239.      the message name itself is returned if the message cannot be
  7240.      found.  Advocates of the UniForum proposal point out that the
  7241.      message name string makes a separate, ``default'' message string
  7242.      unnecessary.
  7243.  
  7244. In addition, the UniForum proposal includes a specification of the
  7245. message source file format that differs from the format specified in
  7246. XPG3.
  7247.  
  7248.    + In the XPG3 format, message strings are implicitly delimited: at
  7249.      the beginning by the preceding message ID followed by a single
  7250.      space or tab character, and at the end by an unescaped newline.
  7251.      In the UniForum format, all strings, including domain names,
  7252.      message ID's, and message strings, are explicitly delimited by
  7253.      double quotes (").  Adjacent strings separated by white-space
  7254.      characters are concatenated.  Advocates of the UniForum proposal
  7255.      claim that the new format provides better support for multi-line
  7256.      strings and for leading and trailing white-space characters in
  7257.      strings.
  7258.  
  7259.    + In the XPG3 format, the message ID and its corresponding message
  7260.      string are implicitly determined by their position on a source
  7261.      line.  In the UniForum format, explicit directives are provided
  7262.      for message ID's and message strings.  Advocates of the UniForum
  7263.  
  7264. June, 1990 Standards Update     IEEE 1003.1: System services interface
  7265.  
  7266.  
  7267.                 - 11 -
  7268.  
  7269.      proposal claim that the new format is extensible.  New attributes
  7270.      may be added to message entries, such as screen coordinates or
  7271.      font size.
  7272.  
  7273.    + The XPG3 format includes directives for deleting individual
  7274.      messages and sets of messages, and the associated gencat utility
  7275.      takes no switches.  In the UniForum proposal, all deletion
  7276.      semantics are provided by switches on the associated gentext
  7277.      utility.
  7278.  
  7279. There was much discussion of the interfaces; less about the source
  7280. file format.  The most divisive issue was whether string message ID's
  7281. are preferable to numeric message ID's.  Among those who felt that the
  7282. new interfaces are better, there was disagreement about whether the
  7283. advantages outweighed the cost of conversion for applications and
  7284. implementations based on the XPG3 interfaces.  The rationale
  7285. accompanying the UniForum proposal described several ways to convert
  7286. applications from the XPG3 interfaces to the proposed new interfaces.
  7287.  
  7288. The working group asked X/Open to submit the XPG3 messaging interfaces
  7289. as an alternate proposal, since they represent existing practice, and
  7290. X/Open has agreed to do so.  X/Open has said that they will follow
  7291. POSIX if POSIX endorses a different interface.  The decision regarding
  7292. which, if any, messaging proposal to include in 1003.1b will be made
  7293. at the POSIX meeting in Danvers.
  7294.  
  7295. It's hard to predict the fate of this proposal.  The UniForum proposal
  7296. represents the consensus of one of the leading internationalization
  7297. working groups and is reported to have some support within X/Open.  On
  7298. the other hand, the POSIX working groups are obliged to respect
  7299. existing practice.  Watch this space.
  7300.  
  7301. 3.5.5  /dev/stdin,_/dev/fd/n,_etc.  There was an unofficial proposal
  7302. from members of the 1003.2 working group that open() be extended to
  7303. recognize the special strings "/dev/stdin", "/dev/stdout",
  7304. "/dev/stderr", and "/dev/fd/n", and return a new file descriptor
  7305. dup()'ed from STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO, or file
  7306. descriptor n, respectively.  This proposal was intended to allow
  7307. simplified command line parsing, by eliminating special casing for
  7308. ``-'' and ``--'' arguments.  The proposal was rejected after a short
  7309. exploration of the possible semantics of these pathnames when used
  7310. with link(), rename(), etc..
  7311.  
  7312. 4.  Conclusion
  7313.  
  7314. As you can see, there's a lot going on.  Even though most of the
  7315. attention has shifted to other working groups, the 1003.1 group is
  7316. busy revising and extending the 1988 standard.  The group is small
  7317. now, by POSIX standards, but their work is as important as ever.
  7318.  
  7319. June, 1990 Standards Update     IEEE 1003.1: System services interface
  7320.  
  7321. Volume-Number: Volume 20, Number 56
  7322.  
  7323. From jsq@tic.com  Thu Jun 28 15:43:30 1990
  7324. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  7325.     id AA10187; Thu, 28 Jun 90 15:43:30 -0400
  7326. Posted-Date: 28 Jun 90 15:31:38 GMT
  7327. Received: by cs.utexas.edu (5.64/1.65)
  7328.     id AA14099; Thu, 28 Jun 90 14:43:26 -0500
  7329. Received: by longway.tic.com (4.22/tic.1.2)
  7330.     id AA06156; Thu, 28 Jun 90 14:17:14 cdt
  7331. From: Mark Brown <mbrown@osf.org>
  7332. Newsgroups: comp.std.unix
  7333. Subject: UIDs and GIDs
  7334. Keywords: versus Networking
  7335. Message-Id: <743@longway.TIC.COM>
  7336. Sender: std-unix@tic.com
  7337. Reply-To: std-unix@uunet.uu.net
  7338. Organization: Open Software Foundation
  7339. Date: 28 Jun 90 15:31:38 GMT
  7340. Apparently-To: std-unix-archive@uunet.uu.net
  7341.  
  7342. From: mbrown@osf.org (Mark Brown)
  7343.  
  7344. In 1003.1, "User ID" is defined as a positive integer (so is GID)...
  7345.  
  7346. Also, uid_t is defined as an arithmetic type (same for gid_t).
  7347.  
  7348. How does one handle (or can one handle) certain networking conventions that
  7349. use a "dummy" user ("nobody") and require a user id of -2 ?
  7350.  
  7351. Do these conflict as they seem, or am I missing something (always possible..)
  7352.  
  7353. -- 
  7354. Mark Brown   IBM AWD / OSF  |  "The tricky part is common usage."
  7355. The Good     mbrown@osf.org |
  7356. The Bad     uunet!osf!mbrown|       ---B.2.8.2, "POSIX Symbols",
  7357. The Ugly     (617) 621-8981 |                 POSIX 1003.1-1988
  7358.  
  7359. Volume-Number: Volume 20, Number 57
  7360.  
  7361. From jsq@tic.com  Thu Jun 28 18:17:38 1990
  7362. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  7363.     id AA25268; Thu, 28 Jun 90 18:17:38 -0400
  7364. Posted-Date: 28 Jun 90 16:12:39 GMT
  7365. Received: by cs.utexas.edu (5.64/1.65)
  7366.     id AA25997; Thu, 28 Jun 90 17:17:33 -0500
  7367. Received: by longway.tic.com (4.22/tic.1.2)
  7368.     id AA06921; Thu, 28 Jun 90 16:43:23 cdt
  7369. From: Loren Buck Buchanan <buck@drax.gsfc.nasa.gov>
  7370. Newsgroups: comp.std.unix
  7371. Subject: Re: Standards Update, IEEE 1003.5: Ada bindings
  7372. Message-Id: <744@longway.TIC.COM>
  7373. References: <739@longway.TIC.COM> <732@longway.TIC.COM> <738@longway.TIC.COM>
  7374. Sender: std-unix@tic.com
  7375. Reply-To: std-unix@uunet.uu.net
  7376. Organization: Computer Sciences Corporation @ NASA Goddard Space Flight Center
  7377. Date: 28 Jun 90 16:12:39 GMT
  7378. Apparently-To: std-unix-archive@uunet.uu.net
  7379.  
  7380. From:  buck@drax.gsfc.nasa.gov (Loren (Buck) Buchanan)
  7381.  
  7382. In article <739@longway.TIC.COM> From:  Doug Gwyn <gwyn@smoke.brl.mil>
  7383. >I DO remember the history of 1003.1; I was there!  We most certainly
  7384. >did NOT set out to create a language-independent standard; C was
  7385. >specifically chosen for the obvious reason that it was the SOLE
  7386. >appropriate language for systems-level programming on UNIX, for a
  7387. >variety of reasons, including the fact that the UNIX kernel has a
  7388. >marked preference for being fed C data types.
  7389.  
  7390. Sometimes you have to make painful changes, so that the future
  7391. generations will not have to suffer with "historical artifacts".
  7392. This is one place I think the changes should have been made (but
  7393. of course I do not know all of the argumentation, compromises, etc.
  7394. that passed before the committee came to an agreement.
  7395.  
  7396. >This "language binding" nonsense was foisted off on P1003 in an
  7397. >attempt to meet ISO guidelines.  I think it must have been adopted
  7398. >by ISO as the result of Pascal types insisting that they never have
  7399. >to use any other language.
  7400.  
  7401. I take exception to "nonsense was foisted".  The reason for language
  7402. bindings is so that various different languages can take advantage
  7403. of the standard.  Why should PASCALers, FORTRANers, etc. be coerced
  7404. into giving up their favorite language.  I regularly use three
  7405. different langauges, and I expect that the operating environment I
  7406. am working under will not impede my use of these languages.
  7407.  
  7408. >Clearly, a BASIC, COBOL, or even LISP binding to 1003.1 would be
  7409. >ludicrous.  I don't know how languages are selected for binding,
  7410. >but I do know what constitutes a UNIX system interface, and if a
  7411. >language can support one then that is what it should be given as a
  7412. >1003.1 binding.
  7413.  
  7414. Why is it ludicrous,  I think all of them should have bindings to POSIX,
  7415. but don't ask me to do the work.  If POSIX is to become truly universal,
  7416. then it better support all of them and also RPG II/III, PL/I, Prolog,
  7417. MUMPS, and any other general or special purpose language that is in
  7418. common use.  How a language is selected is two part, 1) is there a
  7419. consensus of the committee that the work should be done, and 2) is
  7420. there a fool  ... eh ... er ... uh ... volunteer willing to do the
  7421. work of creating and/or being the editor.
  7422.  
  7423. I am currently working on the proposed image processing standard, and
  7424. how acceptable do you think this standard would be if we ignored
  7425. FORTRAN?
  7426.  
  7427. B Cing U
  7428.  
  7429. Buck
  7430.  
  7431. -- 
  7432. Loren Buchanan     | buck@drax.gsfc.nasa.gov   | #include <std_disclaimer.h> 
  7433. CSC, 1100 West St. | ...!ames!dftsrv!drax!buck | typedef int by
  7434. Laurel, MD 20707   | (301) 497-2531            | void where_prohibited(by law){}
  7435. CD International lists over 40,000 pop music CDs, collect the whole set.
  7436.  
  7437. Volume-Number: Volume 20, Number 57
  7438.  
  7439. From jsq@tic.com  Fri Jun 29 11:02:31 1990
  7440. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  7441.     id AA02275; Fri, 29 Jun 90 11:02:31 -0400
  7442. Posted-Date: 28 Jun 90 22:41:59 GMT
  7443. Received: by cs.utexas.edu (5.64/1.65)
  7444.     id AA09552; Fri, 29 Jun 90 10:02:26 -0500
  7445. Received: by longway.tic.com (4.22/tic.1.2)
  7446.     id AA08679; Fri, 29 Jun 90 09:14:42 cdt
  7447. From: Randall Atkinson <randall@uvaarpa.Virginia.EDU>
  7448. Newsgroups: comp.std.unix
  7449. Subject: P1003.2a/5, Asian Language Support, etc.
  7450. Message-Id: <746@longway.TIC.COM>
  7451. Sender: std-unix@tic.com
  7452. Reply-To: std-unix@uunet.uu.net
  7453. Date: 28 Jun 90 22:41:59 GMT
  7454. Apparently-To: std-unix-archive@uunet.uu.net
  7455.  
  7456. From:  randall@uvaarpa.Virginia.EDU (Randall Atkinson)
  7457.  
  7458. I've recently received my copy of Draft 5 of the P1003.2a document
  7459. and I've got some preliminary thoughts that I think might be worth
  7460. mentioning generally.  I want to be explicit in saying that I've
  7461. only skimmed the document at this point and some of my concerns might
  7462. in fact have been addressed in an area of the document that I haven't
  7463. read closely.
  7464.  
  7465. 1.  I really want the standard to be meaningful in the areas that are
  7466.   specified.  A specification that is too watered down and general isn't
  7467.   really useful.  By way of example, the effect of the values chosen
  7468.   for POSIX2_MAX_NICE and POSIX2_MIN_NICE is to mean that a user can't
  7469.   depend on nice or renice doing anything to the job.  The values
  7470.   chosen for those two contants should be different and have some
  7471.   meaningful (if limited) range to them so that a user can rely on
  7472.   the utilities having the same functionality as the existing utilities
  7473.   have.
  7474.  
  7475. 2.  In skimming the draft, there seem to be a number of places where
  7476.   there are implicit assumptions that western languages and character
  7477.   sets are being used.  There appear at first glance to be several areas
  7478.   where support for Asian languages (for example written Chinese) is
  7479.   either non-existent or possibly impaired.  This is an understandably
  7480.   difficult thing to specify carefully, particularly considering that
  7481.   there aren't many involved in the POSIX process who have familiarity 
  7482.   with non-Western languages.  
  7483.  
  7484. 3.      I support the general constraint of standardising existing
  7485.   practice rather than creating new extensions, but would much rather
  7486.   see more stringent requirements that utilities either send output to
  7487.   the controlling terminal or stdout.  If this isn't specified, the 
  7488.   existing practice of using piping and shell scripts on all of the
  7489.   UNIX \(tm shell utilities is potentially not supported.  
  7490.  
  7491. 4.  Also, I would prefer to see output formats specified wherever possible,
  7492.   even if the output format might break some existing implementation
  7493.   which uses an incompatible output format.  It is very difficult for
  7494.   anyone to safely predict in advance that some utility will never
  7495.   be used in a pipe or shell script or have its output processed by
  7496.   some other tool (e.g. awk) before being seen by a human.  Hence,
  7497.   I tend to disagree with the paragraph on Page X from lines 166-179
  7498.   where it states that "exactness of [output] format" has not been
  7499.   a primary concern.  Standardisation of the output format is clearly
  7500.   within the scope of the present enterprise and enhances the usefulness
  7501.   of the resulting standard.
  7502.  
  7503.  
  7504. Randall Atkinson
  7505. randall@virginia.edu
  7506.  
  7507. Volume-Number: Volume 20, Number 59
  7508.  
  7509. From jsq@tic.com  Fri Jun 29 11:03:11 1990
  7510. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  7511.     id AA02520; Fri, 29 Jun 90 11:03:11 -0400
  7512. Posted-Date: 29 Jun 90 02:34:30 GMT
  7513. Received: by cs.utexas.edu (5.64/1.65)
  7514.     id AA09622; Fri, 29 Jun 90 10:03:07 -0500
  7515. Received: by longway.tic.com (4.22/tic.1.2)
  7516.     id AA08761; Fri, 29 Jun 90 09:24:32 cdt
  7517. From: <hedrick@cs.RUTGERS.EDU>
  7518. Newsgroups: comp.std.unix
  7519. Subject: Re: UIDs and GIDs
  7520. Keywords: versus Networking
  7521. Message-Id: <747@longway.TIC.COM>
  7522. References: <743@longway.TIC.COM>
  7523. Sender: std-unix@tic.com
  7524. Reply-To: std-unix@uunet.uu.net
  7525. Date: 29 Jun 90 02:34:30 GMT
  7526. Apparently-To: std-unix-archive@uunet.uu.net
  7527.  
  7528. From:  hedrick@cs.rutgers.edu
  7529.  
  7530. I think you take -2 with some degree of poetic license.  Obviously
  7531. if your system uses unsigned shorts, call it 0xfffe instead of -2.
  7532. The only problem I know is with some System V implementations that
  7533. completely disallow uid's with the sign bit on.
  7534.  
  7535. Volume-Number: Volume 20, Number 60
  7536.  
  7537. From jsq@tic.com  Fri Jun 29 11:05:40 1990
  7538. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  7539.     id AA03645; Fri, 29 Jun 90 11:05:40 -0400
  7540. Posted-Date: 29 Jun 90 04:23:59 GMT
  7541. Received: by cs.utexas.edu (5.64/1.65)
  7542.     id AA09902; Fri, 29 Jun 90 10:05:36 -0500
  7543. Received: by longway.tic.com (4.22/tic.1.2)
  7544.     id AA08888; Fri, 29 Jun 90 09:34:28 cdt
  7545. From: Chuck Karish <karish@mindcraft.com>
  7546. Newsgroups: comp.std.unix
  7547. Subject: New product: C Portability Verifier
  7548. Message-Id: <748@longway.TIC.COM>
  7549. Sender: std-unix@tic.com
  7550. Reply-To: std-unix@uunet.uu.net
  7551. Organization: Mindcraft, Inc.
  7552. Date: 29 Jun 90 04:23:59 GMT
  7553. Apparently-To: std-unix-archive@uunet.uu.net
  7554.  
  7555. From: karish@mindcraft.com (Chuck Karish)
  7556.  
  7557.     The Mindcraft C Portability Verifier is now available.  It should
  7558.     prove to be valuable both to software engineers who want to
  7559.     write code that meets portability standards (to POSIX.1, POSIX.2,
  7560.     ANSI C, base XPG3, many XPG APIs, and locally-developed standards)
  7561.     and to software buyers and managers who want to be sure that their
  7562.     contractors are providing portable code.
  7563.  
  7564.     For more information, see the announcement in comp.newprod or send
  7565.     mail to cpv@mindcraft.com and request a brochure.
  7566. -- 
  7567.  
  7568.     Chuck Karish        karish@mindcraft.com
  7569.     Mindcraft, Inc.        (415) 323-9000        
  7570.  
  7571. Volume-Number: Volume 20, Number 61
  7572.  
  7573. From jsq@tic.com  Fri Jun 29 11:05:49 1990
  7574. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  7575.     id AA03694; Fri, 29 Jun 90 11:05:49 -0400
  7576. Posted-Date: 29 Jun 90 09:47:07 GMT
  7577. Received: by cs.utexas.edu (5.64/1.65)
  7578.     id AA09927; Fri, 29 Jun 90 10:05:44 -0500
  7579. Received: by longway.tic.com (4.22/tic.1.2)
  7580.     id AA09066; Fri, 29 Jun 90 09:48:42 cdt
  7581. From: Dominic Dunlop <domo@the-standard-answer.co.uk>
  7582. Newsgroups: comp.std.unix
  7583. Subject: Re: UIDs and GIDs
  7584. Message-Id: <749@longway.TIC.COM>
  7585. References: <743@longway.TIC.COM>
  7586. Sender: std-unix@tic.com
  7587. Reply-To: domo@the-standard-answer.co.uk
  7588. Organization: The Standard Answer Ltd.
  7589. Date: 29 Jun 90 09:47:07 GMT
  7590. Apparently-To: std-unix-archive@uunet.uu.net
  7591.  
  7592. From:  Dominic Dunlop <domo@tsa.co.uk>
  7593.  
  7594. In article <743@longway.TIC.COM> Mark Brown (mbrown@osf.org) writes:
  7595. >In 1003.1, "User ID" is defined as a positive integer (so is GID)...
  7596. >
  7597. >Also, uid_t is defined as an arithmetic type (same for gid_t).
  7598. >
  7599. >How does one handle (or can one handle) certain networking conventions that
  7600. >use a "dummy" user ("nobody") and require a user id of -2 ?
  7601. >
  7602. >Do these conflict as they seem, or am I missing something (always possible..)
  7603.  
  7604. No, you're spotting something.  Yes, this is a known conflict between
  7605. ``certain networking conventions'' and POSIX.1.  My guess is that it falls
  7606. to POSIX.8 (transparent file access) to unwind.  As POSIX.8 is now defining
  7607. two styles of remote file access -- full POSIX.1 semantics (namely better
  7608. than ``certain networking conventions''), and highly curtailed semantics
  7609. (considerably less than ``certain networking conventions''), one option at
  7610. its disposal is to let negative user id's fall down the crack (gulf?)
  7611. between the two styles.  An alternative is to weasel out of the conflict by
  7612. saying that accesses to remote files by unrecognised users map onto some
  7613. unique, unprivileged uid without actually admitting that the uid might be
  7614. negative.  Or that they map onto UID_MAX - 1 (except that POSIX.1 does not
  7615. have a UID_MAX because uid_t is allowed to be a magic cookie -- albeit a
  7616. magic cookie of arithmetic type).  (Incidentally, ISO's central secretariat
  7617. has, not ureasonably, asked us for a definition of ``magic cookie''.
  7618. Suggestions?)
  7619. -- 
  7620. Dominic Dunlop
  7621.  
  7622. Volume-Number: Volume 20, Number 62
  7623.  
  7624. From jsq@tic.com  Fri Jun 29 23:15:02 1990
  7625. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  7626.     id AA00734; Fri, 29 Jun 90 23:15:02 -0400
  7627. Posted-Date: 29 Jun 90 19:33:02 GMT
  7628. Received: by cs.utexas.edu (5.64/1.65)
  7629.     id AA26638; Fri, 29 Jun 90 22:14:59 -0500
  7630. Received: by longway.tic.com (4.22/tic.1.2)
  7631.     id AA11078; Fri, 29 Jun 90 21:28:00 cdt
  7632. From: Jason Zions <jason@cnd.hp.com>
  7633. Newsgroups: comp.std.unix
  7634. Subject: UIDs and GIDs, Definition of "Magic Cookie"
  7635. Message-Id: <750@longway.TIC.COM>
  7636. Sender: std-unix@tic.com
  7637. Reply-To: std-unix@uunet.uu.net
  7638. Organization: Hewlett Packard,     Information Networks Group
  7639. Date: 29 Jun 90 19:33:02 GMT
  7640. Apparently-To: std-unix-archive@uunet.uu.net
  7641.  
  7642. From: Jason Zions <jason@cnd.hp.com>
  7643.  
  7644. Dominic Dunlop raises the interesting problem of finding an acceptable,
  7645. human-language translatable definition for "Magic Cookie." Might I suggest,
  7646. as a starting point,
  7647.  
  7648.     An opaque object, or token, of determinate size, whose significance
  7649.     is known only to the entity which created it. An entity receiving
  7650.     such a token from the generating entity may only make such use of
  7651.     the "cookie" as is defined and permitted by the suppliying entity.
  7652.  
  7653. As for his comments concerning negative UIDs and the responsibility of
  7654. POSIX.8 to do something about it, rest assured that something will indeed
  7655. be done. I fear that permitting negative UIDs to fall into a crack will
  7656. prove unacceptable; however, I hope the working group will come up with a
  7657. better approach.
  7658.  
  7659. Right now, we've looked more at administrative solutions to the problem;
  7660. that is, requiring some sort of explicit UID mapping mechanism to support a
  7661. more sensible mapping of "undesireables" to a local UID. We may do no more
  7662. than require the presence of such a mechanism and indicate where in the
  7663. semantics of POSIX.8 compliant interfaces such a mechanism becomes
  7664. relevant, and defer the definition of the user interface to such a
  7665. mechanism to POSIX.7.
  7666.  
  7667. (I believe this is the current status of POSIX.8's thinking, based on the
  7668. minutes as I've read them. However, my summation should not be considered
  7669. an official statement from the working group; read the minutes and talk to
  7670. the members for a clearer picture.)
  7671.  
  7672.  
  7673. I must, however, take issue with one of Dominic's statements, to wit:
  7674.  
  7675.     ...and highly curtailed semantics
  7676.     (considerably less than ``certain networking conventions'')
  7677.  
  7678. The group is still evolving its understanding of FTAM semantics and
  7679. behaviour, the which is driving the "highly curtailed semantics" referred
  7680. to. We have by no means concluded that the resulting semantics of the
  7681. imputed interface are indeed "highly curtailed", nor are we ready to
  7682. conclude that those semantics are "considerably less" than ``certain
  7683. networking conventions''. (What a marvelous euphemism!)
  7684.  
  7685. In any event, the mapping to a negative UID is a part of some particular
  7686. implementations of a remote file access mechanism; many other mechanisms do
  7687. not require such a mapping, and in fact many implementations of that
  7688. mechanism permit other mappings to be chosen. It is within the scope of
  7689. POSIX.8 to, while permitting arbitrary mappings, require that any mapped-to
  7690. UID be of type uid_t at all times in all representations. As Dominic
  7691. observed, this shouldn't break anything that didn't already deserve to be
  7692. broken for other reasons.
  7693.  
  7694. Jason Zions
  7695. Chair (unconfirmed), IEEE P1003.8 POSIX Networked Transparent File Access
  7696.  
  7697. Volume-Number: Volume 20, Number 63
  7698.  
  7699. From jsq@tic.com  Fri Jun 29 23:15:11 1990
  7700. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  7701.     id AA00803; Fri, 29 Jun 90 23:15:11 -0400
  7702. Posted-Date: 29 Jun 90 18:15:05 GMT
  7703. Received: by cs.utexas.edu (5.64/1.65)
  7704.     id AA26650; Fri, 29 Jun 90 22:15:08 -0500
  7705. Received: by longway.tic.com (4.22/tic.1.2)
  7706.     id AA11150; Fri, 29 Jun 90 21:30:59 cdt
  7707. From: Sean Fagan <seanf@sco.COM>
  7708. Newsgroups: comp.std.unix
  7709. Subject: Re: UIDs and GIDs
  7710. Message-Id: <751@longway.TIC.COM>
  7711. References: <743@longway.TIC.COM>
  7712. Sender: std-unix@tic.com
  7713. Reply-To: std-unix@uunet.uu.net
  7714. Organization: The Santa Cruz Operation, Inc.
  7715. Date: 29 Jun 90 18:15:05 GMT
  7716. Apparently-To: std-unix-archive@uunet.uu.net
  7717.  
  7718. From: seanf@sco.COM (Sean Fagan)
  7719.  
  7720. In article <743@longway.TIC.COM> mbrown@osf.org (Mark Brown) writes:
  7721. >In 1003.1, "User ID" is defined as a positive integer (so is GID)...
  7722. >Also, uid_t is defined as an arithmetic type (same for gid_t).
  7723. >How does one handle (or can one handle) certain networking conventions that
  7724. >use a "dummy" user ("nobody") and require a user id of -2 ?
  7725. >Do these conflict as they seem, or am I missing something (always possible..)
  7726.  
  7727. Certain networking conventions are broken.
  7728.  
  7729. uid_t and gid_t have usually (always?) been considered unsigned shorts.
  7730. Most architectures let them get away with it, barely.  It is not a good
  7731. idea, though.
  7732.  
  7733. ---
  7734. -----------------+
  7735. Sean Eric Fagan  | "Just think, IBM and DEC in the same room, 
  7736. seanf@sco.COM    |      and we did it."
  7737. uunet!sco!seanf  |         -- Ken Thompson, quoted by Dennis Ritchie
  7738. (408) 458-1422   | Any opinions expressed are my own, not my employers'.
  7739.  
  7740. Volume-Number: Volume 20, Number 64
  7741.  
  7742. From uucp@tic.com  Sat Jun 30 00:05:58 1990
  7743. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  7744.     id AA18333; Sat, 30 Jun 90 00:05:58 -0400
  7745. Posted-Date: 30 Jun 90 02:28:24 GMT
  7746. Received: by cs.utexas.edu (5.64/1.65)
  7747.     id AA28562; Fri, 29 Jun 90 23:05:53 -0500
  7748. Received: by longway.tic.com (4.22/tic.1.2)
  7749.     id AA12060; Fri, 29 Jun 90 23:12:47 cdt
  7750. From: <jsh@usenix.org>
  7751. Newsgroups: comp.std.unix
  7752. Subject: Standards Update, USENIX Standards Watchdog Committee
  7753. Message-Id: <386@usenix.ORG>
  7754. Sender: std-unix@usenix.ORG
  7755. Reply-To: std-unix@uunet.uu.net
  7756. Date: 30 Jun 90 02:28:24 GMT
  7757. Apparently-To: std-unix-archive@uunet.uu.net
  7758.  
  7759. From:  <jsh@usenix.org>
  7760.  
  7761.  
  7762.            An Update on UNIX*-Related Standards Activities
  7763.  
  7764.                               June, 1990
  7765.  
  7766.                  USENIX Standards Watchdog Committee
  7767.  
  7768.                    Jeffrey S. Haemer, Report Editor
  7769.  
  7770. USENIX Standards Watchdog Committee
  7771.  
  7772. Jeffrey S. Haemer <jsh@ico.isc.com> reports on spring-quarter
  7773. standards activities
  7774.  
  7775. What these reports are about
  7776.  
  7777. Reports are done quarterly, for the USENIX Association, by volunteers
  7778. from the individual standards committees.  The volunteers are
  7779. familiarly known as snitches and the reports as snitch reports.  The
  7780. band of snitches and I make up the working committee of the USENIX
  7781. Standards Watchdog Committee.  Our job is to let you know about things
  7782. going on in the standards arena that might affect your professional
  7783. life -- either now or down the road a ways.
  7784.  
  7785. We don't yet have active snitches for all the committees and sometimes
  7786. have to beat the bushes for new snitches when old ones retire or can't
  7787. make a meeting, but the number of groups with active snitches
  7788. continues to grow (as, unfortunately, does the number of groups).
  7789.  
  7790. We know we currently need snitches in 1003.6 (Security), 1003.11
  7791. (Transaction Processing), 1003.13 (Real-time Profile), and nearly all
  7792. of the 1200-series POSIX groups, There are probably X3 groups the
  7793. USENIX members would like to know about that we don't even know to
  7794. look for watchdogs in.  If you're active in any other standards-
  7795. related activity that you think you'd like to report on, please drop
  7796. me a line.  Andrew Hume's fine report on X3B11.1 is an example of the
  7797. kind of submission I'd love to see.
  7798.  
  7799. If you have comments or suggestions, or are interested in snitching
  7800. for any group, please contact me (jsh@usenix.org) or John
  7801. (jsq@usenix.org).  If some of the reports make you interested enough
  7802. or indignant enough to want to go to a POSIX meeting, or you just want
  7803. to talk to me in person, join me at the next set, July 16-20, at the
  7804. Sheraton Tara, in Danvers, Massachusetts, just outside of Boston.
  7805.  
  7806. The USENIX Standards Watchdog Committee also has both a financial
  7807. committee -- Ellie Young, Alan G. Nemeth, and Kirk McKusick (chair);
  7808.  
  7809. __________
  7810.  
  7811.   * UNIX is a registered trademark of AT&T in the U.S. and other
  7812.     countries.
  7813.  
  7814. June, 1990 Standards Update        USENIX Standards Watchdog Committee
  7815.  
  7816.  
  7817.                 - 2 -
  7818.  
  7819. and a policy committee -- the financial committee plus John S.
  7820. Quarterman (chair).
  7821.  
  7822. An official statement from John:
  7823.  
  7824.      The basic USENIX policy regarding standards is:
  7825.           to attempt to prevent standards from prohibiting innovation.
  7826.      To do that, we
  7827.  
  7828.         + Collect and publish contextual and technical information
  7829.           such as the snitch reports that otherwise would be lost in
  7830.           committee minutes or rationale appendices or would not be
  7831.           written down at all.
  7832.  
  7833.         + Encourage appropriate people to get involved in the
  7834.           standards process.
  7835.  
  7836.         + Hold forums such as Birds of a Feather (BOF) meetings at
  7837.           conferences.  We sponsored one workshop on standards.  And
  7838.           are cosponsoring another in conjunction with IEEE, UniForum,
  7839.           and EUUG.  (Co-chairs are Shane P. McCarron
  7840.           <ahby@uiunix.org> and Fritz Schulz <fritz@osf.osf.org>.
  7841.           Contact them for details.)
  7842.  
  7843.         + Write and present proposals to standards bodies in specific
  7844.           areas.
  7845.  
  7846.         + Occasionally sponsor White Papers in particularly
  7847.           problematical areas, such as IEEE 1003.7 (in 1989).
  7848.  
  7849.         + Very occasionally lobby organizations that oversee standards
  7850.           bodies regarding new committee, documents, or balloting
  7851.           procedures.
  7852.  
  7853.         + Starting in mid-1989, USENIX and EUUG (the European UNIX
  7854.           systems Users Group) began sponsoring a joint representative
  7855.           to the ISO/IEC JTC1 SC22 WG15 (ISO POSIX) standards
  7856.           committee.
  7857.  
  7858.      There are some things we do not do:
  7859.  
  7860.         + Form standards committees.  It's the USENIX Standards
  7861.           Watchdog Committee, not the POSIX Watchdog Committee, not
  7862.           part of POSIX, and not limited to POSIX.
  7863.  
  7864.         + Promote standards.
  7865.  
  7866.         + Endorse standards.
  7867.  
  7868. June, 1990 Standards Update        USENIX Standards Watchdog Committee
  7869.  
  7870.  
  7871.                 - 3 -
  7872.  
  7873.      Occasionally we may ask snitches to present proposals or argue
  7874.      positions on behalf of USENIX.  They are not required to do so
  7875.      and cannot do so unless asked by the USENIX Standards Watchdog
  7876.      Policy Committee.
  7877.  
  7878.      Snitches mostly report.  We also encourage them to recommend
  7879.      actions for USENIX to take.
  7880.  
  7881.           John S. Quarterman, USENIX Standards Liaison
  7882.  
  7883. June, 1990 Standards Update        USENIX Standards Watchdog Committee
  7884.  
  7885. Volume-Number: Volume 20, Number 65
  7886.  
  7887. From uucp@tic.com  Sat Jun 30 00:06:21 1990
  7888. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  7889.     id AA18462; Sat, 30 Jun 90 00:06:21 -0400
  7890. Posted-Date: 30 Jun 90 02:42:08 GMT
  7891. Received: by cs.utexas.edu (5.64/1.65)
  7892.     id AA28590; Fri, 29 Jun 90 23:06:04 -0500
  7893. Received: by longway.tic.com (4.22/tic.1.2)
  7894.     id AA12117; Fri, 29 Jun 90 23:14:25 cdt
  7895. From: <jsh@usenix.org>
  7896. Newsgroups: comp.std.unix
  7897. Subject: Standards Update, Recent Standards Activities
  7898. Message-Id: <387@usenix.ORG>
  7899. Sender: std-unix@usenix.ORG
  7900. Reply-To: std-unix@uunet.uu.net
  7901. Date: 30 Jun 90 02:42:08 GMT
  7902. Apparently-To: std-unix-archive@uunet.uu.net
  7903.  
  7904. From: <jsh@usenix.org>
  7905.  
  7906.  
  7907.            An Update on UNIX*-Related Standards Activities
  7908.  
  7909.                               June, 1990
  7910.  
  7911.                  USENIX Standards Watchdog Committee
  7912.  
  7913.           Jeffrey S. Haemer, jsh@ico.isc.com, Report Editor
  7914.  
  7915. Recent Standards Activities
  7916.  
  7917. This editorial is an overview of some of the spring-quarter standards
  7918. activities covered by the USENIX Standards Watchdog Committee.  A
  7919. companion article provides a general overview of the committee itself.
  7920.  
  7921. In this article, I've emphasized non-technical issues, which are
  7922. unlikely to appear in official minutes and mailings of the standards
  7923. committees.  Previously published articles give more detailed, more
  7924. technical views on most of these groups' activities.  If my comments
  7925. move you to read one of those earlier reports that you wouldn't have
  7926. read otherwise, I've served my purpose.  Of course, on reading that
  7927. report you may discover the watchdog's opinion differs completely from
  7928. mine.
  7929.  
  7930. SEC: Standard/Sponsor Executive Committee
  7931.  
  7932. The biggest hullabaloo in the POSIX world this quarter came out of the
  7933. SEC, the group that approves creation of new committees.  At the April
  7934. meeting, in a move to slow the uncontrolled proliferation of POSIX
  7935. standards, the institutional representatives (IRs) (one each from
  7936. Usenix, UniForum, X/Open, OSF, and UI) recommended two changes in the
  7937. Project Authorization Request (PAR) approval process: (1) firm
  7938. criteria for PAR approval and group persistence and (2) a PAR-approval
  7939. group that had no working-group chairs or co-chairs.  Dale Harris, of
  7940. IBM Austin, presented the proposal and immediately took a lot of heat
  7941. from the attendees, most of whom are working-group chairs and co-
  7942. chairs (Dale isn't an IR, but shared the concerns that motivated the
  7943. recommendations and asked to make the presentation.)
  7944.  
  7945. The chair, Jim Isaak, created an ad-hoc committee to talk over the
  7946. proposal in a less emotional atmosphere.  Consensus when the committee
  7947. met was that the problem of proliferating PARs was real, and the only
  7948. question was how to fix it.  The group put together a formal set of
  7949. criteria for PAR approval (which John Quarterman has posted to
  7950. comp.std.unix), which seems to have satisfied everyone on the SEC, and
  7951. passed without issue.  The criteria seem to have teeth: at least one
  7952. of the Project Authorization Requests presented later (1201.3, UIMS)
  7953.  
  7954. __________
  7955.  
  7956.   * UNIX is a Registered Trademark of UNIX System Laboratories in the
  7957.     United States and other countries.
  7958.  
  7959. June, 1990 Standards Update                Recent Standards Activities
  7960.  
  7961.  
  7962.                 - 2 -
  7963.  
  7964. flunked the criteria and was rejected.  Two others (1201.1 and 1201.4
  7965. toolkits and Xlib) were deferred.  I suspect (though doubt that any
  7966. would admit it) that the proposals would have been submitted and
  7967. passed in the absence of the criteria.  In another related up-note,
  7968. Tim Baker and Jim Isaak drafted a letter to one group (1224, X.400
  7969. API), warning them that they must either prove they're working or
  7970. dissolve.
  7971.  
  7972. The second of the two suggestions, the creation of a PAR-approval
  7973. subcommittee, sank quietly.  The issue will stay submerged so long as
  7974. it looks like the SEC is actually using the approved criteria to fix
  7975. the problem.  [ Actually, this may not be true.  Watch for developments
  7976. at the next meeting, in Danvers, MA in mid-July.  -jsq]
  7977.  
  7978. Shane McCarron's column in the July Unix Review covers this area in
  7979. more detail.
  7980.  
  7981. 1003.0: POSIX Guide
  7982.  
  7983. Those of you who have read my last two columns will know that I've
  7984. taken the position that dot zero is valuable, even if it doesn't get a
  7985. lot of measurable work done.  This time, I have to say it looks like
  7986. it's also making measurable progress, and may go to mock ballot by its
  7987. target of fourth quarter of this year.  To me, the most interesting
  7988. dot-zero-related items this quarter are the growing prominence of
  7989. profiles, and the mention of dot zero's work in the PAR-approval-
  7990. criteria passed by the SEC.
  7991.  
  7992. Al Hankinson, the chair, tells me that he thinks dot zero's biggest
  7993. contribution has been popularizing profiles -- basically,
  7994. application-area-specific lists of pointers to other standards.  This
  7995. organizing principle has been adopted not only by the SEC (several of
  7996. the POSIX groups are writing profiles), but by NIST (Al's from NIST)
  7997. and ISO.  I suspect a lot of other important organizations will fall
  7998. in line here.
  7999.  
  8000. Nestled among the other criteria for PAR approval, is a requirement
  8001. that PAR proposers write a sample description of their group for the
  8002. POSIX guide.  Someone questioned why proposers should have to do dot
  8003. zero's job for them.  The explanation comes in two pieces.  First, dot
  8004. zero doesn't have the resources to be an expert on everything, it has
  8005. its hands full just trying to create an overall architecture.  Second,
  8006. the proposers aren't supplying what will ultimately go into the POSIX
  8007. guide, they're supplying a sample.  The act of drafting that sample
  8008. will force each proposer to think hard about where the new group would
  8009. fit in the grand scheme, right from the start.  This should help
  8010. insure that the guide's architecture really does reflect the rest of
  8011. the POSIX effort, and will increase the interest of the other groups
  8012. in the details of the guide.
  8013.  
  8014. June, 1990 Standards Update                Recent Standards Activities
  8015.  
  8016.  
  8017.                 - 3 -
  8018.  
  8019. 1003.1: System services interface
  8020.  
  8021. Dot one, the only group that has completed a standard, is in the
  8022. throes of completing a second.  Not only has the IEEE updated the
  8023. existing standard -- the new version will be IEEE 1003.1-1990 -- ISO
  8024. appears on the verge of approving the new version as IS 9945-1.  The
  8025. major sticking points currently seem limited to things like format and
  8026. layout -- important in the bureaucratic world of international
  8027. standards, but inconsequential to the average user.  Speaking of
  8028. layout, one wonders whether the new edition and ISO versions will
  8029. retain the yellow-green cover that has given the current document its
  8030. common name -- the ugly green book.  (I've thought about soaking mine
  8031. in Aqua Velva so it can smell like Green Chartreuse, too.)
  8032.  
  8033. The interesting issues in the group are raised by the dot-one-b work,
  8034. which adds new functionality.  (Read Paul Rabin's snitch report for
  8035. the gory details.) The thorniest problem is the messaging work.
  8036. Messaging, here, means a mechanism for access to external text and is
  8037. unrelated to msgget(), msgop(), msgctl(), or any other message-passing
  8038. schemes.  The problem being addressed is how to move all printable
  8039. strings out of our programs and into external ``message'' files so
  8040. that we can change program output from, say, English to German by
  8041. changing an environmental variable.  Other dot-one-b topics, like
  8042. symbolic links, are interesting, but less pervasive.  This one will
  8043. change the way you write any commercial product that outputs text --
  8044.  anything that has printf() statements.
  8045.  
  8046. The group is in a quandary.  X/Open has a scheme that has gotten a
  8047. little use.  We're not talking three or four years of shake-out, here,
  8048. but enough use to lay a claim to the ``existing practice'' label.  On
  8049. the other hand, it isn't a very pleasant scheme, and you'd have no
  8050. problem coming up with candidate alternatives.  The UniForum
  8051. Internationalization Technical Committee presented one at the April
  8052. meeting.  It's rumored that X/Open itself may replace its current
  8053. scheme with another.  So, what to do?  Changing to a new scheme
  8054. ignores existing internationalized applications and codifies an
  8055. untried approach.  Blessing the current X/Open scheme freezes
  8056. evolution at this early stage and kills any motivation to develop an
  8057. easy-to-use alternative.  Not providing any standard makes
  8058. internationalized applications (in a couple of years this will mean
  8059. any non-throw-away program) non-portable, and requires that we
  8060. continue to have to make heavy source-code modifications on every
  8061. port -- just what POSIX is supposed to help us get around.
  8062.  
  8063. To help you think about the problem, here's the way you'll have to
  8064. write the "hello, world" koan using the X/OPEN interfaces:
  8065.  
  8066. June, 1990 Standards Update                Recent Standards Activities
  8067.  
  8068.  
  8069.                 - 4 -
  8070.  
  8071.   #include <stdio.h>
  8072.   #include <nl_types.h>
  8073.   #include <locale.h>
  8074.   main()
  8075.   {
  8076.           nl_catd catd;
  8077.  
  8078.           (void)setlocale(LC_ALL, "");
  8079.           catd = catopen("hello", 0); /* error checking omitted for brevity */
  8080.           printf(catgets(catd, 1, 1,"hello, world\n"));
  8081.   }
  8082.  
  8083. and using the alternative, proposed UniForum interfaces:
  8084.  
  8085.   #include <stdio.h>
  8086.   #include <locale.h>
  8087.   main()
  8088.   {
  8089.           (void)setlocale(LC_ALL, "");
  8090.           (void)textdomain("hello");
  8091.           printf(gettext("hello, world\n"));
  8092.   }
  8093.  
  8094. I suppose if I had my druthers, I'd like to see a standard interface
  8095. that goes even farther than the UniForum proposal: one that adds a
  8096. default message catalogue/group (perhaps based on the name of the
  8097. program) and a standard, printf-family messaging function to hide the
  8098. explicit gettext() call, so the program could look like this:
  8099.  
  8100.   #include <stdio.h>
  8101.   #include <locale.h>
  8102.   #define printf printmsg
  8103.   main()
  8104.   {
  8105.           (void)setlocale(LC_ALL, ""); /* inescapable, required by ANSI C */
  8106.           printf("hello, world\n");
  8107.   }
  8108.  
  8109. but that would still be untested innovation.
  8110.  
  8111. The weather conditions in Colorado have made this a bonus year for
  8112. moths.  Every morning, our bathroom has about forty moths in it.
  8113. Stuck in our house, wanting desperately to get out, they fly toward
  8114. the only light that they can see and beat themselves to death on the
  8115. bathroom window.  I don't know what to tell them, either.
  8116.  
  8117. June, 1990 Standards Update                Recent Standards Activities
  8118.  
  8119.  
  8120.                 - 5 -
  8121.  
  8122. 1003.2: Shell and utilities
  8123.  
  8124. Someone surprised me at the April meeting by asserting that 1003.2
  8125. might be an important next target for the FORTRAN binding group.
  8126. (``What does that mean?'' I asked stupidly.  ``A standard for a
  8127. FORTRAN-shell?'') Perhaps you, like I, just think of dot two as
  8128. language-independent utilities.  Yes and no.
  8129.  
  8130. First, 1003.2 has over a dozen function calls (e.g., getopt()).  I
  8131. believe that most of these should be moved into 1003.1.  System() and
  8132. popen(), which assume a shell, might be exceptions, but having
  8133. sections of standards documents point at things outside their scope is
  8134. not without precedent.  Section 8 of P1003.1-1988 is a section of C-
  8135. language extensions, and P1003.5 will depend on the Ada standard.  Why
  8136. shouldn't an optional section of dot one depend on dot two?  Perhaps
  8137. ISO, already committed to re-grouping and re-numbering the standards,
  8138. will fix this.  Perhaps not.  In the meantime, there are functions in
  8139. dot two that need FORTRAN and Ada bindings.
  8140.  
  8141. Second, the current dot two standard specifies a C compiler.  Dot nine
  8142. has already helped dot two name the FORTRAN compiler, and may want to
  8143. help dot two add a FORTRAN equivalent of lint (which I've heard called
  8144. ``flint'').  Dot five may want to provide analogous sorts of help
  8145. (though Ada compilers probably already subsume much of lint's
  8146. functionality).
  8147.  
  8148. Third, more subtle issues arise in providing a portable utilities
  8149. environment for programmers in other languages.  Numerical libraries,
  8150. like IMSL, are often kept as single, large source files with hundreds,
  8151. or even thousands, of routines in a single .f file that compiles into
  8152. a single .o file.  Traditional FORTRAN environments provide tools that
  8153. allow updating or extraction of single subroutines or functions from
  8154. such objects, analogous to the way ar can add or replace single
  8155. objects in libraries.  Dot nine may want to provide such a facility in
  8156. a FORTRAN binding to dot two.
  8157.  
  8158. Anyway, back to the working group.  They're preparing to go to ballot
  8159. on the UPE (1003.2a, User Portability Extensions).  The mock ballot
  8160. had pretty minimal return, with only ten balloters providing
  8161. approximately 500 objections.  Ten isn't very many, but mock ballot
  8162. for dot two classic only had twenty-three.  It seems that people won't
  8163. vote until they're forced to.
  8164.  
  8165. The collection of utilities in 1003.2a is fairly reasonable, with only
  8166. a few diversions from historic practice.  A big exception is ps(1),
  8167. where historic practice is so heterogeneous that a complete redesign
  8168. is possible.  Unfortunately, no strong logical thread links the
  8169. 1003.2a commands together, so read the ballot with an eye toward
  8170. commands that should be added or discarded.
  8171.  
  8172. June, 1990 Standards Update                Recent Standards Activities
  8173.  
  8174.  
  8175.                 - 6 -
  8176.  
  8177. A few utilities have already disappeared since the last draft.  Pshar,
  8178. an implementation of shar with a lot of bells and whistles, is gone.
  8179.  
  8180. Compress/uncompress poses an interesting problem.  Though the utility
  8181. is based on clear-cut existing practice, the existing implementation
  8182. uses an algorithm that is copyrighted.  Unless the author chooses to
  8183. give the algorithm away (as Ritchie dedicated his set-uid patent to
  8184. public use), the committee is faced with a hard choice:
  8185.  
  8186.    - They can specify only the user interface.  But the purpose of
  8187.      these utilities is to ease the cost of file interchange.  What
  8188.      good are they without a standard data-interchange format?
  8189.  
  8190.    - They can invent a new algorithm.  Does it make sense to use
  8191.      something that isn't field-tested or consistent with the versions
  8192.      already out there?  (One assumes that the existing version has
  8193.      real advantages, otherwise, why would so many people use a
  8194.      copyrighted version?)
  8195.  
  8196. Expect both the first real ballot of 1003.2a and recirculation of
  8197. 1003.2 around July.  Note that the recirculation will only let you
  8198. object to items changed since the last draft, for all the usual bad
  8199. reasons.
  8200.  
  8201. 1003.3: Test methods
  8202.  
  8203. The first part of dot three's work is coming to real closure.  The
  8204. last ballot failed, but my guess is that one will pass soon, perhaps
  8205. as soon as the end of the year, and we will have a standard for
  8206. testing conformance to IEEE 1003.1-1988.
  8207.  
  8208. That isn't to say that all is rosy in dot-one testing.  NIST's POSIX
  8209. Conformance Test Suite (PCTS) still has plenty of problems:
  8210. misinterpretations of dot one, simple timing test problems that cause
  8211. tests to run well on 3b2's, but produce bad results on a 30 mips
  8212. machine and even real bugs (attempts to read from a tty without first
  8213. opening it).  POSIX dot one is far more complex than anything for
  8214. which standard test suites have been developed to date.  The PCTS,
  8215. with around 2600 tests and 150,000 lines of code, just reflects that
  8216. complexity.  An update will be sent to the National Technical
  8217. Information Service (NTIS -- also part of the Department Commerce, but
  8218. not to be confused with NIST) around the end of September which fixes
  8219. all known problems but, with a suite this large, others are likely to
  8220. surface later.
  8221.  
  8222. By the way, NIST's dot one suite is a driver based on the System V
  8223. Verification Suite (SVVS), plus individual tests developed at NIST.
  8224. Work has begun on a suite of tests for 1003.2, based, for convenience,
  8225. on a suite done originally for IBM by Mindcraft.  It isn't clear how
  8226. quickly this work will go.  (For example, the suite can't gel until
  8227. dot two does.) For the dot one work, NIST made good use of Research
  8228.  
  8229. June, 1990 Standards Update                Recent Standards Activities
  8230.  
  8231.  
  8232.                 - 7 -
  8233.  
  8234. Associates -- people whose services were donated by their corporations
  8235. during the test suite development.  Corporations gain an opportunity
  8236. to collaborate with NIST and inside knowledge of the test suite.  I
  8237. suspect Roger Martin may now be seeking Research Associates for dot
  8238. two test suite development.  If you're interested in doing this kind
  8239. of work, want to spend some time working in the Washington, D.C. area,
  8240. and think your company would sponsor you, his email address is
  8241. rmartin@swe.ncsl.nist.gov.
  8242.  
  8243. By the way, there are a variety of organizational and numbering
  8244. changes happening in dot three.  See Doris Lebovits's snitch report
  8245. for details.
  8246.  
  8247. The Steering Committee on Conformance Testing (SCCT) is the group to
  8248. watch.  Though they've evolved out of the dot three effort, they
  8249. operate at the TCOS level, and are about to change the way POSIX
  8250. standards look.  In response to the ever-increasing burden placed on
  8251. the testing committee, the SCCT is going to recommend that groups
  8252. producing new standards include in those standards a list of test
  8253. assertions to be used in testing them.
  8254.  
  8255. Groups that are almost done, like 1003.2, will be grandfathered in.
  8256. But what should be done with a group like dot four -- not far enough
  8257. along that it has something likely to pass soon, but far enough to
  8258. make the addition of major components to its ballot a real problem.
  8259. Should this case be treated like language independence?  If so,
  8260. perhaps dot four will also be first in providing test assertions.
  8261.  
  8262. 1003.4: Real-time extensions
  8263.  
  8264. The base dot-four document has gone to ballot, and the ensuing process
  8265. looks like it may be pretty bloody.  Fifty-seven percent of the group
  8266. voted against the current version.  (One member speculated privately
  8267. that this meant forty-three percent of the balloting group didn't read
  8268. it.) Twenty-two percent of the group (nearly half of those voting
  8269. against) subscribed to all or part of a common reference ballot, which
  8270. would require that entire chapters of the document be completely
  8271. reworked, replaced, or discarded.  Subscribers to this common
  8272. reference ballot included employees of Unix International and the Open
  8273. Software Foundation, of Carnegie-Mellon University and the University
  8274. of California at Berkeley, and of Sun Microsystems and Hewlett-
  8275. Packard.  (USENIX did not ballot similarly, but only because of lack
  8276. of time.) Some of these organizations have never before agreed on the
  8277. day of the week, let alone the semantics of system calls.  But then,
  8278. isn't bringing the industry together one goal of POSIX?
  8279.  
  8280. Still, the document has not been returned to the working group by the
  8281. technical editors, so we can assume they feel hopeful about resolving
  8282. all the objections.  Some of this hope may come from the miracle of
  8283. formality.  I've heard that over half of the common reference ballot
  8284. could be declared non-responsive, which means that there's no
  8285.  
  8286. June, 1990 Standards Update                Recent Standards Activities
  8287.  
  8288.  
  8289.                 - 8 -
  8290.  
  8291. obligation to address over half the concerns.
  8292.  
  8293. The threads work appears to enjoy a more positive consensus.  At least
  8294. two interesting alternatives to the current proposal surfaced at the
  8295. April meeting, but following a lot of discussion, the existing
  8296. proposal stood largely unchanged.  I predict that the threads work
  8297. which will go to ballot after the base, dot four document, will be
  8298. approved before it.  John Gertwagen, dot four snitch and chair of
  8299. UniForum's real-time technical committee, has bet me a beer that I'm
  8300. wrong.
  8301.  
  8302. 1003.5: Ada bindings and 1003.9: FORTRAN-77 bindings
  8303.  
  8304. These groups are coming to the same place at the same time.  Both are
  8305. going to ballot and seem likely to pass quickly.  In each case, the
  8306. major focus is shifting from technical issues to the standards process
  8307. and its rules: forming balloting groups, relations with ISO, future
  8308. directions, and so on.
  8309.  
  8310. Here's your chance to do a good deed without much work.  Stop reading,
  8311. call someone you know who would be interested in these standards, and
  8312. give them the name of someone on the committee who can put them into
  8313. the balloting group.  (If nothing else, point them at our snitches for
  8314. this quarter: Jayne Baker cgb@d74sun.mitre.org, for dot five, and
  8315. Michael Hannah mjhanna@sandia.gov, for dot nine.) They'll get both a
  8316. chance to see the standard that's about to land on top of their work
  8317. and a chance to object to anything that's slipped into the standard
  8318. that doesn't make sense.  The more the merrier on this one, and they
  8319. don't have to go to any committee meetings.  I've already called a
  8320. couple of friends of mine at FORTRAN-oriented companies; both were
  8321. pleased to hear about 1003.9, and eager to read and comment on the
  8322. proposed standard.
  8323.  
  8324. Next up for both groups, after these standards pass, is negotiating
  8325. the IEEE standard through the shoals of ISO, both getting and staying
  8326. in sync with the various versions and updates of the base standard
  8327. (1003.1a, 1003.1b, and 9945-1), and language bindings to other
  8328. standards, like 1003.2 and 1003.4.  (See my earlier discussion of dot
  8329. two.) Notice that they also have the burden of tracking their own
  8330. language standards.  At least in the case of 1003.9, this probably
  8331. means eventually having to think about a binding to X3J3 (Fortran 90).
  8332.  
  8333. 1003.6: Security
  8334.  
  8335. This group has filled the long-vacant post of technical editor, and,
  8336. so, is finally back in the standards business.  In any organization
  8337. whose ultimate product is to be a document, the technical editor is a
  8338. key person.  [We pause here to allow readers to make some obligatory
  8339. cheap shot about editors.] This is certainly the case in the POSIX
  8340. groups, where the technical editors sometimes actually write large
  8341. fractions of the final document, albeit under the direction of the
  8342.  
  8343. June, 1990 Standards Update                Recent Standards Activities
  8344.  
  8345.  
  8346.                 - 9 -
  8347.  
  8348. working group.
  8349.  
  8350. I'm about to post the dot six snitch report, and don't want to give
  8351. any of it away, but will note that it's strongly opinionated and
  8352. challenges readers to find any non-DoD use for Mandatory Access
  8353. Control, one of the half-dozen areas that they're standardizing.
  8354.  
  8355. 1003.7: System administration
  8356.  
  8357. This group has to solve two problems at different levels at the same
  8358. time.  On the one hand, it's creating an object-oriented definition of
  8359. system administration.  This high-level approach encapsulates the
  8360. detailed implementation of objects interesting to the system
  8361. administrator (user, file system, etc.), so that everyone can see them
  8362. in the same way on a heterogeneous environment.  On the other hand,
  8363. the protocol for sending messages to these objects must be specified
  8364. in detail.  If it isn't, manufacturers won't be able to create
  8365. interoperable systems.
  8366.  
  8367. The group as a whole continues to get complaints about its doing
  8368. research-by-committee.  It's not even pretending to standardize
  8369. existing practice.  I have mixed feelings about this, but am
  8370. unreservedly nervous that some of the solutions being contemplated
  8371. aren't even UNIX-like.  For example, the group has tentatively
  8372. proposed the unusual syntax object action.  Command names will be
  8373. names of objects, and the things to be done to them will be arguments.
  8374. This bothers me (and others) for two reasons.  First, this confuses
  8375. syntax with semantics.  You can have the message name first and still
  8376. be object-oriented; look at C++.  Second, it reverses the traditional,
  8377. UNIX verb-noun arrangement: mount filesystem becomes filesystem mount.
  8378. This flies in the face of the few existing practices everyone agrees
  8379. on.  I worry that these problems, and the resulting inconsistencies
  8380. between system administration commands and other utilities, will
  8381. confuse users.  I have a recurring nightmare of a long line of new
  8382. employees outside my door, all come to complain that I've forgotten to
  8383. mark one of my device objects, /dev/null, executable.
  8384.  
  8385. With no existing practice to provide a reality-check, the group faces
  8386. an uphill struggle.  If you're an object-oriented maven with a yen to
  8387. do something useful, take a look at what this group is doing, then
  8388. implement some of it and see if it makes sense.  Look at it this way:
  8389. by the time the standard becomes reality, you'll have a product, ready
  8390. to ship.
  8391.  
  8392. 1003.10: Supercomputing
  8393.  
  8394. This group is working on things many of us us old-timers thought we
  8395. had seen the last of: batch processing and checkpointing.  The
  8396. supercomputing community, condemned forever to live on the edge of
  8397. what computers can accomplish, is forced into the same approaches we
  8398. used back when computer cycles were harder to come by than programmer
  8399. cycles, and machines were less reliable than software.
  8400.  
  8401. June, 1990 Standards Update                Recent Standards Activities
  8402.  
  8403.  
  8404.                 - 10 -
  8405.  
  8406. Supercomputers run programs that can't be run on less powerful
  8407. computers because of their massive resource requirements
  8408. (cpu/memory/io).  They need batch processing and checkpointing because
  8409. many of them are so resource-intensive that they even run for a long
  8410. time on supercomputers.  Nevertheless, the supercomputing community is
  8411. not the only group that would benefit from standardization in these
  8412. areas.  (See, for example, my comments on dot fourteen.) Even people
  8413. who have (or wish to have) long-running jobs on workstations, share
  8414. some of the same needs for batch processing and checkpointing.
  8415.  
  8416. Karen Sheaffer, the chair of dot ten, had no trouble quickly recasting
  8417. the group's proposal for a batch PAR into a proposal that passed the
  8418. SEC's PAR-approval criteria.  The group is modeling a batch proposal
  8419. after existing practice, and things seem to be going smoothly.
  8420.  
  8421. Checkpointing, on the other hand, isn't faring as well.  People who
  8422. program supercomputers need to have a way to snapshot jobs in a way
  8423. that lets them restart the jobs at that point later.  Think, for
  8424. example, of a job that needs to run for longer than a machine's mean-
  8425. time-to-failure.  Or a job that runs for just a little longer than
  8426. your grant money lasts.  There are existing, proprietary schemes in
  8427. the supercomputing world, but none that's portable.  The consensus is
  8428. that a portable mechanism would be useful and that support for
  8429. checkpointing should be added to the dot one standard.  The group
  8430. brought a proposal to dot one b, but it was rejected for reasons
  8431. detailed in Paul Rabin's dot one report.  Indeed, the last I heard,
  8432. dot-one folks were suggesting that dot ten propose interfaces that
  8433. would be called from within the program to be checkpointed.  While
  8434. this may seem to the dot-one folks like the most practical approach,
  8435. it seems to me to be searching under the lamp-post for your keys
  8436. because that's where the light's brightest.  Users need to be able to
  8437. point to a job that's run longer than anticipated and say,
  8438. ``Checkpoint this, please.'' Requiring source-code modification to
  8439. accomplish this is not only unrealistic, it's un-UNIX-like.  (A
  8440. helpful person looking over my shoulder has just pointed out that the
  8441. lawyers have declared ``UNIX'' an adjective, and I should say
  8442. something like ``un-UNIX-system-like'' instead.  He is, of course,
  8443. correct.) Whatever the interface is, it simply must provide a way to
  8444. let a user point at another process and say, ``Snapshot it,'' just as
  8445. we can stop a running job with job control.
  8446.  
  8447. 1003.12: Protocol-independent interfaces
  8448.  
  8449. This group is still working on two separate interfaces to the network:
  8450. Simple Network Interface (SNI) and Detailed Network Interface (DNI).
  8451. The January meeting raised the possibility that the group would
  8452. coalesce these into a single scheme, but that scheme seems not to have
  8453. materialized.  DNI will provide a familiar socket- or XTI/TLI-like
  8454. interface to networks, while SNI will provide a simpler, stdio-like
  8455.  
  8456. June, 1990 Standards Update                Recent Standards Activities
  8457.  
  8458.  
  8459.                 - 11 -
  8460.  
  8461. interface for programs that don't need the level of control that DNI
  8462. will provide.  The challenge of SNI is to make something that's simple
  8463. but not so crippled that it's useless.  The challenge of DNI is to
  8464. negotiate the fine line between the two competing, existing practices.
  8465. The group has already decided not to use either sockets or XTI, and is
  8466. looking at requirements for the replacement.  Our snitch, Andy
  8467. Nicholson, challenged readers to find a reason not to make DNI
  8468. endpoints POSIX file descriptors, but has seen no takers.
  8469.  
  8470. 1003.14: Multiprocessing
  8471.  
  8472. The multiprocessing group, which had been meeting as sort of an ad-hoc
  8473. spin-off of the real-time group, was given PAR approval at the April
  8474. meeting as 1003.16 but quickly renamed 1003.14 for administrative
  8475. reasons.  They're currently going through the standard set of jobs
  8476. that new groups have to accomplish, including figuring out what tasks
  8477. need to be accomplished, whom to delegate them to, and how to attract
  8478. enough working-group members to get everything done.  If you want to
  8479. get in on the ground floor of the multiprocessing standard, come to
  8480. Danvers and volunteer to do something.
  8481.  
  8482. One thing that needs to be done is liaison work with other committees,
  8483. many of which are attacking problems that bear on multiprocessors as
  8484. well.  One example is dot ten's checkpointing work, which I talked
  8485. about earlier, Checkpointing is both of direct interest to dot
  8486. fourteen, and is analogous to several other problems the group would
  8487. like to address.  (A side-effect of the PAR proliferation problem
  8488. mentioned earlier is that inter-group coordination efforts go up as
  8489. the square of the number of groups.)
  8490.  
  8491. 1201: Windows, sort of
  8492.  
  8493. Okay, as a review, we went into the Utah meeting with one official
  8494. group, 1201, and four unofficial groups preparing PARs:
  8495.  
  8496.   1.  1201.1: Application toolkit
  8497.  
  8498.   2.  1201.2: Recommended Practice for Driveability/User Portability
  8499.  
  8500.   3.  1201.3: User Interface Management Systems
  8501.  
  8502.   4.  1201.4: Xlib
  8503.  
  8504. By the end of the week, one PAR had been shot down (1201.3), one
  8505. approved (1201.2), and two remained unsubmitted.
  8506.  
  8507. The 1201.4 par was deferred because the X consortium says Xlib is
  8508. about to change enough that we don't want to standardize the existing
  8509. version.  I'll ask, ``If it's still changing this fast, do we want to
  8510. even standardize on the next version?'' The 1201.1 PAR was deferred
  8511. because the group hasn't agreed on what it wants to do.  At the
  8512.  
  8513. June, 1990 Standards Update                Recent Standards Activities
  8514.  
  8515.  
  8516.                 - 12 -
  8517.  
  8518. beginning of the week, the two major camps (OSF/Motif and OPEN LOOK)*
  8519. had agreed to try to merge the two interfaces.  By mid-week, they
  8520. wouldn't even sit at the same table.  That they'd struck off in an
  8521. alternative, compromise direction by the end of the week speaks
  8522. extremely highly of all involved.  What the group's looking at now is
  8523. a toolkit at the level of XVT**: a layer over all of the current,
  8524. competing technologies that would provide portability without
  8525. invalidating any existing applications.  This seems like just the
  8526. right approach.  (I have to say this because I suggested it in an
  8527. editorial about six months ago.)
  8528.  
  8529. The 1201.3 PAR was rejected.  Actually, 1201 as a whole voted not to
  8530. submit it, but the people working on it felt strongly enough that they
  8531. submitted it anyway.  The SEC's consensus was that the field wasn't
  8532. mature enough to warrant even a recommended practice, but the work
  8533. should continue, perhaps as a UniForum Technical Committee.  The study
  8534. group countered that it was important to set a standard before there
  8535. were competing technologies, and that none of the attendees sponsoring
  8536. companies would be willing to foot the bill for their work within
  8537. anything but a standards body.  The arguments weren't persuasive.
  8538.  
  8539. The 1201.2 PAR, in contrast, sailed through.  What's interesting about
  8540. this work is that it won't be an API standard.  A fair fraction of the
  8541. committee members are human-factors people, and the person presenting
  8542. the PAR convinced the SEC that there is now enough consensus in this
  8543. area that a standard is appropriate.  I'm willing to believe this, but
  8544. I think that stretching the net of the IEEE's Technical Committee on
  8545. Operating Systems so wide that it takes in a human-factors standard
  8546. for windowing systems is overreaching.
  8547.  
  8548. X3
  8549.  
  8550. There are other ANSI-accredited standards-sponsoring bodies in the
  8551. U.S. besides the IEEE.  The best known in our field is the Computer
  8552. Business Equipment Manufacturers' Association (CBEMA), which sponsors
  8553. the X3 efforts, recently including X3J11, the ANSI-C standards
  8554. committee.  X3J11's job has wound down; Doug Gwyn tells me that
  8555. there's so little happening of general interest that it isn't worth a
  8556. report.  Still, there's plenty going on in the X3 world.  One example
  8557. is X3B11, which is developing a standard for file systems on optical
  8558. disks.  Though this seems specialized, Andrew Hume suggests in his
  8559.  
  8560. __________
  8561.  
  8562.   * OSF/Motif is a Registered Trademark of the Open Software
  8563.     Foundation.
  8564.     OPEN LOOK is a Registered Trademark of AT&T.
  8565.  
  8566.  ** XVT is a trademark of XVT Software Inc.
  8567.  
  8568. June, 1990 Standards Update                Recent Standards Activities
  8569.  
  8570.  
  8571.                 - 13 -
  8572.  
  8573. report that this work may eventually evolve into a standards effort
  8574. for file systems on any read-write mass storage device.  See the dot-
  8575. four common reference ballot for the kind of feelings new file-system
  8576. standards bring out.
  8577.  
  8578. I encourage anyone out there on an X3 committee who thinks the
  8579. committee could use more user exposure and input to file a report.
  8580. For example, Doug Gwyn suggests that there is enough activity in the
  8581. C++ standards world to merit a look.  If anyone out there wants to
  8582. volunteer a report, I'd love to see it.
  8583.  
  8584. June, 1990 Standards Update                Recent Standards Activities
  8585.  
  8586. Volume-Number: Volume 20, Number 66
  8587.  
  8588. From jsq@tic.com  Sat Jun 30 01:21:03 1990
  8589. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  8590.     id AA08761; Sat, 30 Jun 90 01:21:03 -0400
  8591. Posted-Date: 29 Jun 90 21:12:26 GMT
  8592. Received: by cs.utexas.edu (5.64/1.65)
  8593.     id AA05276; Sat, 30 Jun 90 00:20:58 -0500
  8594. Received: by longway.tic.com (4.22/tic.1.2)
  8595.     id AA12252; Sat, 30 Jun 90 00:14:40 cdt
  8596. From: Jason Zions <jason@cnd.hp.com>
  8597. Newsgroups: comp.std.unix
  8598. Subject: Re: Standards Update, IEEE 1003.6: Security
  8599. Message-Id: <752@longway.TIC.COM>
  8600. Sender: std-unix@tic.com
  8601. Reply-To: std-unix@uunet.uu.net
  8602. Organization: Hewlett Packard, Information Networks Group
  8603. Date: 29 Jun 90 21:12:26 GMT
  8604. Apparently-To: std-unix-archive@uunet.uu.net
  8605.  
  8606. From:  Jason Zions <jason@cnd.hp.com>
  8607.  
  8608. > Conversely, users at a high classification may not make their work
  8609. > available to users at a lower classification: one can neither ``read up''
  8610. > nor ``write down.'' There are also compartments within each
  8611. > classification level, such as NATO, nuclear, DOE, or project X.  Access
  8612. > requires the proper level and authorization for all compartments
  8613. > associated with the resource.  The MAC group is defining interfaces for
  8614. > such a mandatory mechanism.  It's not as confusing as it sounds, but
  8615. > outside of the DoD it is as useless as it sounds.  (Prove me wrong.  Show
  8616. > me how this DoD policy is useful in a commercial environment.)
  8617.  
  8618. Both compartmentalization and classification have commercial applications,
  8619. but I'm not certain those applications justify the cost and pain.
  8620.  
  8621. Compartmentalization: Large organizations frequently pursue strategies and
  8622. practices in the course of daily business that seem, well, contradictory.
  8623. Things like negotiating with arch-rival companies to sell each of them
  8624. exclusive rights to a particular technology; at some point, when the
  8625. higher-ups figure one of the two deals is superior, the other "falls
  8626. through". For the sake of verisimilitude, one might wish to
  8627. compartmentalize both negotiation efforts from each other and from the rest
  8628. of the company on a "need-to-know" basis.
  8629.  
  8630. One might wish to compartmentalize ones research labs from ones marketing
  8631. people to prevent the marketing of "futures"; similarly, separating R&D
  8632. from support organizations can help prevent leakage.
  8633.  
  8634. All of these can be accomplished by a Simple Matter Of Policy; it is a
  8635. known phenomena, though, that the large the company the higher the
  8636. probability of leakage, regardless of policy. MAC can help.
  8637.  
  8638. Classification: Certain kinds of information are frequently required by law
  8639. to be controlled with respect to dissemination internally; data related to
  8640. profit and loss, stock exchange filings, personnel data, etc. Many
  8641. companies today forbid the electronic storage of such restricted
  8642. information, and they distribute it by means of printed copies, numbered
  8643. and signed for, burn-before-reading. It'd be nice to be able to store that
  8644. stuff on-line, transmit it electronically, while ensuring that those who
  8645. are not permitted by law to see the information cannot see it.
  8646.  
  8647. Again, SMOP can accomplish this; however, it's a lot easier to prove
  8648. someone is or is not an "insider" in the technical sense of the term by
  8649. showing whether or not they hda access to the relevant data, and by
  8650. recourse to an audit trail.
  8651.  
  8652.  - - - -
  8653.  
  8654. > Jason Zions, of HP, gave one of the most interesting and aggressive
  8655.                                                            ^^^^^^^^^^
  8656. > presentations of the day, on the work of the Transparent File Access
  8657. > Group, which included a preliminary list of issues that 1003.8 feels
  8658. > need to be reviewed.
  8659.  
  8660. Really? (wince)  Musta been a bad day. My apologies to all.
  8661.  
  8662. Jason Zions
  8663. Chair, 1003.8
  8664.  
  8665. Volume-Number: Volume 20, Number 67
  8666.  
  8667. From jsq@tic.com  Sat Jun 30 01:21:13 1990
  8668. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  8669.     id AA08804; Sat, 30 Jun 90 01:21:13 -0400
  8670. Posted-Date: 29 Jun 90 22:09:32 GMT
  8671. Received: by cs.utexas.edu (5.64/1.65)
  8672.     id AA05290; Sat, 30 Jun 90 00:21:08 -0500
  8673. Received: by longway.tic.com (4.22/tic.1.2)
  8674.     id AA12313; Sat, 30 Jun 90 00:17:25 cdt
  8675. From: Randall Atkinson <randall@uvaarpa.Virginia.EDU>
  8676. Newsgroups: comp.std.unix
  8677. Subject: Mandatory Access Controls in the commercial world
  8678. Message-Id: <753@longway.TIC.COM>
  8679. Sender: std-unix@tic.com
  8680. Reply-To: std-unix@uunet.uu.net
  8681. Date: 29 Jun 90 22:09:32 GMT
  8682. Apparently-To: std-unix-archive@uunet.uu.net
  8683.  
  8684. From:  randall@uvaarpa.Virginia.EDU (Randall Atkinson)
  8685.  
  8686. % The TCSEC security criteria's popularity and widespread acceptance
  8687. % have given MAC another connotation -- that of a codification of the
  8688. % familiar, U.S.-government, hierarchical security classifications: Top
  8689. % Secret, Classified, and Unclassified.  Government policy prohibits
  8690. % users of a lower classification from viewing work of a higher
  8691. % classification.  Conversely, users at a high classification may not
  8692. % make their work available to users at a lower classification: one can
  8693. % neither ``read up'' nor ``write down.'' There are also compartments
  8694. % within each classification level, such as NATO, nuclear, DOE, or
  8695. % project X.  Access requires the proper level and authorization for all
  8696. % compartments associated with the resource.  The MAC group is defining
  8697. % interfaces for such a mandatory mechanism.  It's not as confusing as
  8698. % it sounds, but outside of the DoD it is as useless as it sounds.
  8699.  
  8700. I disagree.  The mechanisms described here are indeed useful
  8701. in the commercial world.  For example, an insurance company happens to
  8702. own and operate both a bank and a savings & loan and a lot of customers
  8703. of the banks are owner-members of the insurance firm.  The firm is legally
  8704. obligated not to permit the bank/s&l to have access to information on
  8705. a customers insurance information or the fact that he/she is a member-owner
  8706. of the insurance firm without explicit written permission from the individual
  8707. whose records we are concerned with here.  But the insurance agency may
  8708. legally access the information in the bank/s&l on its customers.  This
  8709. is analgous to the workers at the insurance firm being in a different 
  8710. compartment than the workers at the bank or s&l.  Similarly, a bank teller 
  8711. would normally be able to access one level of information and a loan officer 
  8712. or branch manager a different level of information.  Please note 
  8713. that my example is real-world rather than one I'm making up.
  8714.  
  8715. Similarly, firms engaged in product development of one sort or another,
  8716. for example making computer systems, frequently have projects with different
  8717. sensitivites and areas of access.  Often the goal is deliberately
  8718. restrict and compartmentalise information about actual costs or profit
  8719. margin or future plans or two groups with competing approaches to solving
  8720. customer needs.  The management will find it useful to control information
  8721. access both horizontally and vertically.
  8722.  
  8723. Certainly the restrictions on write-down and read-up are essential
  8724. to having a viable security system.  It is possible and desirable to
  8725. talk in terms of having both vertical levels of access and horizontal
  8726. compartmentalisation without actually using DoD's official classifications
  8727. whatever they might be.  I trust the POSIX draft doesn't talk in terms
  8728. of Unclassified, Secret, and Top Secret as that would be inappropriate.
  8729.  
  8730.  
  8731. Randall Atkinson
  8732. randall@virginia.edu
  8733. Opinions are those of the author.
  8734.  
  8735. Volume-Number: Volume 20, Number 68
  8736.  
  8737. From jsq@tic.com  Sat Jun 30 01:21:24 1990
  8738. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  8739.     id AA08840; Sat, 30 Jun 90 01:21:24 -0400
  8740. Posted-Date: 29 Jun 90 21:33:13 GMT
  8741. Received: by cs.utexas.edu (5.64/1.65)
  8742.     id AA05298; Sat, 30 Jun 90 00:21:19 -0500
  8743. Received: by longway.tic.com (4.22/tic.1.2)
  8744.     id AA12387; Sat, 30 Jun 90 00:20:56 cdt
  8745. From: Doug Gwyn <gwyn@smoke.brl.mil>
  8746. Newsgroups: comp.std.unix
  8747. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  8748. Message-Id: <754@longway.TIC.COM>
  8749. References: <385@usenix.ORG>
  8750. Sender: std-unix@tic.com
  8751. Reply-To: std-unix@uunet.uu.net
  8752. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  8753. Date: 29 Jun 90 21:33:13 GMT
  8754. Apparently-To: std-unix-archive@uunet.uu.net
  8755.  
  8756. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  8757.  
  8758. >There was a discussion about whether it is possible (and preferable)
  8759. >to improve the low-level directory interfaces instead of adding new,
  8760. >high-level interfaces.  Do the high-level interfaces really add new
  8761. >functionality for portable applications?  Do they belong with the
  8762. >low-level operating system interfaces specified in 1003.1?
  8763.  
  8764. No, definitely not.  However, they would be appropriate at the 1003.2
  8765. level.  Note that 1003.2 implementations are not constrained to use
  8766. only 1003.1 facilities, so the fact that it's hard to implement tree
  8767. walkers right using the existing 1003.1 directory access functions is
  8768. no argument against defining tree walkers as part of a higher level.
  8769.  
  8770. >The ISO POSIX group (JTC1/SC22/WG15) pointed out that both of these
  8771. >[tar, cpio] formats are incompatible with accepted international and U.S.
  8772. >standards.  After some arm twisting, the 1003.1 working group agreed
  8773. >to devise a new data interchange format based on IS 1001: 1986, which
  8774. >is more or less equivalent to ANS X3.27-1987, the familiar ANSI
  8775. >labeled tape format.
  8776.  
  8777. The ANSI magtape format is simply inappropriate.  UNIX archives were
  8778. designed to be single files, making it simple to transport them by
  8779. means other than magnetic tape.  In this modern networked world, for
  8780. the most part magnetic tape is an anachronism.  Any archive format
  8781. standard for UNIX should not depend on the archive supporting
  8782. multiple files, tape marks, or any other non-UNIX concept.
  8783.  
  8784. It is to the credit of UNIX's original designers that they did NOT
  8785. blindly adopt existing standards when they were technically inferior.
  8786. Let's not make the POSIX standards impose conventional-think upon
  8787. UNIX environments..
  8788.  
  8789. Volume-Number: Volume 20, Number 69
  8790.  
  8791. From jsq@tic.com  Sat Jun 30 01:21:36 1990
  8792. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  8793.     id AA08911; Sat, 30 Jun 90 01:21:36 -0400
  8794. Posted-Date: 29 Jun 90 21:36:16 GMT
  8795. Received: by cs.utexas.edu (5.64/1.65)
  8796.     id AA05306; Sat, 30 Jun 90 00:21:30 -0500
  8797. Received: by longway.tic.com (4.22/tic.1.2)
  8798.     id AA12443; Sat, 30 Jun 90 00:23:40 cdt
  8799. From: Doug Gwyn <gwyn@smoke.brl.mil>
  8800. Newsgroups: comp.std.unix
  8801. Subject: Re: UIDs and GIDs
  8802. Message-Id: <755@longway.TIC.COM>
  8803. References: <743@longway.TIC.COM>
  8804. Sender: std-unix@tic.com
  8805. Reply-To: std-unix@uunet.uu.net
  8806. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  8807. Date: 29 Jun 90 21:36:16 GMT
  8808. Apparently-To: std-unix-archive@uunet.uu.net
  8809.  
  8810. From: Doug Gwyn <gwyn@smoke.brl.mil>
  8811.  
  8812. In article <743@longway.TIC.COM> From: mbrown@osf.org (Mark Brown)
  8813. >How does one handle (or can one handle) certain networking conventions that
  8814. >use a "dummy" user ("nobody") and require a user id of -2 ?
  8815.  
  8816. These are not POSIX-conforming.
  8817. NFS was determined to not be POSIX-conformant in several ways
  8818. during 1003.1 deliberations.  Our consensus was that we shouldn't
  8819. mess up UNIX standards to accommodate such clear violations of
  8820. UNIX conventions as the use of negative UIDs.
  8821.  
  8822. It is possible that you can get away with using UID 65534 instead
  8823. of -2.
  8824.  
  8825. Volume-Number: Volume 20, Number 70
  8826.  
  8827. From jsq@tic.com  Sat Jun 30 01:21:45 1990
  8828. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  8829.     id AA08940; Sat, 30 Jun 90 01:21:45 -0400
  8830. Posted-Date: 29 Jun 90 21:46:11 GMT
  8831. Received: by cs.utexas.edu (5.64/1.65)
  8832.     id AA05326; Sat, 30 Jun 90 00:21:41 -0500
  8833. Received: by longway.tic.com (4.22/tic.1.2)
  8834.     id AA12500; Sat, 30 Jun 90 00:26:28 cdt
  8835. From: Doug Gwyn <gwyn@smoke.brl.mil>
  8836. Newsgroups: comp.std.unix
  8837. Subject: Re: Standards Update, IEEE 1003.5: Ada bindings
  8838. Message-Id: <756@longway.TIC.COM>
  8839. References: <732@longway.TIC.COM> <738@longway.TIC.COM> <744@longway.TIC.COM>
  8840. Sender: std-unix@tic.com
  8841. Reply-To: std-unix@uunet.uu.net
  8842. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  8843. Date: 29 Jun 90 21:46:11 GMT
  8844. Apparently-To: std-unix-archive@uunet.uu.net
  8845.  
  8846. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  8847.  
  8848. In article <744@longway.TIC.COM> From: buck@drax.gsfc.nasa.gov (Loren Buchanan)
  8849. >Why should PASCALers, FORTRANers, etc. be coerced into giving up
  8850. >their favorite language.  I regularly use three different langauges,
  8851. >and I expect that the operating environment I am working under will
  8852. >not impede my use of these languages.
  8853.  
  8854. That's not what we're talking about.  Pascal and Fortran can be
  8855. fully implemented in a UNIX environment.  You are not being asked
  8856. to "give up" those languages.  What I am saying is that you should
  8857. not insist on using a language in an application domain for which
  8858. it is ill suited.  Fortran is not an appropriate choice for systems
  8859. programming applications in a UNIX environment.  While it is
  8860. perhaps possible to devise a complete 1003.1 binding for Fortran
  8861. (I suspect it wouldn't be possible for BASIC), there is no real need
  8862. to do so.  On the other end of the spectrum, Ada has its own notions
  8863. of tasking that don't mesh well with UNIX's process model.  Since
  8864. the promulgators of Ada have insisted for years that Ada programs
  8865. must not use extensions to the language, I suggest that holding them
  8866. to their word would have been quite appropriate.
  8867.  
  8868. Volume-Number: Volume 20, Number 71
  8869.  
  8870. From jsq@tic.com  Sat Jun 30 01:21:55 1990
  8871. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  8872.     id AA08963; Sat, 30 Jun 90 01:21:55 -0400
  8873. Posted-Date: 29 Jun 90 19:40:47 GMT
  8874. Received: by cs.utexas.edu (5.64/1.65)
  8875.     id AA05335; Sat, 30 Jun 90 00:21:51 -0500
  8876. Received: by longway.tic.com (4.22/tic.1.2)
  8877.     id AA12558; Sat, 30 Jun 90 00:29:34 cdt
  8878. From: peter da silva <peter@ficc.ferranti.com>
  8879. Newsgroups: comp.std.unix
  8880. Subject: Re: Standards Update, IEEE 1003.6: Security
  8881. Message-Id: <757@longway.TIC.COM>
  8882. References: <384@usenix.ORG>
  8883. Sender: std-unix@tic.com
  8884. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  8885. Organization: Xenix Support, FICC
  8886. Date: 29 Jun 90 19:40:47 GMT
  8887. Apparently-To: std-unix-archive@uunet.uu.net
  8888.  
  8889. From:  peter@ficc.ferranti.com (peter da silva)
  8890.  
  8891. In article <384@usenix.ORG> From:  <jsh@usenix.org> (anonymous 1003.6 report)
  8892. > At the ISO level, there will be no separate security standard. ...
  8893. > This means every conforming
  8894. > system will include security mechanisms.
  8895.  
  8896. You mean, "will include DoD-style security mechanisms". The somewhat
  8897. simple-minded approach UNIX has had in the past has been remarkably
  8898. successful, considering.
  8899.  
  8900. > I like this.  Do you?
  8901.  
  8902. Only if it's possible to turn everything off and go back to /etc/passwd
  8903. and /etc/shadow, and a superuser. That way when something goes wrong you'll
  8904. be able to boot from tape or floppy, edit a couple of files, and recover
  8905. the system. 
  8906.  
  8907. Because something *will* go wrong.
  8908. -- 
  8909. Peter da Silva.   `-_-'
  8910. +1 713 274 5180.
  8911. <peter@ficc.ferranti.com>
  8912.  
  8913. Volume-Number: Volume 20, Number 72
  8914.  
  8915. From jsq@tic.com  Sat Jun 30 15:01:52 1990
  8916. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  8917.     id AA13140; Sat, 30 Jun 90 15:01:52 -0400
  8918. Posted-Date: 29 Jun 90 14:07:42 GMT
  8919. Received: by cs.utexas.edu (5.64/1.65)
  8920.     id AA24409; Sat, 30 Jun 90 11:18:42 -0500
  8921. Received: by longway.tic.com (4.22/tic.1.2)
  8922.     id AA13336; Sat, 30 Jun 90 10:31:00 cdt
  8923. From: D'Arcy J.M. Cain <druid!darcy@cs.utexas.edu>
  8924. Newsgroups: comp.std.unix
  8925. Subject: Re: parseargs vs. getopt
  8926. Message-Id: <758@longway.TIC.COM>
  8927. References: <378@usenix.ORG> <728@longway.TIC.COM> <729@longway.TIC.COM> <733@longway.TIC.COM> <742@longway.TIC.COM>
  8928. Sender: std-unix@tic.com
  8929. Reply-To: druid!darcy@cs.utexas.edu (D'Arcy J.M. Cain)
  8930. Organization: D'Arcy Cain Consulting, West Hill, Ontario
  8931. Date: 29 Jun 90 14:07:42 GMT
  8932. Apparently-To: std-unix-archive@uunet.uu.net
  8933.  
  8934. From:  darcy@druid.uucp (D'Arcy J.M. Cain)
  8935.  
  8936. In article <742@longway.TIC.COM> std-unix@uunet.uu.net writes:
  8937. >From:  lezz@codex.uucp (Leslie Giles)
  8938. >darcy@druid.uucp (D'Arcy J.M. Cain) writes:
  8939. >>   ... You can
  8940. >>also initialise the argument list more than once supporting things such
  8941. >>as environment default command lines, arguments from files etc mixed
  8942. >>with arguments from the command line.  I just posted it recently to
  8943. >>alt.sources and I'm interested in getting some feedback on it.
  8944. >
  8945. >It is also possible to restart getopt() by setting various variables.
  8946. >I did this in some code to support defaults, as mentioned above.  If anybody
  8947. >wants to know how to do this then you can mail me (I don't have the code in
  8948. >front of me at the moment - it'd take time to find it) at...
  8949. >
  8950. I guess I wasn't clear in that paragraph.  The posting goes into great detail
  8951. about this but the main point is not that you can restart your argument
  8952. processing but that another set of arguments can be stuffed into the ones
  8953. you already have.  It allows for something like the following:  Say you
  8954. have a program called foo which takes options a & b with no arguments and
  8955. f with an argument "on" or "off".  Perhaps the user normally wants this flag
  8956. off but wants to override that default this time.  Also the a flag is always
  8957. used.  The .profile has the following line:
  8958.  
  8959. foo="-a -f off"
  8960.  
  8961. Assume also that there is a file called bar with the following line:
  8962.  
  8963. -b
  8964.  
  8965. then he calls the program like this:
  8966.  
  8967. foo -f on -@ bar file1 -f off file2
  8968.  
  8969. Assuming that the program is set up correctly then the effective command
  8970. is
  8971.  
  8972. foo -a -f off -f on -b file1 -f off file2
  8973.  
  8974. Which should process file1 with the flag turned on and file2 with the flag
  8975. turned off.  As you can see, The environment variable is stuffed into the
  8976. command line between the program name and the first argument and the contents
  8977. of the file bar is inserted in the line where the file name appears.  While
  8978. it may be possible to do something like that with getopt I imagine it would
  8979. not be as simple as with my interface.
  8980.  
  8981. -- 
  8982. D'Arcy J.M. Cain (darcy@druid)     |   Government:
  8983. D'Arcy Cain Consulting             |   Organized crime with an attitude
  8984. West Hill, Ontario, Canada         |
  8985. (416) 281-6094                     |
  8986.  
  8987. Note to moderator:  I think this is the wrong group to discuss but I can't
  8988. decide the proper one.  Please feel free to add a followup-to line if you
  8989. wish.
  8990.  
  8991. [ I don't know a better place for it, either. -mod ]
  8992.  
  8993. Volume-Number: Volume 20, Number 73
  8994.  
  8995. From jsq@tic.com  Sat Jun 30 15:01:17 1990
  8996. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  8997.     id AA12874; Sat, 30 Jun 90 15:01:17 -0400
  8998. Posted-Date: 30 Jun 90 01:52:12 GMT
  8999. Received: by cs.utexas.edu (5.64/1.65)
  9000.     id AA24431; Sat, 30 Jun 90 11:19:35 -0500
  9001. Received: by longway.tic.com (4.22/tic.1.2)
  9002.     id AA13395; Sat, 30 Jun 90 10:34:06 cdt
  9003. From: John F. Haugh II <jfh@rpp386.cactus.org>
  9004. Newsgroups: comp.std.unix
  9005. Subject: Re: UIDs and GIDs
  9006. Message-Id: <759@longway.TIC.COM>
  9007. References: <743@longway.TIC.COM>
  9008. Sender: std-unix@tic.com
  9009. Reply-To: jfh@rpp386.cactus.org (John F. Haugh II)
  9010. Organization: Lone Star Cafe and BBS Service
  9011. Date: 30 Jun 90 01:52:12 GMT
  9012. Apparently-To: std-unix-archive@uunet.uu.net
  9013.  
  9014. From:  jfh@rpp386.cactus.org (John F. Haugh II)
  9015.  
  9016. In article <743@longway.TIC.COM> From: mbrown@osf.org (Mark Brown)
  9017. >How does one handle (or can one handle) certain networking conventions that
  9018. >use a "dummy" user ("nobody") and require a user id of -2 ?
  9019.  
  9020. The solution in AIX 3.1 was to use whatever the value of (unsigned) -2
  9021. happens to be as an unsigned integer string.  It comes out to be some
  9022. real long ugly number ...
  9023. -- 
  9024. John F. Haugh II                             UUCP: ...!cs.utexas.edu!rpp386!jfh
  9025. Ma Bell: (512) 832-8832                           Domain: jfh@rpp386.cactus.org
  9026.  
  9027.                                             Proud Pilot of RS/6000 Serial #1472
  9028.  
  9029. Volume-Number: Volume 20, Number 74
  9030.  
  9031. From jsq@tic.com  Sat Jun 30 14:58:30 1990
  9032. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9033.     id AA11537; Sat, 30 Jun 90 14:58:30 -0400
  9034. Posted-Date: 30 Jun 90 06:07:54 GMT
  9035. Received: by cs.utexas.edu (5.64/1.65)
  9036.     id AA24440; Sat, 30 Jun 90 11:19:43 -0500
  9037. Received: by longway.tic.com (4.22/tic.1.2)
  9038.     id AA13502; Sat, 30 Jun 90 10:41:55 cdt
  9039. From: Robert A. Bruce <rab@allspice.Berkeley.EDU>
  9040. Newsgroups: comp.std.unix
  9041. Subject: POSIX test suite
  9042. Message-Id: <760@longway.TIC.COM>
  9043. Sender: std-unix@tic.com
  9044. Reply-To: std-unix@uunet.uu.net
  9045. Organization: University of California, Berkeley
  9046. Date: 30 Jun 90 06:07:54 GMT
  9047. Apparently-To: std-unix-archive@uunet.uu.net
  9048.  
  9049. From: rab@sprite.Berkeley.EDU (Robert A. Bruce)
  9050.  
  9051. I am looking for a POSIX test suite.  I would prefer free
  9052. software, but I would like to hear about commercial suites
  9053. too.  Thanks for any info.
  9054.  
  9055.         rab@sprite.Berkeley.EDU
  9056.  
  9057.  
  9058. Volume-Number: Volume 20, Number 75
  9059.  
  9060. From jsq@tic.com  Sat Jun 30 15:02:44 1990
  9061. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9062.     id AA13586; Sat, 30 Jun 90 15:02:44 -0400
  9063. Posted-Date: 30 Jun 90 10:28:58 GMT
  9064. Received: by cs.utexas.edu (5.64/1.65)
  9065.     id AA24501; Sat, 30 Jun 90 11:20:56 -0500
  9066. Received: by longway.tic.com (4.22/tic.1.2)
  9067.     id AA13909; Sat, 30 Jun 90 11:24:08 cdt
  9068. From: Richard A. O'Keefe <ok@goanna.cs.rmit.OZ.AU>
  9069. Newsgroups: comp.std.unix
  9070. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  9071. Message-Id: <761@longway.TIC.COM>
  9072. References: <385@usenix.ORG> <754@longway.TIC.COM>
  9073. Sender: std-unix@tic.com
  9074. Reply-To: std-unix@uunet.uu.net
  9075. Organization: Comp Sci, RMIT, Melbourne, Australia
  9076. Date: 30 Jun 90 10:28:58 GMT
  9077. Apparently-To: std-unix-archive@uunet.uu.net
  9078.  
  9079. Moderator!:  Delete most of these lines (begin):
  9080. Return-Path: <uunet!goanna.cs.rmit.OZ.AU!ok>
  9081. Submitted-From: uunet!goanna.cs.rmit.OZ.AU!ok (Richard A. O'Keefe)
  9082. Moderator!:  Delete most of these lines (end).
  9083.  
  9084. From:  ok@goanna.cs.rmit.OZ.AU (Richard A. O'Keefe)
  9085.  
  9086.  
  9087. >In <385@usenix.ORG> From: jsh@usenix.org, Paul Rabin <rabin@osf.org>
  9088. > reports on the April 23-27 meeting in Salt Lake City, UT:
  9089. >...
  9090. > There was a discussion about whether it is possible (and preferable)
  9091. > to improve the low-level directory interfaces instead of adding new,
  9092. > high-level interfaces.  Do the high-level interfaces really add new
  9093. > functionality for portable applications?  Do they belong with the
  9094. > low-level operating system interfaces specified in 1003.1?
  9095.  
  9096. In article <754@longway.TIC.COM>, gwyn@smoke.brl.mil (Doug Gwyn) writes:
  9097. > From:  Doug Gwyn <gwyn@smoke.brl.mil>
  9098. > No, definitely not.  However, they would be appropriate at the 1003.2
  9099. > level.
  9100.  
  9101. If I want file tree walking, what's wrong with something on the order of
  9102.     FILE *files_selected = popen("find ......");
  9103. Presumably popen() and 'find' have to be in 1003.2 anyway.  There is
  9104. precisely one reason why I can't use this right now, and that is that
  9105. 'find' doesn't quote its output, so if there is a file name with an
  9106. embedded \n things break.  That might be addressed by any number of
  9107. methods; one simple method would be to add a
  9108.     -length
  9109. subcommand which would do the equivalent of
  9110.     printf("%d %s\n", strlen(pathname), pathname);
  9111. where the existing
  9112.     -print
  9113. subcommand does the equivalent of
  9114.     printf("%s\n", pathname);
  9115.  
  9116. If I understand Doug Gwyn correctly, that's the kind of thing he has
  9117. in mind.  It is, after all, no more than the traditional UNIX Way.
  9118.  
  9119. By the way, I don't quite understand the file tree walking problem.
  9120. Unless one has some absolutely compelling reason for requiring a
  9121. depth-first search and not using /tmp files, something like 'find'
  9122. can be done using
  9123.     - one file descriptor to send file names to
  9124.       (used sequentially)
  9125.     - one file descriptor for a work file
  9126.       (random access)
  9127.     - one directory descriptor or whatever
  9128.       (each directory being opened once, scanned once, and
  9129.        never looked at again)
  9130. Basically you do a breadth-first search of directories, using the work
  9131. file to hold the queue.  If you want some other order, sort the output.
  9132. This is, of course, vulnerable to directories being renamed while the
  9133. walk is in progress, but so is a depth-first walker that can't hang on
  9134. to all the directories in the current branch.
  9135.  
  9136. -- 
  9137. "private morality" is an oxymoron, like "peaceful war".
  9138.  
  9139. Volume-Number: Volume 20, Number 76
  9140.  
  9141. From jsq@tic.com  Sun Jul  1 12:09:41 1990
  9142. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9143.     id AA10223; Sun, 1 Jul 90 12:09:41 -0400
  9144. Posted-Date: 1 Jul 90 06:38:34 GMT
  9145. Received: by cs.utexas.edu (5.64/1.68)
  9146.     id AA17519; Sun, 1 Jul 90 11:09:38 -0500
  9147. Received: by longway.tic.com (4.22/tic.1.2)
  9148.     id AA16129; Sun, 1 Jul 90 11:18:40 cdt
  9149. From: Barry Margolin <barmar@Think.COM>
  9150. Newsgroups: comp.std.unix
  9151. Subject: Re: Standards Update, Recent Standards Activities
  9152. Message-Id: <762@longway.TIC.COM>
  9153. References: <387@usenix.ORG>
  9154. Sender: std-unix@tic.com
  9155. Reply-To: barmar@Think.COM (Barry Margolin)
  9156. Organization: Thinking Machines Corporation, Cambridge MA, USA
  9157. Date: 1 Jul 90 06:38:34 GMT
  9158. Apparently-To: std-unix-archive@uunet.uu.net
  9159.  
  9160. Moderator!:  Delete most of these lines (begin):
  9161. Return-Path: <news@Think.COM>
  9162. Sender: uunet!Think.COM!news
  9163. Submitted-From: uunet!Think.COM!barmar (Barry Margolin)
  9164. Moderator!:  Delete most of these lines (end).
  9165.  
  9166. From:  barmar@Think.COM (Barry Margolin)
  9167.  
  9168. In article <387@usenix.ORG> From: <jsh@usenix.org>
  9169. >  The problem being addressed is how to move all printable
  9170. >strings out of our programs and into external ``message'' files so
  9171. >that we can change program output from, say, English to German by
  9172. >changing an environmental variable.
  9173.  
  9174. Both examples you supplied were simply ways to look up strings to output in
  9175. a database keyed on locale and an internal program string; they differ only
  9176. in minor ways.  Does either proposal address any of the *hard* issues?  For
  9177. instance, different languages have different pluralization rules; how do
  9178. you internationalize a program that automatically pluralizes when necessary
  9179. (I hate programs that say things like "1 files deleted")?  Or what about
  9180. differing word order; how would you internationalize
  9181.  
  9182.     printf("the %s %s", adjective, noun);
  9183.  
  9184. so that it would look right in a language where adjectives follow nouns?
  9185. --
  9186. Barry Margolin, Thinking Machines Corp.
  9187.  
  9188. barmar@think.com
  9189. {uunet,harvard}!think!barmar
  9190.  
  9191. Volume-Number: Volume 20, Number 77
  9192.  
  9193. From jsq@tic.com  Sun Jul  1 14:06:44 1990
  9194. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9195.     id AA02669; Sun, 1 Jul 90 14:06:44 -0400
  9196. Posted-Date: 1 Jul 90 17:48:10 GMT
  9197. Received: by cs.utexas.edu (5.64/1.68)
  9198.     id AA22578; Sun, 1 Jul 90 13:06:40 -0500
  9199. Received: by longway.tic.com (4.22/tic.1.2)
  9200.     id AA16752; Sun, 1 Jul 90 12:48:41 cdt
  9201. From: Mike Schultz <sybil!mikes@cs.utexas.edu>
  9202. Newsgroups: comp.std.unix
  9203. Subject: Re: Common Reference Ballot
  9204. Message-Id: <763@longway.TIC.COM>
  9205. Sender: std-unix@tic.com
  9206. Reply-To: std-unix@uunet.uu.net
  9207. Original-Date: Sun Jun 17 09:45:41 1990
  9208. Date: 1 Jul 90 17:48:10 GMT
  9209. Apparently-To: std-unix-archive@uunet.uu.net
  9210.  
  9211. From:  mikes@sybil.uucp (Mike Schultz)
  9212.  
  9213. [ I thought I posted this one a couple weeks ago, but apparently I
  9214. missed it while I was at USENIX.  Sorry about that.  -mod ]
  9215.  
  9216. > From:  Chuck.Phillips@FtCollins.NCR.COM (Chuck.Phillips)
  9217. > It *seems* to me that directly implementing mmap() with SVr4 semantics
  9218. > under VMS, AGEIS (and of course Multics :-) would be possible.  UNIX
  9219. > appears to be the late comer with shared memory.  Am I missing something?
  9220.  
  9221. Yes, imbedded controllers that may not have a real file system.
  9222.  
  9223. > Regarding IPC and mmap():
  9224. > If I understand the SVr4 implementation of mmap() correctly, it is only
  9225. > possible to share write enabled memory between processes if mmap()ing a
  9226. > file system file, but not possible using "anonymous" (a.k.a. swap) memory.
  9227. > Is it possible, and if it is possible, are you restricted to sharing
  9228. > anonymous memory between parent and child processes due to lack of a
  9229. > file system handle?
  9230.  
  9231. I'm afraid that I don't understand your question here.  It is .4's specific
  9232. goal to not restrict which processes have access to the shared memory.
  9233.  
  9234. > In any case, is (or are there plans for) one of the POSIX groups to address
  9235. > mmap() (or whatever it will be called) specificly as a method of IPC?  It
  9236. > appears SVr4 shared memory (shmat(), et al) offers little mmap() does not
  9237. > (or couldn't easily be added, like handles).
  9238.  
  9239. I don't know.
  9240.  
  9241. Mike Schultz
  9242. sybil!mikes@oakhill.sps.mot.com
  9243.  
  9244. Volume-Number: Volume 20, Number 78
  9245.  
  9246. From jsq@tic.com  Sun Jul  1 14:06:53 1990
  9247. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9248.     id AA02685; Sun, 1 Jul 90 14:06:53 -0400
  9249. Posted-Date: 17 Jun 90 22:15:11 GMT
  9250. Received: by cs.utexas.edu (5.64/1.68)
  9251.     id AA22603; Sun, 1 Jul 90 13:06:50 -0500
  9252. Received: by longway.tic.com (4.22/tic.1.2)
  9253.     id AA16819; Sun, 1 Jul 90 12:54:59 cdt
  9254. From: Doug Gwyn <gwyn@smoke.brl.mil>
  9255. Newsgroups: comp.std.unix,comp.std.c
  9256. Subject: POSIX and the standard headers
  9257. Keywords: POSIX standard C header macro specification
  9258. Message-Id: <764@longway.TIC.COM>
  9259. Sender: std-unix@tic.com
  9260. Reply-To: std-unix@uunet.uu.net
  9261. Organization: Ballistic Research Lab (BRL), APG, MD.
  9262. Date: 17 Jun 90 22:15:11 GMT
  9263. Apparently-To: std-unix-archive@uunet.uu.net
  9264.  
  9265. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  9266.  
  9267. [ Hm.  Another one that got lost off the stack.  I'm rearranging
  9268. my mailboxes to avoid this sort of thing.  -mod ]
  9269.  
  9270. I've just been informed that the draft IEEE Std 1003.4 (possibly
  9271. other POSIX standards-in-progress as well) specifies additional
  9272. macros, including EVTCLASS_*, to be defined in <limits.h>.  This
  9273. deserves strong condemnation; there is NO EXCUSE for not using
  9274. separate headers for the definitions for new facilities.  In
  9275. particular, stealing <limits.h> for this purpose forces portable
  9276. applications to resort to the
  9277.     #define _POSIX_SOURCE    /* or similar "feature test" macro */
  9278.     #include <limits.h>
  9279. kludge to obtain access to the new definitions, since the C
  9280. standard quite properly prohibits the implementation from
  9281. defining random stuff in strictly conforming programs.  (Use of
  9282. _POSIX_SOURCE provides an escape from strict conformance.)  This
  9283. kludgery would not be required for definitions obtained from a
  9284. POSIX-specific header, e.g. <async.h> or even <posix4.h>.
  9285.  
  9286. The reason for both X3.159 and 1003.1 sharing use of a few of the
  9287. standard headers was simply that existing practice (and the base
  9288. document for the C library) had already required symbols in them
  9289. for both the general-C and UNIX-specific environments.  However,
  9290. that was a situation to be accommodated (and for which the special
  9291. _POSIX_SOURCE had to be invented, although P1003 didn't do this
  9292. the way that X3J11 recommended), not a practice to be actively
  9293. encouraged.  Apparently the people drafting the new standards
  9294. don't understand why adding stuff to the standard headers is a
  9295. bad idea.  To give them something to think about, here is a
  9296. practical problem:  Development and installation of the additional
  9297. facilities cannot be done, if the standard headers must be modified,
  9298. without violating the integrity of a certified standard-conforming
  9299. C implementation (and thereby losing certification).
  9300.  
  9301. Volume-Number: Volume 20, Number 79
  9302.  
  9303. From jsq@tic.com  Sun Jul  1 14:07:02 1990
  9304. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9305.     id AA02710; Sun, 1 Jul 90 14:07:02 -0400
  9306. Posted-Date: 25 Jun 90 16:19:07 GMT
  9307. Received: by cs.utexas.edu (5.64/1.68)
  9308.     id AA22621; Sun, 1 Jul 90 13:06:59 -0500
  9309. Received: by longway.tic.com (4.22/tic.1.2)
  9310.     id AA16875; Sun, 1 Jul 90 12:57:56 cdt
  9311. From: Dorothy Carney <uudot@earth.lerc.nasa.gov>
  9312. Newsgroups: comp.std.unix
  9313. Subject: WANTED: Directory Tree Conventions
  9314. Message-Id: <765@longway.TIC.COM>
  9315. Sender: std-unix@tic.com
  9316. Reply-To: earth.lerc.nasa.gov!uudot@cs.utexas.edu
  9317. Organization: NASA Lewis Research Center
  9318. Date: 25 Jun 90 16:19:07 GMT
  9319. Apparently-To: std-unix-archive@uunet.uu.net
  9320.  
  9321. From:  uudot@earth.lerc.nasa.gov (Dorothy Carney)
  9322.  
  9323. Our working group is getting started in the use and administration of UNIX 
  9324. workstations.  Our equipment includes a DECstation, a Sun Sparcstation, a
  9325. Data General AViion, and even a Masscomp supermini.  There are many other
  9326. computers at our site, including some with flavors of UNIX, for example,
  9327. a Cray with Unicos and Amdahl with UTS.  To simplify the administration of
  9328. our workstations and to facilitate networking, we are trying to standardize
  9329. the directory trees on our workstations.
  9330.  
  9331. What conventions have you applied in your UNIX environment?  In particular:
  9332. (1) Where do you put user accounts (userids).  (2) Where do you install
  9333. third-party software.  (3) Where do you put local utilities.  (4) Do you
  9334. create userids for software packages.     Comments & suggestions please!!
  9335.  
  9336. Volume-Number: Volume 20, Number 80
  9337.  
  9338. From jsq@tic.com  Sun Jul  1 14:07:10 1990
  9339. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9340.     id AA02731; Sun, 1 Jul 90 14:07:10 -0400
  9341. Posted-Date: 29 Jun 90 16:42:03 GMT
  9342. Received: by cs.utexas.edu (5.64/1.68)
  9343.     id AA22631; Sun, 1 Jul 90 13:07:06 -0500
  9344. Received: by longway.tic.com (4.22/tic.1.2)
  9345.     id AA16928; Sun, 1 Jul 90 13:00:01 cdt
  9346. From: Guy Harris <auspex!guy@cs.utexas.edu>
  9347. Newsgroups: comp.std.unix
  9348. Subject: Re: UIDs and GIDs
  9349. Keywords: versus Networking
  9350. Message-Id: <766@longway.TIC.COM>
  9351. References: <743@longway.TIC.COM>
  9352. Sender: std-unix@tic.com
  9353. Reply-To: std-unix@uunet.uu.net
  9354. Organization: Auspex Systems, Santa Clara
  9355. Date: 29 Jun 90 16:42:03 GMT
  9356. Apparently-To: std-unix-archive@uunet.uu.net
  9357.  
  9358. From:  guy@auspex.uucp (Guy Harris)
  9359.  
  9360. >How does one handle (or can one handle) certain networking conventions that
  9361. >use a "dummy" user ("nobody") and require a user id of -2 ?
  9362.  
  9363. One uses, say, 65534 instead.  As of when I was last at Sun, that was what
  9364. was going to be done for SunOS 4.1, which would have unsigned user and
  9365. group IDs for SVID compliance (and BSD compatibility, for that
  9366. matter...).
  9367.  
  9368. Volume-Number: Volume 20, Number 81
  9369.  
  9370. From jsq@tic.com  Sun Jul  1 23:16:36 1990
  9371. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9372.     id AA23099; Sun, 1 Jul 90 23:16:36 -0400
  9373. Posted-Date: 2 Jul 90 00:18:32 GMT
  9374. Received: by cs.utexas.edu (5.64/1.68)
  9375.     id AA15083; Sun, 1 Jul 90 22:16:33 -0500
  9376. Received: by longway.tic.com (4.22/tic.1.2)
  9377.     id AA18680; Sun, 1 Jul 90 22:30:49 cdt
  9378. From: peter da silva <peter@ficc.ferranti.com>
  9379. Newsgroups: comp.std.unix
  9380. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  9381. Message-Id: <767@longway.TIC.COM>
  9382. References: <385@usenix.ORG> <754@longway.TIC.COM>
  9383. Sender: std-unix@tic.com
  9384. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  9385. Organization: Xenix Support, FICC
  9386. Date: 2 Jul 90 00:18:32 GMT
  9387. Apparently-To: std-unix-archive@uunet.uu.net
  9388.  
  9389. From:  peter@ficc.ferranti.com (peter da silva)
  9390.  
  9391. In article <754@longway.TIC.COM> From: gwyn@smoke.brl.mil (Doug Gwyn)
  9392. > The ANSI magtape format is simply inappropriate.  UNIX archives were
  9393. > designed to be single files, making it simple to transport them by
  9394. > means other than magnetic tape.  In this modern networked world, for
  9395. > the most part magnetic tape is an anachronism.  Any archive format
  9396. > standard for UNIX should not depend on the archive supporting
  9397. > multiple files, tape marks, or any other non-UNIX concept.
  9398.  
  9399. I disagree. There are just too many organisations using ANSI format magtapes.
  9400. Tar and CPIO should both be retained, but the ability to read and write
  9401. standard ANSI magtapes... if the hardware is available... should be part
  9402. of a portable operating system standard. So for that matter should such things
  9403. as different receive and transmit baud rates (ever hear of V.23 modems?),
  9404. but that's another point.
  9405. -- 
  9406. Peter da Silva.   `-_-'
  9407. +1 713 274 5180.
  9408. <peter@ficc.ferranti.com>
  9409.  
  9410. Volume-Number: Volume 20, Number 82
  9411.  
  9412. From jsq@tic.com  Sun Jul  1 23:16:44 1990
  9413. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9414.     id AA23115; Sun, 1 Jul 90 23:16:44 -0400
  9415. Posted-Date: 2 Jul 90 00:14:19 GMT
  9416. Received: by cs.utexas.edu (5.64/1.68)
  9417.     id AA15089; Sun, 1 Jul 90 22:16:42 -0500
  9418. Received: by longway.tic.com (4.22/tic.1.2)
  9419.     id AA18740; Sun, 1 Jul 90 22:33:09 cdt
  9420. From: peter da silva <peter@ficc.ferranti.com>
  9421. Newsgroups: comp.std.unix
  9422. Subject: Re: Mandatory Access Controls in the commercial world
  9423. Message-Id: <768@longway.TIC.COM>
  9424. References: <753@longway.TIC.COM>
  9425. Sender: std-unix@tic.com
  9426. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  9427. Organization: Xenix Support, FICC
  9428. Date: 2 Jul 90 00:14:19 GMT
  9429. Apparently-To: std-unix-archive@uunet.uu.net
  9430.  
  9431. From:  peter@ficc.ferranti.com (peter da silva)
  9432.  
  9433. Seems to me that a strict hierarchy is insufficient. What do you do if you
  9434. have two sub-organisations for which you don't want to allow *either* to be
  9435. able to give files to one another (say, two different marketing groups
  9436. setting up separate sealed bids)?
  9437. -- 
  9438. Peter da Silva.   `-_-'
  9439. +1 713 274 5180.
  9440. <peter@ficc.ferranti.com>
  9441.  
  9442. Volume-Number: Volume 20, Number 83
  9443.  
  9444. From jsq@tic.com  Mon Jul  2 09:44:27 1990
  9445. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9446.     id AA25480; Mon, 2 Jul 90 09:44:27 -0400
  9447. Posted-Date: 2 Jul 90 07:01:49 GMT
  9448. Received: by cs.utexas.edu (5.64/1.68)
  9449.     id AA05110; Mon, 2 Jul 90 08:44:24 -0500
  9450. Received: by longway.tic.com (4.22/tic.1.2)
  9451.     id AA19939; Mon, 2 Jul 90 08:32:11 cdt
  9452. From: Phil Ronzone <pkr@sgi.com>
  9453. Newsgroups: comp.std.unix
  9454. Subject: Re: Standards Update, IEEE 1003.6: Security
  9455. Message-Id: <769@longway.TIC.COM>
  9456. References: <384@usenix.ORG> <757@longway.TIC.COM>
  9457. Sender: std-unix@tic.com
  9458. Reply-To: std-unix@uunet.uu.net
  9459. Organization: Silicon Graphics, Inc., Mountain View, CA
  9460. Date: 2 Jul 90 07:01:49 GMT
  9461. Apparently-To: std-unix-archive@uunet.uu.net
  9462.  
  9463. From: pkr@sgi.com (Phil Ronzone)
  9464.  
  9465. In article <757@longway.TIC.COM> peter@ficc.ferranti.com (Peter da Silva) writes:
  9466. >You mean, "will include DoD-style security mechanisms". The somewhat
  9467. >simple-minded approach UNIX has had in the past has been remarkably
  9468. >successful, considering.
  9469.  
  9470. I'm not sure what the "DoD-style" words mean, but UNIX has been very deficient
  9471. for much serious commercial work due to the "simple-minded" approach it has
  9472. had.
  9473.  
  9474.  
  9475.  
  9476. >> I like this.  Do you?
  9477. >
  9478. >Only if it's possible to turn everything off and go back to /etc/passwd
  9479. >and /etc/shadow, and a superuser. That way when something goes wrong you'll
  9480. >be able to boot from tape or floppy, edit a couple of files, and recover
  9481. >the system. 
  9482. >
  9483. >Because something *will* go wrong.
  9484.  
  9485. I don't see what this has to do with security.
  9486. --
  9487. <---------------------------------------------------------------------------->
  9488. Philip K. Ronzone                  S e c u r e   U N I X           pkr@sgi.com
  9489. Silicon Graphics, Inc. MS 9U-500                           work (415) 335-1511
  9490. 2011 N. Shoreline Blvd., Mountain View, CA 94039            fax (415) 965-2658
  9491.  
  9492. Volume-Number: Volume 20, Number 84
  9493.  
  9494. From jsq@tic.com  Mon Jul  2 13:01:47 1990
  9495. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9496.     id AA14730; Mon, 2 Jul 90 13:01:47 -0400
  9497. Posted-Date: 2 Jul 90 15:27:15 GMT
  9498. Received: by cs.utexas.edu (5.64/1.68)
  9499.     id AA21614; Mon, 2 Jul 90 12:01:42 -0500
  9500. Received: by longway.tic.com (4.22/tic.1.2)
  9501.     id AA20630; Mon, 2 Jul 90 11:53:36 cdt
  9502. From: Jason Zions <jason@cnd.hp.com>
  9503. Newsgroups: comp.std.unix
  9504. Subject: Re: Standards Update, Recent Standards Activities
  9505. Message-Id: <770@longway.TIC.COM>
  9506. References: <387@usenix.ORG>
  9507. Sender: std-unix@tic.com
  9508. Reply-To: std-unix@uunet.uu.net
  9509. Organization: Hewlett Packard, Information Networks Group
  9510. Date: 2 Jul 90 15:27:15 GMT
  9511. Apparently-To: std-unix-archive@uunet.uu.net
  9512.  
  9513. From:  Jason Zions <jason@cnd.hp.com>
  9514.  
  9515. Regarding the Snitch Editor's fine report, in the section discussing
  9516. 1003.12 comes the following sentence:
  9517.  
  9518. > Our snitch, Andy Nicholson, challenged readers to find a reason not to
  9519. > make DNI endpoints POSIX file descriptors, but has seen no takers.
  9520.  
  9521. How about because it constrains implementations to make DNI
  9522. kernel-resident?
  9523.  
  9524. How about because the semantics of operations permitted on POSIX file
  9525. descriptors are a poor match for many transport providers? Read()/write()
  9526. are stream operations; only TCP is a stream transport provider. OSI TP0/2/4
  9527. maps much more closely to stdio and fgets()/fputs() in that it is
  9528. record-oriented. What does it mean to seek() on a network endpoint?
  9529.  
  9530. A significant branch of the UNIX(tm)-system and POSIX research community
  9531. believes "All the world's a file"; the Research Unix V.8 and Plan 9 folks
  9532. are among the leaders here. I feel only slightly squeemish about accusing
  9533. them of having only a hammer in their toolbelt; of *course* everything
  9534. looks like a nail!
  9535.  
  9536. I think it would probably be acceptable to have a DNI function which
  9537. accepted a DNI endpoint as argument and attempted to return a real file
  9538. descriptor. This function would check to see that the underlying transport
  9539. provider could present reasonable semantics through a POSIX file
  9540. descriptor, and would also check that the implementation supported access
  9541. to that transport provider through a kernel interface.
  9542.  
  9543. Jason Zions
  9544.  
  9545. *  UNIX is a trademark of AT&T in the US and other countries.
  9546. ** Obstreperous iconoclast is a behavioral trademark of Jason Zions in the
  9547.    US and other countries.
  9548.  
  9549. Volume-Number: Volume 20, Number 85
  9550.  
  9551. From jsq@tic.com  Mon Jul  2 18:02:05 1990
  9552. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9553.     id AA05412; Mon, 2 Jul 90 18:02:05 -0400
  9554. Posted-Date: 2 Jul 90 20:24:00 GMT
  9555. Received: by cs.utexas.edu (5.64/1.68)
  9556.     id AA16596; Mon, 2 Jul 90 17:02:01 -0500
  9557. Received: by longway.tic.com (4.22/tic.1.2)
  9558.     id AA21729; Mon, 2 Jul 90 16:57:57 cdt
  9559. From: Guy Harris <auspex!guy@cs.utexas.edu>
  9560. Newsgroups: comp.std.unix
  9561. Subject: Re: Standards Update, Recent Standards Activities
  9562. Message-Id: <771@longway.TIC.COM>
  9563. References: <387@usenix.ORG> <762@longway.TIC.COM>
  9564. Sender: std-unix@tic.com
  9565. Reply-To: std-unix@uunet.uu.net
  9566. Organization: Auspex Systems, Santa Clara
  9567. Date: 2 Jul 90 20:24:00 GMT
  9568. Apparently-To: std-unix-archive@uunet.uu.net
  9569.  
  9570. From:  guy@auspex.uucp (Guy Harris)
  9571.  
  9572. >Both examples you supplied were simply ways to look up strings to output in
  9573. >a database keyed on locale and an internal program string; they differ only
  9574. >in minor ways.  Does either proposal address any of the *hard* issues?  For
  9575. >instance, different languages have different pluralization rules; how do
  9576. >you internationalize a program that automatically pluralizes when necessary
  9577. >(I hate programs that say things like "1 files deleted")?  Or what about
  9578. >differing word order; how would you internationalize
  9579. >
  9580. >    printf("the %s %s", adjective, noun);
  9581. >
  9582. >so that it would look right in a language where adjectives follow nouns?
  9583.  
  9584. The latter can addressed by a scheme like the X/Open NLS scheme, in
  9585. which "printf" arguments can be decorated by specifiers that say which
  9586. of the N arguments to "*printf" following the format string should be
  9587. used; the "the %s %s" would have to replace "%s %s" with "%$2s %$1s".
  9588.  
  9589. HOWEVER:
  9590.  
  9591. This does *NOT* do anything about the pluralization rules.  It *also*
  9592. does nothing about the fact that the correct translation of "the" could
  9593. depend on the noun in question; i.e., is it "la" or "le" in French?
  9594.  
  9595. I think that, for reasons such as these, the only solution to the
  9596. problem of trying to find a Magic Bullet so that you can trivially
  9597. internationalize the message-printing code of applications by throwing a
  9598. simple-minded wrapper around "printf" (whether the #define approach, or
  9599. replacing the format string with "getmsg(the format string)", or
  9600. whatever) is to have software that is sufficiently knowledgable about
  9601. *all* human languages supported that it knows the gender of all nouns
  9602. you'll use in your messages, and knows the right articles for those
  9603. genders (for all cases the language has), and knows how to pluralize
  9604. arbitrary words.
  9605.  
  9606. In fact, I'm not even sure *that's* sufficient; I only know about some
  9607. Indo-European languages, and other languages may throw in problems I
  9608. haven't even considered.
  9609.  
  9610. In other words, I don't think there's a solution to the problem of "oh
  9611. dear, how are we going to get all our applications modified to put out
  9612. grammatically-correct messages in different languages without having to
  9613. examine all the code that generates messages and possibly rewrite some
  9614. of that code" other than teaching the system a fair bit about lots of
  9615. human languages.  I don't think you can even come up with an approach
  9616. that's close enough to a solution to be interesting.  I'm afraid you're
  9617. just going to have to fall back on things such as:
  9618.  
  9619.     having "1 frob" and "%d frobs" be *two* separate messages in the
  9620.     message catalog;
  9621.  
  9622.     having "the chair" and "the table" either be two separate
  9623.     messages, rather than having "the %s" and foreign-language
  9624.     versions of same, or having the message be "%s %s" and have the
  9625.     database tie the noun and the article together (watch out for
  9626.     Russian, though, they don't *use* articles...);
  9627.  
  9628. etc..
  9629.  
  9630. Yeah, this may mean human intervention, rather than being able to
  9631. internationalize your messages by running just running a few programs
  9632. over the code; nobody ever said that life was fair.  Might as well bite
  9633. the bullet.... 
  9634.  
  9635. Volume-Number: Volume 20, Number 86
  9636.  
  9637. From jsq@tic.com  Tue Jul  3 12:04:06 1990
  9638. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9639.     id AA10298; Tue, 3 Jul 90 12:04:06 -0400
  9640. Posted-Date: 3 Jul 90 02:57:47 GMT
  9641. Received: by cs.utexas.edu (5.64/1.68)
  9642.     id AA01765; Tue, 3 Jul 90 11:04:03 -0500
  9643. Received: by longway.tic.com (4.22/tic.1.2)
  9644.     id AA23163; Tue, 3 Jul 90 10:53:35 cdt
  9645. From: Doug Gwyn <gwyn@smoke.brl.mil>
  9646. Newsgroups: comp.std.unix
  9647. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  9648. Message-Id: <772@longway.TIC.COM>
  9649. References: <385@usenix.ORG> <754@longway.TIC.COM> <767@longway.TIC.COM>
  9650. Sender: std-unix@tic.com
  9651. Reply-To: std-unix@uunet.uu.net
  9652. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  9653. Date: 3 Jul 90 02:57:47 GMT
  9654. Apparently-To: std-unix-archive@uunet.uu.net
  9655.  
  9656. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  9657.  
  9658. In article <767@longway.TIC.COM> peter@ficc.ferranti.com (Peter da Silva) writes:
  9659. -In article <754@longway.TIC.COM> From: gwyn@smoke.brl.mil (Doug Gwyn)
  9660. -> The ANSI magtape format is simply inappropriate.  UNIX archives were
  9661. -> designed to be single files, making it simple to transport them by
  9662. -> means other than magnetic tape.  In this modern networked world, for
  9663. -> the most part magnetic tape is an anachronism.  Any archive format
  9664. -> standard for UNIX should not depend on the archive supporting
  9665. -> multiple files, tape marks, or any other non-UNIX concept.
  9666. -I disagree. There are just too many organisations using ANSI format magtapes.
  9667. -Tar and CPIO should both be retained, but the ability to read and write
  9668. -standard ANSI magtapes... if the hardware is available... should be part
  9669. -of a portable operating system standard.
  9670.  
  9671. We're apparently not talking about the same thing.  I was talking about
  9672. the POSIX standard for archiving collections of files.  There is no
  9673. particular reason why that should require use of magnetic tape.  I'm not
  9674. proposing that ANSI (or ISO) magtape standards not be followed where
  9675. appropriate; you could for example put a tar or cpio archive within a
  9676. file on an ANSI-labeled magtape.  However, you can also put a tar or cpio
  9677. archive within a file on a disk, and you can ship it across a network as
  9678. a single entity, something that is not possible for ANSI magtapes in
  9679. general.
  9680.  
  9681. Volume-Number: Volume 20, Number 87
  9682.  
  9683. From jsq@tic.com  Tue Jul  3 12:04:29 1990
  9684. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9685.     id AA10373; Tue, 3 Jul 90 12:04:29 -0400
  9686. Posted-Date: 3 Jul 90 04:44:27 GMT
  9687. Received: by cs.utexas.edu (5.64/1.68)
  9688.     id AA01829; Tue, 3 Jul 90 11:04:25 -0500
  9689. Received: by longway.tic.com (4.22/tic.1.2)
  9690.     id AA23231; Tue, 3 Jul 90 10:56:54 cdt
  9691. From: Eric Schnoebelen <eric@egsner.cirr.com>
  9692. Newsgroups: comp.std.unix
  9693. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  9694. Summary: ANSI tape, tar, cpio
  9695. Message-Id: <773@longway.TIC.COM>
  9696. References: <385@usenix.ORG> <754@longway.TIC.COM> <767@longway.TIC.COM>
  9697. Sender: std-unix@tic.com
  9698. Reply-To: std-unix@uunet.uu.net
  9699. Organization: Central Iowa (Model) Railroad, Dallas, Tx.
  9700. Date: 3 Jul 90 04:44:27 GMT
  9701. Apparently-To: std-unix-archive@uunet.uu.net
  9702.  
  9703. From:  eric@egsner.cirr.com (Eric Schnoebelen)
  9704.  
  9705. In article <767@longway.TIC.COM> Peter da Silva writes:
  9706. - In article <754@longway.TIC.COM> From: gwyn@smoke.brl.mil (Doug Gwyn)
  9707. - > The ANSI magtape format is simply inappropriate.  UNIX archives were
  9708. - > designed to be single files, making it simple to transport them by
  9709. - > means other than magnetic tape.  
  9710. - I disagree. There are just too many organisations using ANSI format magtapes.
  9711. - Tar and CPIO should both be retained, but the ability to read and write
  9712. - standard ANSI magtapes... if the hardware is available... should be part
  9713. - of a portable operating system standard.
  9714.  
  9715.         ANSI tape can be supported via a set of programs over the
  9716. standard Unix system (ConvexOS 8.0 and above do so, along with many
  9717. other "mainframe" tape subsystem features) but ANSI labeled tapes are
  9718. inappropriate for file archival.  With a properly designed ANSI tape
  9719. subsystem, it is easy enough to have tar, and cpio (and even
  9720. dump/restore) use ANSI labeled tapes, and it can be totally transparent
  9721. to the user.
  9722.  
  9723.         Thus, we have the POSIX standard archive on the ANSI standard
  9724. magnetic tape format..
  9725.  
  9726. -- 
  9727. Eric Schnoebelen        eric@cirr.com        schnoebe@convex.com
  9728.     Churchill's Commentary on Man: Man will occasionally stumble over the
  9729.     truth, but most of the time he will pick himself up and continue on.
  9730.  
  9731. Volume-Number: Volume 20, Number 88
  9732.  
  9733. From jsq@tic.com  Tue Jul  3 16:57:30 1990
  9734. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9735.     id AA16094; Tue, 3 Jul 90 16:57:30 -0400
  9736. Posted-Date: 3 Jul 90 18:18:00 GMT
  9737. Received: by cs.utexas.edu (5.64/1.68)
  9738.     id AA25640; Tue, 3 Jul 90 15:53:50 -0500
  9739. Received: by longway.tic.com (4.22/tic.1.2)
  9740.     id AA23963; Tue, 3 Jul 90 15:32:22 cdt
  9741. From: david paul hoyt <YZE6041@vx.acs.umn.edu>
  9742. Newsgroups: comp.std.unix
  9743. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  9744. Message-Id: <774@longway.TIC.COM>
  9745. Sender: std-unix@tic.com
  9746. Reply-To: std-unix@uunet.uu.net
  9747. Date: 3 Jul 90 18:18:00 GMT
  9748. Apparently-To: std-unix-archive@uunet.uu.net
  9749.  
  9750. From:  david paul hoyt <YZE6041@vx.acs.umn.edu>
  9751.  
  9752. >                                   With a properly designed ANSI tape
  9753. > subsystem, it is easy enough to have tar, and cpio (and even
  9754. > dump/restore) use ANSI labeled tapes, and it can be totally transparent
  9755. > to the user.
  9756.  
  9757.   And better yet, we'll have a standard way of dealing with multi-volumne
  9758. tapes.  It's hard enough to backup your own multi-gigabyte disk system, let
  9759. alone send large databases to other (potentially non-unix) systems.
  9760.  
  9761. david | dhoyt@vx.acs.umn.edu | dhoyt@umnacvx
  9762.  
  9763. Volume-Number: Volume 20, Number 89
  9764.  
  9765. From jsq@tic.com  Wed Jul  4 00:20:46 1990
  9766. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9767.     id AA03827; Wed, 4 Jul 90 00:20:46 -0400
  9768. Posted-Date: 3 Jul 90 20:41:28 GMT
  9769. Received: by cs.utexas.edu (5.64/1.68)
  9770.     id AA21914; Tue, 3 Jul 90 23:20:42 -0500
  9771. Received: by longway.tic.com (4.22/tic.1.2)
  9772.     id AA24803; Tue, 3 Jul 90 23:03:26 cdt
  9773. From: Kee Hinckley <nazgul@alphalpha.com>
  9774. Newsgroups: comp.std.unix
  9775. Subject: Re: Standards Update, Recent Standards Activities [NLS stuff]
  9776. Message-Id: <775@longway.TIC.COM>
  9777. References: <387@usenix.ORG>
  9778. Sender: std-unix@tic.com
  9779. Reply-To: std-unix@uunet.uu.net
  9780. Organization: asi
  9781. Date: 3 Jul 90 20:41:28 GMT
  9782. Apparently-To: std-unix-archive@uunet.uu.net
  9783.  
  9784. From:  nazgul@alphalpha.com (Kee Hinckley)
  9785.  
  9786. In article <387@usenix.ORG> From: <jsh@usenix.org>
  9787. >To help you think about the problem, here's the way you'll have to
  9788. >write the "hello, world" koan using the X/OPEN interfaces:
  9789. ....
  9790. >          (void)setlocale(LC_ALL, "");
  9791. >          catd = catopen("hello", 0); /* error checking omitted for brevity */
  9792. >          printf(catgets(catd, 1, 1,"hello, world\n"));
  9793. ....
  9794. >and using the alternative, proposed UniForum interfaces:
  9795. ....
  9796. >          (void)setlocale(LC_ALL, "");
  9797. >          (void)textdomain("hello");
  9798. >          printf(gettext("hello, world\n"));
  9799. ....
  9800. >I suppose if I had my druthers, I'd like to see a standard interface
  9801. >that goes even farther than the UniForum proposal: one that adds a
  9802. ....
  9803. >          (void)setlocale(LC_ALL, ""); /* inescapable, required by ANSI C */
  9804. >          printf("hello, world\n");
  9805. ....
  9806. >but that would still be untested innovation.
  9807.  
  9808. First of all, I don't think that either of these add enough of value to the
  9809. X/Open standard to make it worthwhile for those of using it to switch.
  9810. The use of strings as an index into the catalog though is definitely a BAD IDA.
  9811.  
  9812. Why?  A number of reasons.  First of all it's ethnocentric.  You've just told
  9813. every Easterner/MiddleEasterner that the default language is English.  Secondly
  9814. it's inefficent to and a pain to implement.  Thirdly it can produce results
  9815. which are just plain wrong.  I have different places in my application where
  9816. the English string is currently the same.  Using these schemes it would always
  9817. look up the same item in the catalog.  However in a different language the
  9818. string might well be different, but there would be no way of changing it one place
  9819. and not the other.
  9820.  
  9821. BTW.  Where can I get a specification of the Uniforum proposal (and comment
  9822. on it)?
  9823.  
  9824. The complexity of the X/Open stuff is easily hidden on a per application basis.
  9825. Anytime I want to reference a string in my application all I have to say
  9826. is MC(foo), where foo is #defined appropriately.
  9827.  
  9828. Where I *do* see room for improvement is in the definition of the catalog
  9829. file itself.  There is currently no specification for generating include
  9830. files or anything else, and hand numbering the strings is a royal pain.
  9831.  
  9832. If you consider the X/Open form:
  9833.  
  9834. $set 1 OmUA
  9835. $ #To
  9836. 1 To:
  9837. $ #From
  9838. 2 From:
  9839. $ #Subject
  9840. 3 Subject:
  9841.  
  9842. (where '$ ' is a comment).  I've written a parser that
  9843. treats comments beginning with '#' as special and allows
  9844. '#' instead of the number.  Thus
  9845.  
  9846. $set 1 OmUA
  9847. $ #To
  9848. # To:
  9849. $ #From
  9850. # From:
  9851. $ #Subject
  9852. # Subject:
  9853.  
  9854. generates
  9855.  
  9856. #ifndef __msgsH
  9857. #define __msgsH
  9858.  
  9859. #define SETOmUA    1
  9860. #define OmUATo    1
  9861. #define OmUAFrom    2
  9862. #define OmUASubject    3
  9863.  
  9864. #endif
  9865.  
  9866. It would be nice to be able to rely on this kind of functionality.
  9867.  
  9868. -- 
  9869. Alphalpha Software, Inc.    |    motif-request@alphalpha.com
  9870. nazgul@alphalpha.com        |-----------------------------------
  9871. 617/646-7703 (voice/fax)    |    Proline BBS: 617/641-3722
  9872.  
  9873. I'm not sure which upsets me more; that people are so unwilling to accept
  9874. responsibility for their own actions, or that they are so eager to regulate
  9875. everyone else's.
  9876.  
  9877. Volume-Number: Volume 20, Number 90
  9878.  
  9879. From jsq@tic.com  Wed Jul  4 00:20:56 1990
  9880. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9881.     id AA03843; Wed, 4 Jul 90 00:20:56 -0400
  9882. Posted-Date: 3 Jul 90 22:37:23 GMT
  9883. Received: by cs.utexas.edu (5.64/1.68)
  9884.     id AA21920; Tue, 3 Jul 90 23:20:54 -0500
  9885. Received: by longway.tic.com (4.22/tic.1.2)
  9886.     id AA24870; Tue, 3 Jul 90 23:06:45 cdt
  9887. From: <henry@zoo.toronto.edu>
  9888. Newsgroups: comp.std.unix
  9889. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  9890. Message-Id: <776@longway.TIC.COM>
  9891. References: <767@longway.TIC.COM> <385@usenix.ORG> <754@longway.TIC.COM>
  9892. Sender: std-unix@tic.com
  9893. Reply-To: std-unix@uunet.uu.net
  9894. Date: 3 Jul 90 22:37:23 GMT
  9895. Apparently-To: std-unix-archive@uunet.uu.net
  9896.  
  9897. From:  henry@zoo.toronto.edu
  9898.  
  9899. >From:  peter@ficc.ferranti.com (peter da silva)
  9900. >I disagree. There are just too many organisations using ANSI format magtapes.
  9901. >Tar and CPIO should both be retained, but the ability to read and write
  9902. >standard ANSI magtapes... if the hardware is available... should be part...
  9903.  
  9904. Uh, Peter, go back and look at what Doug wrote.  He never said anything,
  9905. either positive or negative, about the ability to use ANSI magtapes.  The
  9906. point is that the ANSI magtape format assumes a storage medium which has
  9907. notions like block boundaries and tape marks, and it is grossly mismatched
  9908. to the requirement for a Unix archiving format.
  9909.  
  9910. >...So for that matter should such things
  9911. >as different receive and transmit baud rates (ever hear of V.23 modems?),
  9912. >but that's another point.
  9913.  
  9914. Peter, would it be too much to ask whether you have *read* the standards
  9915. you are criticizing?  1003.1 supports split baud rates.
  9916.  
  9917.                                          Henry Spencer at U of Toronto Zoology
  9918.                                           henry@zoo.toronto.edu   utzoo!henry
  9919.  
  9920. Volume-Number: Volume 20, Number 91
  9921.  
  9922. From jsq@tic.com  Wed Jul  4 00:21:06 1990
  9923. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9924.     id AA03957; Wed, 4 Jul 90 00:21:06 -0400
  9925. Posted-Date: 3 Jul 90 21:07:30 GMT
  9926. Received: by cs.utexas.edu (5.64/1.68)
  9927.     id AA21932; Tue, 3 Jul 90 23:21:03 -0500
  9928. Received: by longway.tic.com (4.22/tic.1.2)
  9929.     id AA24926; Tue, 3 Jul 90 23:08:43 cdt
  9930. From: Doug Gwyn <gwyn@smoke.brl.mil>
  9931. Newsgroups: comp.std.unix
  9932. Subject: Re: Standards Update, Recent Standards Activities
  9933. Message-Id: <777@longway.TIC.COM>
  9934. References: <387@usenix.ORG> <762@longway.TIC.COM> <771@longway.TIC.COM>
  9935. Sender: std-unix@tic.com
  9936. Reply-To: std-unix@uunet.uu.net
  9937. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  9938. Date: 3 Jul 90 21:07:30 GMT
  9939. Apparently-To: std-unix-archive@uunet.uu.net
  9940.  
  9941. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  9942.  
  9943. >From:  guy@auspex.uucp (Guy Harris)
  9944. >In other words, I don't think there's a solution to the problem of "oh
  9945. >dear, how are we going to get all our applications modified to put out
  9946. >grammatically-correct messages in different languages without having to
  9947. >examine all the code that generates messages and possibly rewrite some
  9948. >of that code" other than teaching the system a fair bit about lots of
  9949. >human languages.
  9950.  
  9951. Might as well leave out the clause "other than ...".
  9952.  
  9953. Perhaps we could persuade those who think there should be a simple rule
  9954. for writing just one message text when programming for a variety of
  9955. cultures to use Esperanto for their messages.  At least that way they
  9956. will be understood just as readily by all customers..  :-)
  9957.  
  9958. Volume-Number: Volume 20, Number 92
  9959.  
  9960. From jsq@tic.com  Wed Jul  4 00:21:54 1990
  9961. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  9962.     id AA04324; Wed, 4 Jul 90 00:21:54 -0400
  9963. Posted-Date: 3 Jul 90 22:43:54 GMT
  9964. Received: by cs.utexas.edu (5.64/1.68)
  9965.     id AA21949; Tue, 3 Jul 90 23:21:50 -0500
  9966. Received: by longway.tic.com (4.22/tic.1.2)
  9967.     id AA24994; Tue, 3 Jul 90 23:11:45 cdt
  9968. From: Henry Spencer <henry@zoo.toronto.edu>
  9969. Newsgroups: comp.std.unix
  9970. Subject: Re: Standards Update, Recent Standards Activities
  9971. Message-Id: <778@longway.TIC.COM>
  9972. References: <770@longway.TIC.COM>
  9973. Sender: std-unix@tic.com
  9974. Reply-To: std-unix@uunet.uu.net
  9975. Date: 3 Jul 90 22:43:54 GMT
  9976. Apparently-To: std-unix-archive@uunet.uu.net
  9977.  
  9978. From:  henry@zoo.toronto.edu (Henry Spencer)
  9979.  
  9980. >From:  Jason Zions <jason@cnd.hp.com>
  9981. >How about because it constrains implementations to make DNI
  9982. >kernel-resident?
  9983.  
  9984. Nonsense.  Nothing in 1003.n constrains implementations to make anything
  9985. kernel-resident.  Things like read() are functions, which may or may not
  9986. reflect the primitives of the underlying kernel.  They are merely required
  9987. to communicate -- somehow -- with something that performs the required
  9988. services.
  9989.  
  9990. Why have two different kinds of endpoints for I/O?  We already have one
  9991. which is general enough to encompass almost every kind of I/O under the sun.
  9992.  
  9993. >How about because the semantics of operations permitted on POSIX file
  9994. >descriptors are a poor match for many transport providers? Read()/write()
  9995. >are stream operations; only TCP is a stream transport provider. OSI TP0/2/4
  9996. >maps much more closely to stdio and fgets()/fputs() in that it is
  9997. >record-oriented. What does it mean to seek() on a network endpoint?
  9998.  
  9999. Read()/write() are stream operations that work perfectly well as record
  10000. operations too.  As witness Unix ttys, which are record-oriented devices
  10001. on input, and Unix magtapes, which are record-oriented both ways.  As for
  10002. what it means to seek on a network endpoint, exactly the same as it means
  10003. to seek on a tty:  probably nothing.  But why invent new mechanisms for 
  10004. I/O when the old ones will do perfectly well?
  10005.  
  10006. "Don't fix it if it ain't broken."
  10007.  
  10008.                                          Henry Spencer at U of Toronto Zoology
  10009.                                           henry@zoo.toronto.edu   utzoo!henry
  10010.  
  10011. Volume-Number: Volume 20, Number 93
  10012.  
  10013. From jsq@tic.com  Wed Jul  4 00:22:02 1990
  10014. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10015.     id AA04393; Wed, 4 Jul 90 00:22:02 -0400
  10016. Posted-Date: 3 Jul 90 18:19:11 GMT
  10017. Received: by cs.utexas.edu (5.64/1.68)
  10018.     id AA21955; Tue, 3 Jul 90 23:21:59 -0500
  10019. Received: by longway.tic.com (4.22/tic.1.2)
  10020.     id AA25056; Tue, 3 Jul 90 23:15:20 cdt
  10021. From: peter da silva <peter@ficc.ferranti.com>
  10022. Newsgroups: comp.std.unix
  10023. Subject: Re: Standards Update, Recent Standards Activities
  10024. Message-Id: <779@longway.TIC.COM>
  10025. References: <770@longway.TIC.COM>
  10026. Sender: std-unix@tic.com
  10027. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  10028. Organization: Xenix Support, FICC
  10029. Date: 3 Jul 90 18:19:11 GMT
  10030. Apparently-To: std-unix-archive@uunet.uu.net
  10031.  
  10032. From:  peter@ficc.ferranti.com (peter da silva)
  10033.  
  10034. In article <770@longway.TIC.COM> From: jason@cnd.hp.com (Jason Zions)
  10035. > Read()/write() are stream operations; only TCP is a stream transport
  10036. > provider. OSI TP0/2/4 maps much more closely to stdio and fgets()/fputs()
  10037. > in that it is record-oriented.
  10038.  
  10039. The same is true of a UNIX tty device with canonical processing. So?
  10040.  
  10041. > What does it mean to seek() on a network endpoint?
  10042.  
  10043. What does it mean to seek() on a pipe?
  10044. -- 
  10045. Peter da Silva.   `-_-'
  10046. +1 713 274 5180.
  10047. <peter@ficc.ferranti.com>
  10048.  
  10049. Volume-Number: Volume 20, Number 94
  10050.  
  10051. From jsq@tic.com  Wed Jul  4 00:22:09 1990
  10052. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10053.     id AA04460; Wed, 4 Jul 90 00:22:09 -0400
  10054. Posted-Date: 3 Jul 90 18:16:09 GMT
  10055. Received: by cs.utexas.edu (5.64/1.68)
  10056.     id AA21970; Tue, 3 Jul 90 23:22:06 -0500
  10057. Received: by longway.tic.com (4.22/tic.1.2)
  10058.     id AA25115; Tue, 3 Jul 90 23:18:20 cdt
  10059. From: peter da silva <peter@ficc.ferranti.com>
  10060. Newsgroups: comp.std.unix
  10061. Subject: Re: Standards Update, IEEE 1003.6: Security
  10062. Message-Id: <780@longway.TIC.COM>
  10063. References: <384@usenix.ORG> <757@longway.TIC.COM> <769@longway.TIC.COM>
  10064. Sender: std-unix@tic.com
  10065. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  10066. Organization: Xenix Support, FICC
  10067. Date: 3 Jul 90 18:16:09 GMT
  10068. Apparently-To: std-unix-archive@uunet.uu.net
  10069.  
  10070. From:  peter@ficc.ferranti.com (peter da silva)
  10071.  
  10072. In article <769@longway.TIC.COM> From: pkr@sgi.com (Phil Ronzone)
  10073. > I'm not sure what the "DoD-style" words mean, but UNIX has been very deficient
  10074. > for much serious commercial work due to the "simple-minded" approach it has
  10075. > had.
  10076.  
  10077. This may well be true. But for a large set of problems the existing UNIX
  10078. security approach is quite sufficient. If you don't have the actual hardware
  10079. secured it's overkill.
  10080.  
  10081. > >Only if it's possible to turn everything off and go back to /etc/passwd
  10082. > >and /etc/shadow, and a superuser. That way when something goes wrong you'll
  10083. > >be able to boot from tape or floppy, edit a couple of files, and recover
  10084. > >the system. 
  10085.  
  10086. > >Because something *will* go wrong.
  10087.  
  10088. > I don't see what this has to do with security.
  10089.  
  10090. I know of at least one case where a hard error in the user database for
  10091. a system required sending a letter from the president of the user's
  10092. company to the vendor to get them to explain how to regain access to the
  10093. system. Security and convenience are opposed goals, and sometimes a system
  10094. MUST be available.
  10095.  
  10096. If *all* POSIX conformant systems come with a stronger security system than
  10097. UNIX installed, it must be possible to set things up so that security system
  10098. can be defeated and a new system set up with physical access to the hardware.
  10099. It's acceptable for there to be some magic one-way juju that you can do to
  10100. put the system into a highly secure state, but it should not come that way.
  10101. I will neither purchase nor recommend any system I can't get into and rebuild
  10102. the access system with a boot floppy and the console.
  10103. -- 
  10104. Peter da Silva.   `-_-'
  10105. +1 713 274 5180.
  10106. <peter@ficc.ferranti.com>
  10107.  
  10108. Volume-Number: Volume 20, Number 95
  10109.  
  10110. From jsq@tic.com  Wed Jul  4 12:27:27 1990
  10111. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10112.     id AA10176; Wed, 4 Jul 90 12:27:27 -0400
  10113. Posted-Date: 4 Jul 90 08:55:34 GMT
  10114. Received: by cs.utexas.edu (5.64/1.68)
  10115.     id AA13158; Wed, 4 Jul 90 11:27:23 -0500
  10116. Received: by longway.tic.com (4.22/tic.1.2)
  10117.     id AA00290; Mon, 4 Jun 90 11:19:24 cdt
  10118. From: Dominic Dunlop <domo@the-standard-answer.co.uk>
  10119. Newsgroups: comp.std.unix
  10120. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  10121. Message-Id: <781@longway.TIC.COM>
  10122. References: <754@longway.TIC.COM> <767@longway.TIC.COM> <770@longway.TIC.COM>
  10123. Sender: std-unix@tic.com
  10124. Reply-To: tsa.co.uk!domo@usenix.ORG
  10125. Organization: The Standard Answer Ltd.
  10126. Date: 4 Jul 90 08:55:34 GMT
  10127. Apparently-To: std-unix-archive@uunet.uu.net
  10128.  
  10129. From:  Dominic Dunlop <domo@tsa.co.uk>
  10130.  
  10131. In article <754@longway.TIC.COM> gwyn@smoke.brl.mil (Doug Gwyn) fulminates
  10132. > The ANSI magtape format is simply inappropriate.  UNIX archives were
  10133. > designed to be single files, making it simple to transport them by
  10134. > means other than magnetic tape.  In this modern networked world, for
  10135. > the most part magnetic tape is an anachronism.  Any archive format
  10136. > standard for UNIX should not depend on the archive supporting
  10137. > multiple files, tape marks, or any other non-UNIX concept.
  10138.  
  10139. Er.  As Jason Zions points out in <770@longway.TIC.COM>,
  10140. > A significant branch of the UNIX(tm)-system and POSIX research community
  10141. > believes "All the world's a file"; the Research Unix V.8 and Plan 9 folks
  10142. > are among the leaders here. I feel only slightly squeamish about accusing
  10143. > them of having only a hammer in their toolbelt; of *course* everything
  10144. > looks like a nail!
  10145.  
  10146. The network as a featureless data stream is another example of the same
  10147. ``traditional'' thinking in the UNIX community.  Actually, the
  10148. datagram-based schemes favoured in the US (oversimplifying grossly, we
  10149. Europeans have a preference for connection-based systems which do deliver
  10150. streams) can provide nice record boundaries, which could in turn be used to
  10151. delimit labels for the proposed tape archive format (after adding some
  10152. reliability and sequencing).  Just because the format is based on IS 1003
  10153. for labelled magnetic tapes does not mean to say that it cannot be used on
  10154. other media, networks among tham.  After all, tar's a format for blocked
  10155. magnetic tapes, but that hasn't stopped us moving tar archives over
  10156. networks.
  10157. -- 
  10158. Dominic Dunlop
  10159.  
  10160. Volume-Number: Volume 20, Number 96
  10161.  
  10162. From jsq@tic.com  Wed Jul  4 13:57:59 1990
  10163. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10164.     id AA18668; Wed, 4 Jul 90 13:57:59 -0400
  10165. Posted-Date: 3 Jul 90 18:12:00 GMT
  10166. Received: by cs.utexas.edu (5.64/1.68)
  10167.     id AA16493; Wed, 4 Jul 90 12:57:54 -0500
  10168. Received: by longway.tic.com (4.22/tic.1.2)
  10169.     id AA00816; Wed, 4 Jul 90 12:43:42 cdt
  10170. From: Guy Harris <auspex!guy@cs.utexas.edu>
  10171. Newsgroups: comp.std.unix
  10172. Subject: Re: Standards Update, Recent Standards Activities
  10173. Message-Id: <782@longway.TIC.COM>
  10174. References: <770@longway.TIC.COM>
  10175. Sender: std-unix@tic.com
  10176. Reply-To: std-unix@uunet.uu.net
  10177. Organization: Auspex Systems, Santa Clara
  10178. Date: 3 Jul 90 18:12:00 GMT
  10179. Apparently-To: std-unix-archive@uunet.uu.net
  10180.  
  10181. From:  guy@auspex.uucp (Guy Harris)
  10182.  
  10183. >How about because the semantics of operations permitted on POSIX file
  10184. >descriptors are a poor match for many transport providers? Read()/write()
  10185. >are stream operations; only TCP is a stream transport provider. OSI TP0/2/4
  10186. >maps much more closely to stdio and fgets()/fputs() in that it is
  10187. >record-oriented.
  10188.  
  10189. Standard I/O, and "fgets()"/"fputs()" in particular, are
  10190. record-oriented?  News to me; I thought standard I/O offered byte
  10191. streams, and "fgets()" read stuff from that stream until it hit a
  10192. newline or EOF, and "fputs" put bytes from a string out onto that
  10193. stream.
  10194.  
  10195. For that matter, raw magtapes are also record oriented, and "read()" and
  10196. "write()" work fine on them.  I don't see the problem with TPn; a single
  10197. "write()" could either be turned into one packet, or broken up
  10198. arbitrarily into N packets if there's a maximum packet size.  If you
  10199. *want* to have a correspondence between "send it" calls and records, I
  10200. see no problem with providing additional calls to do that, but I also
  10201. don't see any problem with hiding record boundaries, if necessary, from
  10202. applications that *want* to just send byte streams over TPn.
  10203.  
  10204. >What does it mean to seek() on a network endpoint?
  10205.  
  10206. What does it mean to "seek()" on a tty?
  10207.  
  10208. Volume-Number: Volume 20, Number 96
  10209.  
  10210. From jsq@tic.com  Thu Jul  5 17:50:49 1990
  10211. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10212.     id AA29638; Thu, 5 Jul 90 17:50:49 -0400
  10213. Posted-Date: 5 Jul 90 03:40:11 GMT
  10214. Received: by cs.utexas.edu (5.64/1.68)
  10215.     id AA07699; Thu, 5 Jul 90 16:50:46 -0500
  10216. Received: by longway.tic.com (4.22/tic.1.2)
  10217.     id AA04772; Thu, 5 Jul 90 16:01:15 cdt
  10218. From: Doug Gwyn <gwyn@smoke.brl.mil>
  10219. Newsgroups: comp.std.unix
  10220. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  10221. Message-Id: <783@longway.TIC.COM>
  10222. References: <767@longway.TIC.COM> <770@longway.TIC.COM> <781@longway.TIC.COM>
  10223. Sender: std-unix@tic.com
  10224. Reply-To: std-unix@uunet.uu.net
  10225. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  10226. Date: 5 Jul 90 03:40:11 GMT
  10227. Apparently-To: std-unix-archive@uunet.uu.net
  10228.  
  10229. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  10230.  
  10231. In article <781@longway.TIC.COM> uunet!tsa.co.uk!domo@usenix.ORG writes:
  10232. >After all, tar's a format for blocked magnetic tapes, ...
  10233.  
  10234. No, it is not.  A "tar" archive is merely a stream of bytes, all of
  10235. whose structure is contained internally.  The designers of "tar" and
  10236. (to a lesser extent) "cpio" archive formats did, however, take into
  10237. account the blocked nature of such media, so that it would be
  10238. convenient to use such media to hold the archive.  This was entirely
  10239. appropriate and does not require that such media be used.
  10240.  
  10241. Volume-Number: Volume 20, Number 97
  10242.  
  10243. From jsq@tic.com  Thu Jul  5 17:50:56 1990
  10244. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10245.     id AA29670; Thu, 5 Jul 90 17:50:56 -0400
  10246. Posted-Date: 5 Jul 90 13:26:58 GMT
  10247. Received: by cs.utexas.edu (5.64/1.68)
  10248.     id AA07707; Thu, 5 Jul 90 16:50:53 -0500
  10249. Received: by longway.tic.com (4.22/tic.1.2)
  10250.     id AA04827; Thu, 5 Jul 90 16:03:13 cdt
  10251. From: Karl Heuer <karl@IMA.IMA.ISC.COM>
  10252. Newsgroups: comp.std.unix
  10253. Subject: Re: Standards Update, Recent Standards Activities
  10254. Message-Id: <784@longway.TIC.COM>
  10255. Sender: std-unix@tic.com
  10256. Reply-To: karl@IMA.IMA.ISC.COM (Karl Heuer)
  10257. Organization: Interactive Systems, Cambridge, MA 02138-5302
  10258. Date: 5 Jul 90 13:26:58 GMT
  10259. Apparently-To: std-unix-archive@uunet.uu.net
  10260.  
  10261. From:  karl@IMA.IMA.ISC.COM (Karl Heuer)
  10262.  
  10263. In article <778@longway.TIC.COM> henry@zoo.toronto.edu (Henry Spencer) writes:
  10264. >As for what it means to seek on a network endpoint, exactly the same as it
  10265. >means to seek on a tty: probably nothing.
  10266.  
  10267. Better yet, it should return an error (like an attempt to seek on a pipe).  I
  10268. don't think there's any excuse for tty seek having been defined as a no-op in
  10269. the first place; it's too bad POSIX didn't require this to be fixed.  (Is
  10270. there any reliable way to tell whether a given fd is seekable?)
  10271.  
  10272. Volume-Number: Volume 20, Number 98
  10273.  
  10274. From jsq@tic.com  Thu Jul  5 17:51:04 1990
  10275. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10276.     id AA29697; Thu, 5 Jul 90 17:51:04 -0400
  10277. Posted-Date: 4 Jul 90 11:57:02 GMT
  10278. Received: by cs.utexas.edu (5.64/1.68)
  10279.     id AA07720; Thu, 5 Jul 90 16:51:02 -0500
  10280. Received: by longway.tic.com (4.22/tic.1.2)
  10281.     id AA04885; Thu, 5 Jul 90 16:05:15 cdt
  10282. From: peter da silva <peter@ficc.ferranti.com>
  10283. Newsgroups: comp.std.unix
  10284. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  10285. Message-Id: <785@longway.TIC.COM>
  10286. References: <767@longway.TIC.COM> <385@usenix.ORG> <754@longway.TIC.COM> <776@longway.TIC.COM>
  10287. Sender: std-unix@tic.com
  10288. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  10289. Organization: Xenix Support, FICC
  10290. Date: 4 Jul 90 11:57:02 GMT
  10291. Apparently-To: std-unix-archive@uunet.uu.net
  10292.  
  10293. From:  peter@ficc.ferranti.com (peter da silva)
  10294.  
  10295. In article <776@longway.TIC.COM> henry@zoo.toronto.edu writes:
  10296. > Uh, Peter, go back and look at what Doug wrote....
  10297.  
  10298. > Peter, would it be too much to ask whether you have *read* the standards
  10299. > you are criticizing? ...
  10300.  
  10301. Um, yes. I do seem to have written that with my brain disengaged. Apologies
  10302. all round.
  10303. -- 
  10304. Peter da Silva.   `-_-'
  10305. +1 713 274 5180.
  10306. <peter@ficc.ferranti.com>
  10307.  
  10308. Volume-Number: Volume 20, Number 99
  10309.  
  10310. From jsq@tic.com  Thu Jul  5 20:29:55 1990
  10311. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10312.     id AA12636; Thu, 5 Jul 90 20:29:55 -0400
  10313. Posted-Date: 5 Jul 90 19:25:49 GMT
  10314. Received: by cs.utexas.edu (5.64/1.68)
  10315.     id AA19602; Thu, 5 Jul 90 19:29:50 -0500
  10316. Received: by longway.tic.com (4.22/tic.1.2)
  10317.     id AA05317; Thu, 5 Jul 90 18:48:27 cdt
  10318. From: Phil Ronzone <pkr@sgi.com>
  10319. Newsgroups: comp.std.unix
  10320. Subject: Re: Standards Update, IEEE 1003.6: Security
  10321. Message-Id: <786@longway.TIC.COM>
  10322. References: <757@longway.TIC.COM> <769@longway.TIC.COM> <780@longway.TIC.COM>
  10323. Sender: std-unix@tic.com
  10324. Reply-To: std-unix@uunet.uu.net
  10325. Organization: Silicon Graphics, Inc., Mountain View, CA
  10326. Date: 5 Jul 90 19:25:49 GMT
  10327. Apparently-To: std-unix-archive@uunet.uu.net
  10328.  
  10329. From:  pkr@sgi.com (Phil Ronzone)
  10330.  
  10331. In article <780@longway.TIC.COM> peter@ficc.ferranti.com (Peter da Silva) writes:
  10332. >This may well be true. But for a large set of problems the existing UNIX
  10333. >security approach is quite sufficient. If you don't have the actual hardware
  10334. >secured it's overkill.
  10335.  
  10336. I disagree - secure software, from the boot code on, is very effective.
  10337.  
  10338. >Security and convenience are opposed goals, and sometimes a system
  10339. >MUST be available.
  10340.  
  10341. I disagree again -- I think the recent Internet worm is an example of why.
  10342.  
  10343. --
  10344. <---------------------------------------------------------------------------->
  10345. Philip K. Ronzone                  S e c u r e   U N I X           pkr@sgi.com
  10346. Silicon Graphics, Inc. MS 9U-500                           work (415) 335-1511
  10347. 2011 N. Shoreline Blvd., Mountain View, CA 94039            fax (415) 965-2658
  10348.  
  10349.  
  10350.  
  10351.  
  10352.  
  10353. Volume-Number: Volume 20, Number 100
  10354.  
  10355. From jsq@tic.com  Thu Jul  5 20:32:28 1990
  10356. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10357.     id AA13819; Thu, 5 Jul 90 20:32:28 -0400
  10358. Posted-Date: 5 Jul 90 21:24:17 GMT
  10359. Received: by cs.utexas.edu (5.64/1.68)
  10360.     id AA19756; Thu, 5 Jul 90 19:32:24 -0500
  10361. Received: by longway.tic.com (4.22/tic.1.2)
  10362.     id AA05492; Thu, 5 Jul 90 19:18:46 cdt
  10363. From: Jeffrey S. Haemer <jsh@usenix.org>
  10364. Newsgroups: comp.std.unix
  10365. Subject: correction (compression algorithm patents)
  10366. Message-Id: <787@longway.TIC.COM>
  10367. References: <387@usenix.ORG>
  10368. Sender: std-unix@tic.com
  10369. Reply-To: std-unix@uunet.uu.net
  10370. Date: 5 Jul 90 21:24:17 GMT
  10371. Apparently-To: std-unix-archive@uunet.uu.net
  10372.  
  10373. From:  jsh@usenix.org (Jeffrey S. Haemer)
  10374.  
  10375. Five people have now brought to my attention that my 
  10376. recent editorial says the compress/uncompress algorithm is 
  10377. copyrighted: Dave Grindelman, Guy Harris, Keith Bostic, Randall 
  10378. Howard, and Hugh Redelmeier.  That's wrong.  It isn't 
  10379. copyrighted, it's patented.  My apologies to anyone I mislead.  
  10380.  
  10381. Randall's note contains a lot of interesting details that it's worth posting
  10382. and he's given me permission to post it.
  10383. I've appended it.
  10384.  
  10385. Jeff
  10386.  
  10387. =====
  10388. [From Randall Howard]
  10389.  
  10390.     Actually the problem is not that the compress algorithm is copyrighted
  10391. but that it is PATENTED by Welch (the "W" in the LZW name of the algorithm).
  10392. The patent is currently held by Unisys Corporation and they make money
  10393. from licence fees on that patent because of the use of LZW encoding
  10394. in the new high-speed modems.  Note that the Lempel-Ziv algorithm
  10395. is apparently not patented, but just the Welch variant as is found in the
  10396. UNIX compress utility.  Therefore, at the cost of inventing a new file
  10397. compression standard, it would be possible to escape licence fees by
  10398. using a different variant of LZ compression.
  10399.  
  10400.     [Editor: Keith Bostic says both are patented:
  10401.     original Ziv-Lempel is patent number 4,464,650,
  10402.     and the more powerful LZW method is #4,558,302.
  10403.     He goes on to say, however, that LZW lacks adaptive table reset
  10404.     and other features in compress, and so may not apply.]
  10405.  
  10406.     The implications of this are that no one may produce the same
  10407. output as compress produces, regardless of the program that produced
  10408. that output, without being subject to the patent.  I.e., it is independent
  10409. of the actually coding used, unlike copyright.  Therefore, all of the PD
  10410. versions of compress are currently in violation, as is BSD.
  10411.  
  10412.     Representatives of Unisys at the POSIX.2 meetings claimed that
  10413. the Unisys Legal Department is pursuing the licensing of compress.  In fact,
  10414. unlike copyright or trade secret protection, patent protection does not
  10415. diminish because the holder of the patent is not diligent in seeking damages
  10416. or preventing unauthorized use.  Witness the large royalty payout by
  10417. Japanese semiconductor companies to Texas Instruments because they held
  10418. the patent on the concept of something as fundamental as integrated circuits.
  10419. This licence payout spans a period of over 20 years.  In addition,
  10420. Unisys representatives claim that Phil Karn's PKZIP, which uses the
  10421. LZW compression algorithm, is a licenced user of the Unisys patent and
  10422. that a fee (rumoured to be somewhere in the $10,000 to $20,000 US range)
  10423. has been paid up front in lieu of individual royalties.
  10424.  
  10425.     The ramifications for POSIX.2a are unclear.  Currently, there are members
  10426. of the working group that say that they would object if a patented
  10427. algorithm were required by the standard if ANY FEE WHATSOEVER (even if $1)
  10428. were required to use it.  (There are, however, precedents for standards
  10429. working in areas of patents in such areas as networking, modems, and
  10430. hardware bus structures.  It appears that we software people have not
  10431. "grown up" as much when it comes to issues of licensing.  Who has ever
  10432. hear of "public domain hardware"?)  Some people suggested that Unisys
  10433. should allow relatively free use of the patent but should profit from
  10434. publicity rights from a citation in every POSIX.2a product manual that
  10435. contains compress.  Therefore, there are currently negotiations underway
  10436. to see what kind of "special deal" Unisys would be willing to cut for the
  10437. use strictly in implementations of POSIX.2a.  Depending on the outcome
  10438. of these negotiations, compress would either be dropped, re-engineered,
  10439. or retained.
  10440.  
  10441. Volume-Number: Volume 20, Number 101
  10442.  
  10443. From jsq@tic.com  Thu Jul  5 23:55:56 1990
  10444. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10445.     id AA02466; Thu, 5 Jul 90 23:55:56 -0400
  10446. Posted-Date: 5 Jul 90 23:51:34 GMT
  10447. Received: by cs.utexas.edu (5.64/1.68)
  10448.     id AA29210; Thu, 5 Jul 90 22:55:53 -0500
  10449. Received: by longway.tic.com (4.22/tic.1.2)
  10450.     id AA06027; Thu, 5 Jul 90 22:57:39 cdt
  10451. From: James Buster <bitbug@vicom.com>
  10452. Newsgroups: comp.std.unix
  10453. Subject: Re: Mandatory Access Controls in the commercial world
  10454. Message-Id: <788@longway.TIC.COM>
  10455. References: <753@longway.TIC.COM> <768@longway.TIC.COM>
  10456. Sender: std-unix@tic.com
  10457. Reply-To: std-unix@uunet.uu.net
  10458. Organization: Vicom Systems, Inc.
  10459. Date: 5 Jul 90 23:51:34 GMT
  10460. Apparently-To: std-unix-archive@uunet.uu.net
  10461.  
  10462. From:  bitbug@vicom.com (James Buster)
  10463.  
  10464. In article <768@longway.TIC.COM> peter@ficc.ferranti.com (Peter da Silva) writes:
  10465. >Seems to me that a strict hierarchy is insufficient. What do you do if you
  10466. >have two sub-organisations for which you don't want to allow *either* to be
  10467. >able to give files to one another (say, two different marketing groups
  10468. >setting up separate sealed bids)?
  10469.  
  10470.     First, a short overview of MAC:
  10471.  
  10472. A MAC (Mandatory Access Control) label has *two* components, a hierarchical
  10473. _level_ and a non-hierarchical _set of categories_.
  10474.  
  10475. Label A is said to _dominate_ label B if the hierarchical _level_ of label
  10476. A >= the level of label B *and* the _set of categories_ of label A is a
  10477. (possibly improper) superset of B's _categories_. The '>=' relationship
  10478. denotes an ordering that is not necessarily based on the integers or
  10479. natural numbers, but is intended to imply superiority or supremacy.
  10480.  
  10481. For a _subject_ (e.g. a UNIX process) with label A to *read* from an object
  10482. with label B, A must _dominate_ B. For a subject with label A to *write* to
  10483. an object with label B, B must _dominate_ A. This implies that to both *read*
  10484. and *write* to an object, A must equal B. An object is created with the label
  10485. of the subject that creates it. Some security policies may have more
  10486. restrictive rules.
  10487.  
  10488. The upshot of all this is that, for your example, each marketing group
  10489. will have a set of categories that is disjoint (e.g. A is in the category
  10490. International and B is in Domestic). You can see from the MAC read rule above
  10491. that this ensures there will be no information flow from Marketing Group A
  10492. to Marketing Group B.
  10493. -- 
  10494. ---------------------------------------------------------------------
  10495.         James Buster        (Domain) bitbug@vicom.com
  10496.   Mad Hacker Extraordinaire    (UUCP)   ...!ames!vsi1!bitbug
  10497. ---------------------------------------------------------------------
  10498.  
  10499. Volume-Number: Volume 20, Number 102
  10500.  
  10501. From jsq@tic.com  Fri Jul  6 11:32:28 1990
  10502. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10503.     id AA11974; Fri, 6 Jul 90 11:32:28 -0400
  10504. Posted-Date: 5 Jul 90 21:30:45 GMT
  10505. Received: by cs.utexas.edu (5.64/1.68)
  10506.     id AA24240; Fri, 6 Jul 90 10:32:25 -0500
  10507. Received: by longway.tic.com (4.22/tic.1.2)
  10508.     id AA07312; Fri, 6 Jul 90 10:17:03 cdt
  10509. From: Mike Urban <urban@rand.org>
  10510. Newsgroups: comp.std.unix
  10511. Subject: Printing Standards?
  10512. Message-Id: <789@longway.TIC.COM>
  10513. Sender: std-unix@tic.com
  10514. Reply-To: urban@rand.org (Mike Urban)
  10515. Organization: RAND Corp., Santa Monica, Ca.
  10516. Date: 5 Jul 90 21:30:45 GMT
  10517. Apparently-To: std-unix-archive@uunet.uu.net
  10518.  
  10519. From: urban@rand.org (Mike Urban)
  10520.  
  10521. What incipient or existing standards, if any, specify
  10522. the Shell-level printer interface (lpr and its friends)?
  10523. -- 
  10524.  
  10525.     Mike Urban
  10526.     urban@rand.ORG
  10527.  
  10528. Volume-Number: Volume 20, Number 103
  10529.  
  10530. From jsq@tic.com  Fri Jul  6 11:34:06 1990
  10531. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10532.     id AA12483; Fri, 6 Jul 90 11:34:06 -0400
  10533. Posted-Date: 6 Jul 90 06:58:00 GMT
  10534. Received: by cs.utexas.edu (5.64/1.68)
  10535.     id AA24354; Fri, 6 Jul 90 10:34:04 -0500
  10536. Received: by longway.tic.com (4.22/tic.1.2)
  10537.     id AA07372; Fri, 6 Jul 90 10:21:05 cdt
  10538. From: Steven M. Schultz <sms@WLV.IMSD.CONTEL.COM>
  10539. Newsgroups: comp.std.unix
  10540. Subject: Re: Standards Update, IEEE 1003.6: Security
  10541. Message-Id: <790@longway.TIC.COM>
  10542. References: <757@longway.TIC.COM> <769@longway.TIC.COM> <780@longway.TIC.COM> <786@longway.TIC.COM>
  10543. Sender: std-unix@tic.com
  10544. Reply-To: sms@WLV.IMSD.CONTEL.COM (Steven M. Schultz)
  10545. Organization: Contel Federal Systems
  10546. Date: 6 Jul 90 06:58:00 GMT
  10547. Apparently-To: std-unix-archive@uunet.uu.net
  10548.  
  10549. From:  sms@WLV.IMSD.CONTEL.COM (Steven M. Schultz)
  10550.  
  10551. In article <786@longway.TIC.COM> From:  pkr@sgi.com (Phil Ronzone)
  10552. >In article <780@longway.TIC.COM> peter@ficc.ferranti.com (Peter da Silva) writes:
  10553. >>This may well be true. But for a large set of problems the existing UNIX
  10554. >>security approach is quite sufficient. If you don't have the actual hardware
  10555. >>secured it's overkill.
  10556. >
  10557. >I disagree - secure software, from the boot code on, is very effective.
  10558.  
  10559.     i have to side with Peter on this.  the keywords were "large set
  10560.     of problems" and "quite sufficient" - that doesn't (at least to
  10561.     me) obviate the need for more strict security when the need
  10562.     arises, but for many situations just administering the systems
  10563.     correctly is enough.
  10564.  
  10565.     short of soldiers with M16s at a computer facility door i do not
  10566.     believe that software is any substitute for physical security.
  10567.     it's just one more password that has to be spread around (in
  10568.     case the SSO or whoever) goes on vacation, etc...
  10569.  
  10570. >>Security and convenience are opposed goals, and sometimes a system
  10571. >>MUST be available.
  10572.  
  10573.     agreed.
  10574.  
  10575. >I disagree again -- I think the recent Internet worm is an example of why.
  10576.  
  10577.     now it's my turn to disagree.  sheesh, why does the worm have to
  10578.     be brought up everytime security is discussed?  it was a BUG that
  10579.     was exploited, and i for one do not think that adding security
  10580.     will do away with BUGs in software.  on the contrary, as the
  10581.     complexity of the system is increased by the added software the
  10582.     number of bugs could actually increase, no? 
  10583.     
  10584.     and, if people can't administer systems "correctly" now - what's 
  10585.     going to happen when the amount of administration required increases 
  10586.     due to the files/databasei/etc that "security" will add to the system??
  10587.  
  10588.     Steven M. Schultz
  10589.     sms@wlv.imsd.contel.com
  10590.  
  10591. Volume-Number: Volume 20, Number 104
  10592.  
  10593. From jsq@tic.com  Fri Jul  6 11:34:17 1990
  10594. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10595.     id AA12510; Fri, 6 Jul 90 11:34:17 -0400
  10596. Posted-Date: 6 Jul 90 13:53:22 GMT
  10597. Received: by cs.utexas.edu (5.64/1.68)
  10598.     id AA24369; Fri, 6 Jul 90 10:34:14 -0500
  10599. Received: by longway.tic.com (4.22/tic.1.2)
  10600.     id AA07436; Fri, 6 Jul 90 10:24:33 cdt
  10601. From: Cazier <cazier@mbunix.mitre.org>
  10602. Newsgroups: comp.std.unix
  10603. Subject: Re: POSIX test suite
  10604. Message-Id: <791@longway.TIC.COM>
  10605. References: <760@longway.TIC.COM>
  10606. Sender: std-unix@tic.com
  10607. Reply-To: std-unix@uunet.uu.net
  10608. Organization: The MITRE Corp., Bedford, MA
  10609. Date: 6 Jul 90 13:53:22 GMT
  10610. Apparently-To: std-unix-archive@uunet.uu.net
  10611.  
  10612. From: cazier@mbunix.mitre.org (Cazier)
  10613.  
  10614.     It doesn't look like a free POSIX test suite is just yet around the
  10615. corner. The (federal) NIST has a POSIX Conformance Test Suite available
  10616. but it's not free, and it involves several 1000's of lines of code.
  10617.  
  10618. You might call Roger Martin at the NIST at 301-975-3295 to get more details
  10619. on the PCTS.
  10620.  
  10621. Volume-Number: Volume 20, Number 105
  10622.  
  10623. From jsq@tic.com  Fri Jul  6 11:34:27 1990
  10624. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10625.     id AA12548; Fri, 6 Jul 90 11:34:27 -0400
  10626. Posted-Date: 6 Jul 90 14:13:20 GMT
  10627. Received: by cs.utexas.edu (5.64/1.68)
  10628.     id AA24409; Fri, 6 Jul 90 10:34:25 -0500
  10629. Received: by longway.tic.com (4.22/tic.1.2)
  10630.     id AA07497; Fri, 6 Jul 90 10:27:09 cdt
  10631. From: Cazier <cazier@mbunix.mitre.org>
  10632. Newsgroups: comp.std.unix
  10633. Subject: portability of tar tapes
  10634. Message-Id: <792@longway.TIC.COM>
  10635. Sender: std-unix@tic.com
  10636. Reply-To: std-unix@uunet.uu.net
  10637. Organization: The MITRE Corp., Bedford, MA
  10638. Date: 6 Jul 90 14:13:20 GMT
  10639. Apparently-To: std-unix-archive@uunet.uu.net
  10640.  
  10641. From: cazier@mbunix.mitre.org (Cazier)
  10642.  
  10643. How portable are tar tapes from one machine to another. My experience
  10644. has been that tar within a vendor's site is portable but to try to
  10645. carry a tar 1/4" tape from one vendor to another --- that's another story.
  10646.  
  10647. The only thing I've had luck with is 1600 bpi reel tapes written in cpio -
  10648. which is definitely not friendly to the casual user.
  10649.  
  10650. Volume-Number: Volume 20, Number 106
  10651.  
  10652. From jsq@tic.com  Fri Jul  6 20:57:46 1990
  10653. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10654.     id AA26783; Fri, 6 Jul 90 20:57:46 -0400
  10655. Posted-Date: 6 Jul 90 05:28:35 GMT
  10656. Received: by cs.utexas.edu (5.64/1.68)
  10657.     id AA05034; Fri, 6 Jul 90 19:57:44 -0500
  10658. Received: by longway.tic.com (4.22/tic.1.2)
  10659.     id AA09098; Fri, 6 Jul 90 19:49:02 cdt
  10660. From: Jim Kingdon <kingdon@ai.mit.edu>
  10661. Newsgroups: comp.std.unix
  10662. Subject: Re: Mandatory Access Controls in the commercial world
  10663. Message-Id: <793@longway.TIC.COM>
  10664. Sender: std-unix@tic.com
  10665. Reply-To: std-unix@uunet.uu.net
  10666. Date: 6 Jul 90 05:28:35 GMT
  10667. Apparently-To: std-unix-archive@uunet.uu.net
  10668.  
  10669. From:  kingdon@ai.mit.edu (Jim Kingdon)
  10670.  
  10671. Thanks for providing some technical details.  But can't the level be
  10672. made a special case of the set of categories?  That is, define
  10673. categories CLASSIFIED, SECRET, TOP_SECRET, etc, and give people either
  10674. {TOP_SECRET, SECRET, CLASSIFIED} or {SECRET, CLASSIFIED} or
  10675. {CLASSIFIED}.  Unless I'm missing something, this provides the same
  10676. functionality and is simpler.
  10677.  
  10678. You might want to post a clarification (or summary of this and other
  10679. messages). 
  10680.  
  10681. Volume-Number: Volume 20, Number 107
  10682.  
  10683. From jsq@tic.com  Fri Jul  6 20:57:52 1990
  10684. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10685.     id AA26863; Fri, 6 Jul 90 20:57:52 -0400
  10686. Posted-Date: 6 Jul 90 14:38:32 GMT
  10687. Received: by cs.utexas.edu (5.64/1.68)
  10688.     id AA05040; Fri, 6 Jul 90 19:57:51 -0500
  10689. Received: by longway.tic.com (4.22/tic.1.2)
  10690.     id AA09158; Fri, 6 Jul 90 19:51:42 cdt
  10691. From: peter da silva <peter@ficc.ferranti.com>
  10692. Newsgroups: comp.std.unix
  10693. Subject: Re: Standards Update, IEEE 1003.6: Security
  10694. Message-Id: <794@longway.TIC.COM>
  10695. References: <757@longway.TIC.COM> <769@longway.TIC.COM> <780@longway.TIC.COM> <786@longway.TIC.COM>
  10696. Sender: std-unix@tic.com
  10697. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  10698. Organization: Xenix Support, FICC
  10699. Date: 6 Jul 90 14:38:32 GMT
  10700. Apparently-To: std-unix-archive@uunet.uu.net
  10701.  
  10702. From:  peter@ficc.ferranti.com (peter da silva)
  10703.  
  10704. In article <786@longway.TIC.COM> pkr@sgi.com (Phil Ronzone) writes:
  10705. > In article <780@longway.TIC.COM> peter@ficc.ferranti.com (Peter da Silva) writes:
  10706. > >This may well be true. But for a large set of problems the existing UNIX
  10707. > >security approach is quite sufficient. If you don't have the actual hardware
  10708. > >secured it's overkill.
  10709.  
  10710. > I disagree - secure software, from the boot code on, is very effective.
  10711.  
  10712. I'm sure it is. An SR71 is very effective, too, but I find a 747 a whole
  10713. lot more convenient for a trip to Hawaii.
  10714.  
  10715. > >Security and convenience are opposed goals, and sometimes a system
  10716. > >MUST be available.
  10717.  
  10718. > I disagree again -- I think the recent Internet worm is an example of why.
  10719.  
  10720. What do you disagree with? That security and convenience are opposed goals,
  10721. or that sometimes a system MUST be available? And why?
  10722.  
  10723. (what the internet worm has to do with anything is another question. There
  10724.  have been similar incidents on systems with tighter security requirements,
  10725.  such as the DECNET WANK incident or the CHRISTMAS TREE virus. For that matter
  10726.  I have laid out the preliminary design for a virus that can propogate via
  10727.  Usenet source archives. And from what I know of the internet worm it would
  10728.  have spread pretty near as fast if sendmail didn't run under root permissions.
  10729.  start with a non-sequiter and I guess you can prove anything)
  10730. -- 
  10731. Peter da Silva.   `-_-'
  10732. +1 713 274 5180.
  10733. <peter@ficc.ferranti.com>
  10734.  
  10735.  
  10736. Volume-Number: Volume 20, Number 108
  10737.  
  10738. From jsq@tic.com  Sat Jul  7 10:59:03 1990
  10739. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10740.     id AA13763; Sat, 7 Jul 90 10:59:03 -0400
  10741. Posted-Date: 6 Jul 90 10:27:31 GMT
  10742. Received: by cs.utexas.edu (5.64/1.68)
  10743.     id AA00803; Sat, 7 Jul 90 09:58:59 -0500
  10744. Received: by longway.tic.com (4.22/tic.1.2)
  10745.     id AA11081; Sat, 7 Jul 90 09:54:23 cdt
  10746. From: Dominic Dunlop <domo@tsa.co.uk>
  10747. Newsgroups: comp.std.unix
  10748. Subject: Re: correction (compression algorithm patents)
  10749. Message-Id: <795@longway.TIC.COM>
  10750. References: <387@usenix.ORG> <787@longway.TIC.COM>
  10751. Sender: std-unix@tic.com
  10752. Reply-To: tsa.co.uk!domo@usenix.ORG
  10753. Organization: The Standard Answer Ltd.
  10754. Date: 6 Jul 90 10:27:31 GMT
  10755. Apparently-To: std-unix-archive@uunet.uu.net
  10756.  
  10757. From:  Dominic Dunlop <domo@tsa.co.uk>
  10758.  
  10759. >From:  jsh@usenix.org (Jeffrey S. Haemer) quoting Randall Howard
  10760. >
  10761. >    The ramifications [of the fact that the LZ and LZW compression
  10762. >algorithms are patented ] for POSIX.2a are unclear.  Currently, there
  10763. >are members of the working group that say that they would object if a
  10764. >patented >algorithm were required by the standard if ANY FEE WHATSOEVER
  10765. >(even if $1) were required to use it.  (There are, however, precedents
  10766. >for standards working in areas of patents in such areas as networking,
  10767. >modems, and hardware bus structures.  It appears that we software people
  10768. >have not "grown up" as much when it comes to issues of licensing.
  10769.  
  10770. For the record, from (normative) Annex A of IEC/ISO Directives -- Part 2:
  10771. Methodology, 1989:
  10772.  
  10773.    If, in exceptional cases, technical reasons justify the preparation
  10774.    of an International Standard in terms which include that use of a
  10775.    patented item, there is no objection in principle to such a step,
  10776.    even if the terms are such that there is no alternative means of
  10777.    compliance.  In such a case, the following procedures shall be
  10778.    complied with.
  10779.  
  10780.       a)  ISO and IEC cannot give authoritative or comprehensive information
  10781.       about evidence, validity and scope of patent and like rights but it
  10782.       is desirable that the fullest information be disclosed.  Therefore
  10783.       the originator of a proposal of such a kind shall draw the technical
  10784.       committee's or subcommittee's attention to any known patent and like
  10785.       rights on a worldwide basis or any known pending applications,
  10786.       although ISO and IEC are not in a position to guarantee the authority
  10787.       of any such information.
  10788.  
  10789.       b)  If the proposal is accepted on technical grounds, the originator
  10790.       shall ask any known patent holder for a statement that he would be
  10791.       willing to negotiate licences under patent and like rights for
  10792.       applicants throughout the world on reasonable terms and conditions.
  10793.       A record of the patent holder's statement shall be placed in the
  10794.       files of the ISO Central Secretariat or the IEC Central Office, as
  10795.       appropriate, and shall be referred to in the relevant international
  10796.       standard.  If the patent holder does not provide such a statement,
  10797.       the technical committee shall not proceed with the inclusion of the
  10798.       patented item unless the respective Council gives permission.
  10799.  
  10800.       c)  Should it be revealed after publication of the International
  10801.       Standard that licences under a patent and like rights cannot be
  10802.       obtained under reasonable terms and conditions, the International
  10803.       Standard shall be referred back to the technical committee for
  10804.       further consideration.
  10805.  
  10806. (The Councils of IEC and ISO are defined as ``the ultimate authority for
  10807. the technical work...'')
  10808.  
  10809. And from section 7, IEEE Standards Manual, April 1988:
  10810.  
  10811.    7. Patents
  10812.  
  10813.    There is no objection in principle to drafting a proposed IEEE standard
  10814.    in terms that include the use of a patented item, if it is considered
  10815.    that technical reasons justify this approach.
  10816.  
  10817.    7.1 Disclaimer
  10818.  
  10819.    The following note shall appear in all IEEE standards:
  10820.  
  10821.       ``IEEE standards documents are adopted by the Institute of Electrical
  10822.       and Electronic Engineers without regard to whether their adoption may
  10823.       involve patents on articles, materials, or processes.  Such adoption
  10824.       does not assume any liability to any patent owner, nor does it assume
  10825.       any obligation to any parties whatever adopting the standards
  10826.       documents.''
  10827.  
  10828. (This note duly appears in IEEE Std. 1003.1:1988, facing the title page.)
  10829.  
  10830. Think I prefer ISO's cautious but realistic approach to the IEEE's mere
  10831. shrugging off of any blame for any consequences whatever of any action it
  10832. cares to take.
  10833. -- 
  10834. Dominic Dunlop
  10835.  
  10836. Volume-Number: Volume 20, Number 109
  10837.  
  10838. From jsq@tic.com  Sat Jul  7 11:06:10 1990
  10839. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  10840.     id AA15011; Sat, 7 Jul 90 11:06:10 -0400
  10841. Posted-Date: 5 Jul 90 13:56:01 GMT
  10842. Received: by cs.utexas.edu (5.64/1.68)
  10843.     id AA01275; Sat, 7 Jul 90 10:05:55 -0500
  10844. Received: by longway.tic.com (4.22/tic.1.2)
  10845.     id AA11159; Sat, 7 Jul 90 10:04:33 cdt
  10846. From: Dominic Dunlop <domo@tsa.co.uk>
  10847. Newsgroups: comp.std.unix
  10848. Subject: Report on ISO POSIX meeting of June 1990
  10849. Message-Id: <796@longway.TIC.COM>
  10850. Sender: std-unix@tic.com
  10851. Reply-To: std-unix@uunet.uu.net
  10852. Date: 5 Jul 90 13:56:01 GMT
  10853. Apparently-To: std-unix-archive@uunet.uu.net
  10854.  
  10855. From:  Dominic Dunlop <domo@tsa.co.uk>
  10856.  
  10857.           Report on ISO/IEC JTC1/SC22/WG15 (POSIX)
  10858.       Meeting of 11th - 15th June, 1990, Paris, France
  10859.  
  10860.              Dominic Dunlop  -- domo@tsa.co.uk
  10861.  
  10862.                   The Standard Answer Ltd.
  10863.  
  10864.                         Introduction
  10865.  
  10866. Working Group 15 of Subcommittee 22 of Joint Technical
  10867. Committee 1 of the International Organization for
  10868. Standardization and the International Electrotechnical
  10869. Commission (ISO/IEC JTC1/SC22/WG15), or, more briefly, the
  10870. ISO POSIX working group, met in Paris, France, from the 12th
  10871. to the 15th of June.  The meeting was hosted by AFNOR,
  10872. (Association francaise de normalisation), the French
  10873. national standards body, at its offices in La Defense, a
  10874. high-rise business district a brisk train-ride away from the
  10875. city centre, and was preceded on 11th June and the morning
  10876. of the 12th by meetings of the rapporteur groups on
  10877. conformance testing, internationalization and security.
  10878. Attendance was good, with thirty "experts" (as the ISO
  10879. Directives style us) representing nine countries, plus the
  10880. European Community.
  10881.  
  10882. I was present at the main meeting and at the
  10883. internationalization rapporteur group as an observer with
  10884. the brief of reporting back to you.  This report is the
  10885. fourth jointly commissioned by the European UNIX systems
  10886. User Group (EUUG) and USENIX.  As usual, it's a little
  10887. imprecise in its references to ISO.  Strictly, most of these
  10888. should be to JTC1, or to some part of JTC1.  Where precision
  10889. is needed, I use it and give an explanation, but for the
  10890. most part I refer simply to ISO, so as to avoid getting
  10891. bogged down in unnecessary detail.  If you have any
  10892. comments, or need clarification or further information,
  10893. please contact me at the mail address above.
  10894.  
  10895. First, a summary of the most important aspects of the
  10896. meeting:
  10897.  
  10898.                           Summary
  10899.  
  10900.    o POSIX.1, the operating system interface standard,
  10901.      should be published as international standard 9945-1
  10902.      Real Soon Now.  As I write, the ballot on the document
  10903.      has yet to close, but it seems unlikely that any of the
  10904.      twenty countries voting will oppose acceptance.  The
  10905.      meeting identified a number of trivial editorial
  10906.      changes to the current draft international standard,
  10907.      and these, taken together with continuing nit-picking
  10908.      comments from ISO's central secretariat, should result
  10909.      in a document which ISO will print.  Its technical
  10910.      content will be identical to that of
  10911.  
  10912.  
  10913.                            - 2 -
  10914.  
  10915.      ANSI/IEEE Std. 1003.1:1988, so implementors following
  10916.      the U.S. standard can be assured of ISO compliance when
  10917.      9945-1 finally sees the light of day.
  10918.  
  10919.    o POSIX.2, the shell and tools standard, faces a bumpier
  10920.      ride before becoming international standard 9945-2.  In
  10921.      an ISO ballot on acceptance of draft 9 of IEEE 1003.2
  10922.      as a draft international standard, six countries voted
  10923.      against, with just five in favour.  This is more of an
  10924.      embarrassment than a set-back: hindsight suggests that
  10925.      it was just too early to hold a ballot.
  10926.  
  10927.    o Showing its increasing concern and frustration at the
  10928.      lack of apparent progress within the IEEE on a
  10929.      (programming) language-independent version of the POSIX
  10930.      operating system interface standard, WG15 has refused
  10931.      to "register" the current, largely language-
  10932.      independent, draft of the 1003.4 realtime extensions
  10933.      standard on the grounds that it makes little sense to
  10934.      have language-independent extensions to a base standard
  10935.      which is specified in terms of the C language.
  10936.      Similarly, the group failed to register 1003.5 (Ada
  10937.      binding) and 1003.9 (FORTRAN-77 binding) because
  10938.      POSIX.1 lacks an explicit service definition to which
  10939.      they can bind.
  10940.  
  10941.    o The failure to register these documents causes a hiccup
  10942.      -- albeit a discreet one -- in the synchronization
  10943.      between IEEE and ISO POSIX standardization schedules.
  10944.      In the hope of avoiding such situations in the future,
  10945.      an informal "speak now, or forever hold your peace"
  10946.      mechanism has been put in place, allowing the
  10947.      international community to comment on the subject area,
  10948.      format, presentation and approach of IEEE documents at
  10949.      an early stage in their preparation.
  10950.  
  10951.    o Had it not been for this upset, the working group would
  10952.      have adopted a firm synchronization plan so as to
  10953.      ensure that the work of IEEE and of ISO is closely
  10954.      coordinated in the future.  As it is, the "U.S. member
  10955.      body" -- ANSI -- has been asked to provide a revised
  10956.      plan for the working group's October meeting in
  10957.      Seattle.
  10958.  
  10959.    o The Open Software Foundation, UNIX International and
  10960.      X/Open are cooperating on a common approach to
  10961.      conformance testing, known as Phoenix.  Governmental
  10962.      organizations with a strong interest in the field, such
  10963.      as the National Institute for Science and Technology
  10964.      (NIST) and the Commission of European Communities
  10965.      (CEC), seem broadly to welcome this move -- even if the
  10966.  
  10967.  
  10968.                            - 3 -
  10969.  
  10970.      unaccustomed show of tripartite unity is, as one
  10971.      security rapporteur put it, "a bit spooky".
  10972.  
  10973.    o At an evening reception hosted by AFUU (Association
  10974.      francaise des utilizateurs de UNIX), the French UNIX
  10975.      users' group, Mike Lambert of X/Open said that "our
  10976.      hand is extended" to the international standardization
  10977.      community, with which his organization hopes to work in
  10978.      finding some more timely and responsive way of
  10979.      delivering formal consensus standards for open systems.
  10980.      The definition of this mechanism is left as an exercise
  10981.      for the reader -- or for the international standards
  10982.      community.  Perhaps Mike has come to realize that
  10983.      standardizers too are prone to the Not Invented Here
  10984.      syndrome, and so must believe that they thought of
  10985.      something themselves before they can accept it.
  10986.  
  10987.    o Just to keep us all on our toes, ISO has updated its
  10988.      Directives, with the result that the procedure for
  10989.      turning a base document -- such as one of the IEEE
  10990.      drafts -- into an international standard is subtly
  10991.      changed.  We now have to forget about Draft Proposals,
  10992.      and turn our minds instead to Working Drafts and
  10993.      Committee Drafts.  Sigh...
  10994.  
  10995. The rest of this report gives more detail most of these
  10996. topics.
  10997.  
  10998.             9945-1_--_Operating_System_Interface
  10999.  
  11000. You may recall from my report of WG15's last meeting in
  11001. October, 1989, that the group had in effect told ISO's
  11002. central secretariat that, while the then-current draft of
  11003. IS 9945-1 was not perfect, it was, in the group's opinion,
  11004. good enough to publish, particularly since we'd undertake to
  11005. fix things up on short order, allowing an improved version
  11006. to be published within a year of the first edition.
  11007.  
  11008. This proposal did not fly.  Firstly, the central secretariat
  11009. (now dynamically known as ITTF, the Information Technology
  11010. Task Force), refused to publish a document that looked much
  11011. more like an IEEE standard than an ISO standard; secondly,
  11012. they deemed the changes needed to polish up the draft to be
  11013. sufficiently great that it should go out to ballot again in
  11014. order to provide a formal check that it was still acceptable
  11015. to the group.  This was duly done; the ballot closed on 29th
  11016. June, and is expected to pass very comfortably.
  11017.  
  11018. Nevertheless, the ballot gave people the opportunity to
  11019. comment formally on the document again, with the result that
  11020. a number of small bug-fixes and clarifications were
  11021.  
  11022.  
  11023.                            - 4 -
  11024.  
  11025. suggested, and were accepted for incorporation into the
  11026. draft.  We judge -- and we hope that ITTF agrees -- the
  11027. changes are strictly editorial, and so will not merit yet
  11028. another ballot.  ITTF, which, in discussion with the IEEE,
  11029. had slightly bent its drafting and presentation rules so as
  11030. to come up with a compromise satisfactory to both parties,
  11031. also suggested further changes, some in areas that we
  11032. thought had already been addressed.  This is a cause for
  11033. concern: the prospect of the standard never being published
  11034. because its layout and language do not meet some ill-defined
  11035. guidelines does not appeal.  Consequently, we are seeking
  11036. "written harmonized editorial requirements" from the IEEE
  11037. and ITTF.
  11038.  
  11039. The ballot also produced a number of suggestions in the area
  11040. of internationalization, such as how to handle (and indeed,
  11041. how to refer to) wide, or multi-byte, characters.  To have
  11042. acted on these comments would have changed the technical
  11043. content of the draft standard -- the equivalent of sliding
  11044. down a snake in the game that leads to eventual publication.
  11045. Happily, those who suggested the changes were content to
  11046. leave these issues for the second edition of the standard,
  11047. rather than further delay the first edition.
  11048.  
  11049. The single exception that we could get away with was to
  11050. replace Annex E's1 example international profile for the
  11051. hypothetical (and extremely odd) land of Poz with a real
  11052. example for the (only slightly odd) country of Denmark.
  11053. Although this is a large change, it can be made because the
  11054. annex (ISO-speak for appendix) is "non-normative"; that is,
  11055. it is an explanatory example rather than a part of the
  11056. official standard.
  11057.  
  11058. Messaging, an issue which is currently exercising the minds
  11059. of those concerned with the next edition of the 1003.1
  11060. standard[1], was also passed over by WG15:  nobody had a
  11061. strong preference for either the X/Open proposal or the
  11062. UniForum proposal, so 1003.1 will have to handle the issue
  11063. without guidance from from the ISO working group.
  11064.  
  11065. Where all does this leave us?  With no published
  11066. international standard as yet, but with a very good prospect
  11067. of having one this year.  Until it arrives, keep using the
  11068. bilious green book, IEEE std. 1003.1:19882, as its technical
  11069.  
  11070. __________
  11071.  
  11072.  1. This material is not in the published
  11073.     IEEE std. 1003.1:1988.
  11074.  
  11075.  
  11076.                            - 5 -
  11077.  
  11078. content is identical to that of the eventual ISO standard.
  11079.  
  11080.                  9945-2_--_Shell_and_Tools
  11081.  
  11082. Earlier in the year, there had been a ballot on moving
  11083. forward draft proposal (DP) 9945-2, Shell and utility
  11084. application interface for computer operating system
  11085. environments, to become a draft international standard
  11086. (DIS).  Basically, while a DP is allowed -- even expected --
  11087. to differ considerably from the international standard which
  11088. ultimately results, a DIS is expected to be in a format and
  11089. to have contents which are very close to those of the
  11090. ultimate standard3.  That the ballot was six against to just
  11091. five for (with nine countries not voting) indicates that the
  11092. consensus is that 9945-2 has to go through quite a few more
  11093. changes before it can be acceptable as an international
  11094. standard.
  11095.  
  11096. Many of these changes concern internationalization, as this
  11097. topic affects POSIX.2 considerably more than POSIX.1.  For
  11098. example, the example Danish national profile to be
  11099. incorporated into 9945-1 is just a part of the work that DS
  11100. (Dansk Standardiseringraad) has done on the topic; the rest
  11101. affects 9945-2.  There is also an unresolved issue
  11102. concerning the definition of collation sequences (sorting
  11103. orders) for international character sets.  Utilities such as
  11104. sort clearly need to know about collation sequence, and so
  11105. do the regular expression-handling utilities and functions
  11106. defined by POSIX.2.  The problem is that nobody in ISO seems
  11107. to want to handle the matter.  In particular, JTC1/SC2,
  11108. which standardizes coded character sets, sees its job as
  11109. assigning codes to characters, not as saying anything about
  11110. how those codes should sort4.  This is a reasonable
  11111. attitude:  collation is a surprisingly complex field, and to
  11112.  
  11113. ____________________________________________________________
  11114.  
  11115.  2. You can buy a copy by calling IEEE customer service on
  11116.     +1 908 981 1393 (1 800 678 IEEE inside the U.S.) and
  11117.     giving them a credit card number.  The cost is $37, plus
  11118.     $4 for overseas surface mail, plus another $15 for
  11119.     airmail.  Alternatively, your national standards body
  11120.     may be able to sell you a copy.  For example, BSI in the
  11121.     U.K. has them for sale at pounds 24.
  11122.  
  11123.  3. DP 9945-2 is the last that we will see; under the new
  11124.     directives, DPs are no more; they are replaced by
  11125.     working drafts (WDs), which become committee drafts
  11126.     (CDs) before becoming DISs.  This is not a big deal.
  11127.  
  11128.  
  11129.                            - 6 -
  11130.  
  11131. attempt to cover it in coded character set standards would
  11132. break the ISO rule of one topic, one standard.  This is all
  11133. very well, but 9945-2 needs somebody to do the work, and
  11134. WG15 may end up doing it itself if pleas for help from
  11135. elsewhere in ISO fail.
  11136.  
  11137. More work is on the way: 1003.2a, the User Portability
  11138. Extension to POSIX.2, was registered for ballot as a
  11139. Proposed Draft Amendment (PDAM) to DP 9945-2, giving the
  11140. international community a chance to say what it thinks of
  11141. the idea of standardizing interactive commands such as vi
  11142. and language processors like cc -- or rather c89.
  11143.  
  11144.                         Coordination
  11145.  
  11146. The coordination arrangements which will make IEEE and ISO
  11147. work on POSIX march forward in lock-step were almost
  11148. complete before the small international rebellion on the
  11149. matter of language independence made us stumble.  (See
  11150. below.)  Because WG15 failed to register 1003.4, 1003.5 and
  11151. 1003.9 at this meeting, the plan must be adjusted, although
  11152. little slippage should result.  We'll try to jump on board
  11153. the revised plan at the next meeting.
  11154.  
  11155.                     Internationalization
  11156.  
  11157. In the one and a half days before the main meeting of WG15,
  11158. its three rapporteur groups met.  I attended the
  11159. internationalization meeting, which had a hectic time of it:
  11160. as the only rapporteur group directly concerned with the
  11161. current content of 9945-1 and -2, we had a lot of comments
  11162. to sift through prior to the main meeting.  This we did, by
  11163. the skin of our teeth.  Our conclusions are largely
  11164. reflected in the actions on the two drafts, reported above.
  11165.  
  11166.                           Security
  11167.  
  11168. The security rapporteur group is just getting off the
  11169. ground.  As with internationalization, activities scattered
  11170. throughout JTC1 have to do with security.  But in contrast
  11171. to the current situation for internationalization, for
  11172. security there is a (very new) subcommittee, SC27.
  11173. Conceivably, SC27 could define some all-encompassing ISO
  11174. security model5 which would not suit POSIX and the work of
  11175.  
  11176. __________
  11177.  
  11178.  4. For oblique confirmation from "the father of ASCII", see
  11179.     [2].
  11180.  
  11181.  
  11182.                            - 7 -
  11183.  
  11184. 1003.6, which is eventually to be integrated into the 9945
  11185. standards.  The rapporteur group is doing all that it can to
  11186. prevent this from happening.  Happily, ISO is already aware
  11187. of the issue, and has formed a special working group on
  11188. security, to which WG15 will be sending a representative.
  11189.  
  11190.                     Conformance_Testing
  11191.  
  11192. The proceedings of the rapporteur group on conformance
  11193. testing were rather overshadowed by the announcement of
  11194. Project Phoenix.  Quite from what ashes this has risen we
  11195. did not learn; however, as it involves cooperation between
  11196. the Open Software Foundation (OSF), UNIX International and
  11197. X/Open, it is difficult to resist the temptation to
  11198. speculate.  But resist I shall...
  11199.  
  11200. The goal of Phoenix is to develop a common conformance
  11201. testing suite and methodology for the three organizations,
  11202. or, to put it another way, to harmonize their activities in
  11203. this area.  Harmonization of standards for open systems is
  11204. an important issue for WG15 in general.  The issue affects
  11205. the rapporteur group on conformance testing in particular
  11206. because the European Community and NIST are giving a high
  11207. priority to accrediting test houses which can check
  11208. conformance to open systems standards.  This means that they
  11209. need to ensure that uniform test methods are being
  11210. consistently applied.  The rapporteur group will address
  11211. this issue at its next meeting.  In the mean time, WG15 has
  11212. registered the current draft of the first part of 1003.3,
  11213. which describes general test procedures, and we will review
  11214. it before our next meeting -- despite the fact that there is
  11215. as yet no well-defined route by which POSIX.3 can become an
  11216. international standard.
  11217.  
  11218.                    Language_Independence
  11219.  
  11220. The issue of a making the POSIX standards independent of any
  11221. particular computer language came to the fore at this
  11222. meeting.  What's all the fuss about?  Well, ISO has firm --
  11223. and, in my view, sensible -- ideas about how to write
  11224. standards which define the services available from
  11225. information processing systems.  Building on the doctrine
  11226. that one standard should address just one topic, there
  11227.  
  11228. ____________________________________________________________
  11229.  
  11230.  5. ISO likes models, and they're not without their uses.
  11231.     Work on a useful model for open systems is under way in
  11232.     several forums.
  11233.  
  11234.  
  11235.                            - 8 -
  11236.  
  11237. should be, says ISO, one document defining the service, and
  11238. one or more documents describing ways of accessing that
  11239. service.  For example, a browse through the open systems
  11240. interconnection standards reveals several groupings such as
  11241. IS 8072, Transport Service Definition and IS 8073,
  11242. Connection oriented transport protocol specification; and
  11243. IS 8649, Service definition for the Association Control
  11244. Service Element, and IS 8650, Protocol specification for the
  11245. Association Control Service Element6.  Similarly, in text
  11246. communication, there is IS 9066-1, Reliable transfer --
  11247. model and service definition and IS 9066-2, Reliable
  11248. transfer -- protocol specification, and in graphics,
  11249. IS 7942, Graphical Kernel System functional description and
  11250. IS 8651-1 through -3 giving GKS language bindings for
  11251. FORTRAN, Pascal and Ada.  (8651-4, giving bindings for C, is
  11252. in the works.)
  11253.  
  11254. POSIX, ISO has ordained, must eventually go along with this
  11255. model, with the result that IS 9945-1, -2, and -3 (Operating
  11256. system interface, shell and utilities, and administration
  11257. respectively) will be concerned simply with defining
  11258. services, and will not be bound to any particular
  11259. programming language.  The key word here is "eventually":
  11260. because of the pressing need for an international standard
  11261. for POSIX, a waiver has been granted, allowing the first
  11262. version of the 9945-1 and -2 standards to be a combination
  11263. of (purists might say "a collision between") a service
  11264. definition and a C language binding to those services.  The
  11265. expectation is that a future revised new edition of each
  11266. standard will be language-independent, and that bindings for
  11267. the C language will be published as a separate standard at
  11268. the same time7.
  11269.  
  11270. So far, so good.  But this is where the problems start.
  11271. While this mandated future appears a long way off if one
  11272. looks at the IEEE's work on POSIX.1, it seems very close
  11273.  
  11274. __________
  11275.  
  11276.  6. Browsing through OSI standards may be a cure for
  11277.     insomnia.  On the other hand, it may aggravate
  11278.     hypertension...
  11279.  
  11280.  7. Under ISO's procedures, the bindings standards for POSIX
  11281.     will be allocated an ISO standard number just as soon as
  11282.     we register a base document for one of them.  Until that
  11283.     happens, I shall have to refer to "future bindings
  11284.     standards", rather than having a convenient number to
  11285.     use as a handle.
  11286.  
  11287.  
  11288.                            - 9 -
  11289.  
  11290. when POSIX.4 (realtime extensions), POSIX.5 (Ada bindings)
  11291. and POSIX.9 (FORTRAN-77 bindings) are considered.  In the
  11292. case of POSIX.4, language-independent extensions are being
  11293. proposed for a standard which is not itself (yet) language-
  11294. independent.  And POSIX.5 and POSIX.9 define bindings to a
  11295. set of services which is not explicitly defined, but rather
  11296. is defined implicitly in terms of the binding to the C
  11297. language given in POSIX.1.  In the absence of a clear
  11298. service definition, it is no surprise that, for good reasons
  11299. which have to do with their respective languages, the Ada, C
  11300. and FORTRAN versions of the operating system interface
  11301. appear currently to be binding to slightly different sets of
  11302. services.
  11303.  
  11304. To some, the whole issue of language independence seems like
  11305. an unnecessary and irksome imposition by ISO.  In a recent
  11306. posting to comp.std.unix[3], Doug Gwyn wrote:
  11307.  
  11308.      [Those of us who worked on 1003.1] did NOT set out
  11309.      to create a language-independent standard; C was
  11310.      specifically chosen for the obvious reason that it
  11311.      was the SOLE appropriate language for systems-
  11312.      level programming on UNIX, for a variety of
  11313.      reasons, including the fact that the UNIX kernel
  11314.      has a marked preference for being fed C data
  11315.      types.
  11316.  
  11317. It is certainly true that, because, back in 1985, all the
  11318. base documents for the IEEE POSIX work were written in terms
  11319. of a C language interface, the working group made a good
  11320. pragmatic decision to produce a standard centered on C.  A
  11321. different decision would have resulted in the standard which
  11322. took longer to get out of the door, and which would not have
  11323. been any more useful to its primary audience -- committed
  11324. UNIX users concerned with the divergence among
  11325. implementations of their chosen operating system.  But the
  11326. success of UNIX and of its offspring, POSIX, has greatly
  11327. widened the audience for the standard.  Whether we like it
  11328. or not, ISO has revisited the original decision so as to
  11329. ensure that the international standards for POSIX meet the
  11330. needs of this new audience.  As a result (to continue
  11331. quoting from [3]):
  11332.  
  11333.      This "language binding" nonsense was foisted off
  11334.      on P1003 in an attempt to meet ISO guidelines.  I
  11335.      think it must have been adopted by ISO as the
  11336.      result of Pascal types insisting that they never
  11337.      have to use any other language.
  11338.  
  11339. Countering this, I would contend that, while the number of
  11340. "Pascal types" is too small for their opinion to be of prime
  11341.  
  11342.  
  11343.                            - 10 -
  11344.  
  11345. concern, the number of FORTRAN types, COBOL types and
  11346. perhaps even of Ada types is large enough that it would be
  11347. at least polite to provide some well-defined means whereby
  11348. these communities can create bindings which allow them to
  11349. hook into POSIX services without having to learn a new
  11350. programming language.  In the future, the growing C++
  11351. community may decide to define the interface to POSIX
  11352. services in an object-oriented manner; Steve Carter paid us
  11353. a flying visit with news from the ANSI X3J16 C++ committee
  11354. in order to open up channels of communication.
  11355.  
  11356. Consider another topic which has come to the fore as POSIX
  11357. has moved into the international arena: internationalization
  11358. -- mechanisms which will allow non-English speakers to use
  11359. POSIX-compliant systems without having to learn a new
  11360. natural language.  Like the current movement towards
  11361. separating service definitions from bindings, this involves
  11362. a considerable amount of work, yet does not appear to
  11363. provide much that is of use to UNIX' original community of
  11364. technical users.  Accommodating the preferences
  11365. (prejudices?) of ever greater numbers of people is, it seems
  11366. to me, part of the price of success for the UNIX operating
  11367. system.  And it may well pay dividends.  For example,
  11368. internationalization work on regular expressions and
  11369. collating has resulted in facilities which will be of use
  11370. even to English speakers.
  11371.  
  11372. Returning to the matter of the programming language used for
  11373. bindings, it is true that AT&T-derived UNIX implementations
  11374. prefer a diet of C data types.  However, it certainly was an
  11375. aim of 1003.1 to allow hosted POSIX implementations, which
  11376. might well be riding on underlying operating systems with
  11377. entirely different tastes.  As a topical example,
  11378. lightweight kernels such as Chorus and Mach live on
  11379. messages, suggesting that their services could be bound to a
  11380. data stream encoding8.  I suspect that anybody who has tried
  11381. to make ioctl() work across a network wishes that UNIX had
  11382. anticipated their needs by following such a model from the
  11383. start.  But it didn't, and to redefine it in these terms
  11384. would be a large piece of work which (thankfully) is a long
  11385. way beyond the scope of WG15.
  11386.  
  11387. __________
  11388.  
  11389.  8. More ISO-speak: broadly, if you have a protocol that
  11390.     lives above layer five (session) of the OSI stack, you'd
  11391.     better call it a data stream encoding.  For example, the
  11392.     protocol for the X Window System is a data stream
  11393.     encoding by this definition.
  11394.  
  11395.  
  11396.                            - 11 -
  11397.  
  11398. There is no way in which all such requirements could have
  11399. been anticipated, and accommodating the most important of
  11400. them as the need arises inevitably causes pain.  Both
  11401. language independence and internationalization are
  11402. unanticipated requirements which the international community
  11403. wants retrofitted to POSIX on short order.  And it's ANSI,
  11404. as provider of the base documents to ISO, and the IEEE, as
  11405. the body accredited by ANSI to produce the documents, that
  11406. get beat on to do the real work, and to suffer the pain.
  11407.  
  11408. In the view of WG15, the real work needed to make POSIX.1 a
  11409. logical base for extensions such as POSIX.4, POSIX.5 and
  11410. POSIX.9 is not being done fast enough.  Trouble is, all
  11411. standards are produced by volunteers -- often volunteers who
  11412. have had to make a case to their managements that there's
  11413. some percentage in their company being involved in standards
  11414. work.  There is clearly an eventual percentage in language
  11415. independence for suppliers of POSIX-conformant systems if it
  11416. encourages users of languages not traditionally found on
  11417. UNIX systems to migrate to POSIX.  But sadly, while not in
  11418. any way criticizing the quality of the work done to date,
  11419. there aren't enough IEEE volunteers interested in recasting
  11420. POSIX.1 into language-independent form.
  11421.  
  11422. Maybe, just maybe, if the international community is more
  11423. interested than the U.S. in getting this work done, WG15
  11424. should encourage more people from outside the U.S. to
  11425. participate actively and directly in the work of the IEEE.
  11426. (Or, to put it another way, encourage more organizations
  11427. outside the U.S. to put their hands more deeply into their
  11428. pockets in order to pay for people to attend IEEE POSIX
  11429. working group meetings.)  The alternative is that WG15 does
  11430. the work itself -- an alternative I'd rather not
  11431. contemplate.
  11432.  
  11433. For now, two action items on ANSI from WG15 sum up the
  11434. situation:
  11435.  
  11436.      Pursue with vigour the production of a language-
  11437.      independent version of both 9945-1 and P1003.4 in
  11438.      conjunction with a C language binding for each in
  11439.      order that they are eligible as replacements for
  11440.      9945-1:1990.
  11441.  
  11442.      Request the IEEE to expedite the completion of the
  11443.      language independent specification of 9945-1 that
  11444.      is precisely functionally equivalent to the
  11445.      existing 9945-1:1990 and provide a C language
  11446.      binding that is syntactically and semantically
  11447.      identical; and request that a detailed proposal
  11448.      status report on this issue including a
  11449.  
  11450.  
  11451.                            - 12 -
  11452.  
  11453.      synchronization proposal be presented at the next
  11454.      meeting of WG15.
  11455.  
  11456.                         Next_Meeting
  11457.  
  11458. The next meeting of WG15 is in Seattle from 23rd to 26th
  11459. October -- the week after the IEEE POSIX working group
  11460. meeting in the same city (and the same week as the EUUG
  11461. meeting in Nice, France9).  Should be interesting!
  11462.  
  11463. __________
  11464.  
  11465.  9. In two meetings, WG15 has managed to clash both with
  11466.     summer USENIX and with autumn EUUG.  It almost looks as
  11467.     if we do it on purpose!  But we don't, and will try to
  11468.     do better next year...
  11469.  
  11470.  
  11471.                            - 13 -
  11472.  
  11473.                          REFERENCES
  11474.  
  11475.  1. June, 1990 Standards Update, Jeffrey S. Haemer,
  11476.     comp.std.unix Volume 20, Number 66, USENIX, 30 June 1990
  11477.  
  11478.  2. Letter from R. W. Bremer, pp 34-35, Byte, volume 15,
  11479.     number 6, June 1990
  11480.  
  11481.  3. Doug Gwyn, comp.std.unix Volume 20, Number 51, USENET,
  11482.     27 June 1990
  11483.  
  11484. Volume-Number: Volume 20, Number 110
  11485.  
  11486. From jsq@tic.com  Sat Jul  7 14:02:34 1990
  11487. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  11488.     id AA23539; Sat, 7 Jul 90 14:02:34 -0400
  11489. Posted-Date: 7 Jul 90 14:50:51 GMT
  11490. Received: by cs.utexas.edu (5.64/1.68)
  11491.     id AA08156; Sat, 7 Jul 90 13:02:30 -0500
  11492. Received: by longway.tic.com (4.22/tic.1.2)
  11493.     id AA11586; Sat, 7 Jul 90 13:05:23 cdt
  11494. From: Dominic Dunlop <domo@tsa.co.uk>
  11495. Newsgroups: comp.std.unix
  11496. Subject: Re: Printing Standards?
  11497. Message-Id: <797@longway.TIC.COM>
  11498. References: <789@longway.TIC.COM>
  11499. Sender: std-unix@tic.com
  11500. Reply-To: domo@tsa.co.uk
  11501. Organization: The Standard Answer Ltd.
  11502. Date: 7 Jul 90 14:50:51 GMT
  11503. Apparently-To: std-unix-archive@uunet.uu.net
  11504.  
  11505. From:  Dominic Dunlop <domo@tsa.co.uk>
  11506.  
  11507. In article <789@longway.TIC.COM> urban@rand.org (Mike Urban) writes:
  11508. >What incipient or existing standards, if any, specify
  11509. >the Shell-level printer interface (lpr and its friends)?
  11510.  
  11511. Aha.  That terminal ``r'' tells me you're a Berkeley-ite.  Which is too
  11512. bad, I'm afraid.  The draft 1003.2 shell and tools standard specifies a
  11513. pretty-much emasculated version of the System V.2 (or thereabouts) lp
  11514. print spooling command (which some might argue was fairly impotent in
  11515. the first place).  As far as ``friends'' go (lpadmin, enable, lpshut and
  11516. so on in the case of System V), none are specified.  This is seen as
  11517. 1003.7 (administration) territory.  If you can get hold of a draft
  11518. (somebody in Rand must have one), you'll find lots of extended
  11519. description about how little a conforming application can assume from
  11520. lp, and rationale about how it should be possible to implement it as a
  11521. shell script, namely
  11522.  
  11523.     cat > /dev/lp
  11524.  
  11525. The X/Open Portability Guide, edition 3, volume 1, does little better: it
  11526. describes a few more options, and the cancel utility, but they're all
  11527. optional -- in effect, all an XPG-conformant system has to offer is the
  11528. interface described in 1003.2.
  11529.  
  11530. All rather depressing really.
  11531. -- 
  11532. Dominic Dunlop
  11533.  
  11534. Volume-Number: Volume 20, Number 111
  11535.  
  11536. From jsq@tic.com  Sat Jul  7 22:11:11 1990
  11537. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  11538.     id AA01584; Sat, 7 Jul 90 22:11:11 -0400
  11539. Posted-Date: 7 Jul 90 20:42:16 GMT
  11540. Received: by cs.utexas.edu (5.64/1.68)
  11541.     id AA28714; Sat, 7 Jul 90 21:11:07 -0500
  11542. Received: by longway.tic.com (4.22/tic.1.2)
  11543.     id AA12643; Sat, 7 Jul 90 21:07:28 cdt
  11544. From: J Greely <jgreely@cis.ohio-state.edu>
  11545. Newsgroups: comp.std.unix
  11546. Subject: Re: Printing Standards?
  11547. Message-Id: <798@longway.TIC.COM>
  11548. References: <789@longway.TIC.COM> <797@longway.TIC.COM>
  11549. Sender: std-unix@tic.com
  11550. Reply-To: jgreely@cis.ohio-state.edu (J Greely)
  11551. Organization: Ohio State University Computer and Information Science
  11552. Date: 7 Jul 90 20:42:16 GMT
  11553. Apparently-To: std-unix-archive@uunet.uu.net
  11554.  
  11555. From:  jgreely@cis.ohio-state.edu (J Greely)
  11556.  
  11557. In article <797@longway.TIC.COM> domo@tsa.co.uk (Dominic Dunlop) writes:
  11558. [discussion of POSIX specifying only minimal print standard,
  11559. bare-bones SysV lp]
  11560.  
  11561. >All rather depressing really.
  11562.  
  11563. Actually, I find it encouraging.  It means that the world won't
  11564. standardize on either SysV *or* Berkeley print spooling, which means
  11565. that there's room for someone to write something good.  Lpr and
  11566. company are a bitch for a large network, and I wouldn't even *try* to
  11567. run lp on 300 machines.  What's needed is a real batch system that
  11568. scales to a large network (and please, Ghod, make it administerable by
  11569. a mortal).
  11570. --
  11571. J Greely (jgreely@cis.ohio-state.edu; osu-cis!jgreely)
  11572.  
  11573. Volume-Number: Volume 20, Number 112
  11574.  
  11575. From jsq@tic.com  Sat Jul  7 22:11:19 1990
  11576. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  11577.     id AA01598; Sat, 7 Jul 90 22:11:19 -0400
  11578. Posted-Date: 7 Jul 90 23:39:29 GMT
  11579. Received: by cs.utexas.edu (5.64/1.68)
  11580.     id AA28727; Sat, 7 Jul 90 21:11:16 -0500
  11581. Received: by longway.tic.com (4.22/tic.1.2)
  11582.     id AA12709; Sat, 7 Jul 90 21:10:22 cdt
  11583. From: Henry Spencer <henry@zoo.toronto.edu>
  11584. Newsgroups: comp.std.unix
  11585. Subject: Re: portability of tar tapes
  11586. Message-Id: <799@longway.TIC.COM>
  11587. References: <792@longway.TIC.COM>
  11588. Sender: std-unix@tic.com
  11589. Reply-To: std-unix@uunet.uu.net
  11590. Date: 7 Jul 90 23:39:29 GMT
  11591. Apparently-To: std-unix-archive@uunet.uu.net
  11592.  
  11593. From:  henry@zoo.toronto.edu (Henry Spencer)
  11594.  
  11595. >From: cazier@mbunix.mitre.org (Cazier)
  11596. >How portable are tar tapes from one machine to another. My experience
  11597. >has been that tar within a vendor's site is portable but to try to
  11598. >carry a tar 1/4" tape from one vendor to another...
  11599.  
  11600. It is necessary to distinguish two issues here:  the tar format, and the
  11601. physical recording format.  The latter is whether you can get data off
  11602. the tape at all; the former is whether you can understand it.
  11603.  
  11604. Tar format is, if anything, significantly more portable than cpio, because
  11605. there has basically been only one version of tar format (plus some recent
  11606. upward-compatible extensions), whereas there have been several (different
  11607. and incompatible) versions of cpio.  The one problem that comes up now
  11608. and then is byte-swapping, due to broken hardware/drivers in certain
  11609. manufacturer's systems (I won't mention any names, except SGI :-)),
  11610. but a simple run through `dd conv=swab' solves that.
  11611.  
  11612. Physical recording format, especially on quarter-inch cartridges, is
  11613. another can of worms entirely.  There are too many different quarter-inch
  11614. recording formats to conveniently count, and new ones keep popping up.
  11615. If the recording format of the originating system is incompatible with
  11616. that of the reading system, it doesn't matter whether you're using tar,
  11617. cpio, ANSI standard magtape format, or whatever -- you *cannot* read
  11618. that tape.  Mercifully, there is basically only one format per density
  11619. on half-inch tape, and likewise on 8mm, and the appalling mess of floppy
  11620. formats settled down considerably when IBM's formats stomped all the
  11621. others (well, most of them, we won't mention Apple...) into oblivion.
  11622. Unfortunately, as I recall there are two formats on DAT, which isn't a
  11623. good start for a new technology.
  11624.  
  11625.                                          Henry Spencer at U of Toronto Zoology
  11626.                                           henry@zoo.toronto.edu   utzoo!henry
  11627.  
  11628. Volume-Number: Volume 20, Number 113
  11629.  
  11630. From jsq@tic.com  Sun Jul  8 02:18:36 1990
  11631. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  11632.     id AA18665; Sun, 8 Jul 90 02:18:36 -0400
  11633. Posted-Date: 8 Jul 90 04:23:28 GMT
  11634. Received: by cs.utexas.edu (5.64/1.68)
  11635.     id AA17204; Sun, 8 Jul 90 01:18:33 -0500
  11636. Received: by longway.tic.com (4.22/tic.1.2)
  11637.     id AA13109; Sun, 8 Jul 90 00:39:06 cdt
  11638. From: Doug Gwyn <gwyn@smoke.brl.mil>
  11639. Newsgroups: comp.std.unix
  11640. Subject: Re: Mandatory Access Controls in the commercial world
  11641. Message-Id: <800@longway.TIC.COM>
  11642. References: <793@longway.TIC.COM>
  11643. Sender: std-unix@tic.com
  11644. Reply-To: std-unix@uunet.uu.net
  11645. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  11646. Date: 8 Jul 90 04:23:28 GMT
  11647. Apparently-To: std-unix-archive@uunet.uu.net
  11648.  
  11649. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  11650.  
  11651. In article <793@longway.TIC.COM> From:  kingdon@ai.mit.edu (Jim Kingdon)
  11652. >Thanks for providing some technical details.  But can't the level be
  11653. >made a special case of the set of categories?  That is, define
  11654. >categories CLASSIFIED, SECRET, TOP_SECRET, etc, and give people either
  11655. >{TOP_SECRET, SECRET, CLASSIFIED} or {SECRET, CLASSIFIED} or
  11656. >{CLASSIFIED}.  Unless I'm missing something, this provides the same
  11657. >functionality and is simpler.
  11658.  
  11659. The problem is, that approach could be misadministered to give users
  11660. {TOP SECRET, CONFIDENTIAL} or other such erroneous category sets (we
  11661. call them "compartments" rather than "categories").  The intent of
  11662. the strict CONFIDENTIAL, SECRET, TOP SECRET hierarchy is to rate the
  11663. relative probable level of damage to the organizational (national)
  11664. interests if the classified information were disclosed to the wrong
  11665. parties.  The intent of compartments is to enforce the additional
  11666. requirement, beyond one's rated level of trustworthiness, of having
  11667. a genuine "need to know" the information.  For example, even though
  11668. I might have a TOP SECRET security clearance, if I have not been
  11669. specially indoctrinated for access to "special intelligence" then
  11670. I am not allowed to access even CONFIDENTIAL SI material.
  11671.  
  11672. You might try to redesign such classification schemes, but these
  11673. have evolved through many decades of practical experience and seem
  11674. to be the best we've been able to devise so far.
  11675.  
  11676. Volume-Number: Volume 20, Number 114
  11677.  
  11678. From jsq@tic.com  Sun Jul  8 14:33:11 1990
  11679. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  11680.     id AA15504; Sun, 8 Jul 90 14:33:11 -0400
  11681. Posted-Date: 8 Jul 90 03:20:29 GMT
  11682. Received: by cs.utexas.edu (5.64/1.68)
  11683.     id AA25964; Sun, 8 Jul 90 13:33:08 -0500
  11684. Received: by longway.tic.com (4.22/tic.1.2)
  11685.     id AA13798; Sun, 8 Jul 90 13:34:40 cdt
  11686. From: VLD/VMB <gwyn@BRL.MIL>
  11687. Newsgroups: comp.std.unix
  11688. Subject: Re: Report on ISO POSIX meeting of June 1990
  11689. Message-Id: <801@longway.TIC.COM>
  11690. References: <796@longway.TIC.COM>
  11691. Sender: std-unix@tic.com
  11692. Reply-To: std-unix@uunet.uu.net
  11693. Date: 8 Jul 90 03:20:29 GMT
  11694. Apparently-To: std-unix-archive@uunet.uu.net
  11695.  
  11696. From:  Doug Gwyn (VLD/VMB) <gwyn@BRL.MIL>
  11697.  
  11698. [ This was originally written as a letter to Dominic, but Doug
  11699. agreed it would make a good comp.std.unix posting.  -mod ]
  11700.  
  11701. While I don't have any real problem with your use of quotations from
  11702. my net posting, I do have a couple of comments on other things you said:
  11703.  
  11704.     The ballot also produced a number of suggestions in the area
  11705.     of internationalization, such as how to handle (and indeed,
  11706.     how to refer to) wide, or multi-byte, characters.
  11707.  
  11708. For 1003.1, this is pretty straightforward.  The C requirements on such
  11709. character encodings are such that mbc strings can still be handled as
  11710. uninterpreted NUL-terminated arrays of char.  In the default "C" locale,
  11711. a certain minimum set of characters must be represented, which permits
  11712. the construction of portable filename strings.  Even in the "C" locale,
  11713. other characters are permitted, so for example a command-line argument
  11714. containing "funny characters" can be used directly as an argument to
  11715. open() etc.  I know that there are various vendor approaches that make
  11716. locales more visible to the operating system, but after all this is UNIX
  11717. we're talking about, and one of the main lessons of UNIX is that the
  11718. operating system can be designed to be happily oblivious to the uses to
  11719. which people put the information that it manages according to simple rules.
  11720.  
  11721. I first got involved in "internationalization" issues when I attended a
  11722. BOF meeting at which the "expert" who was giving the presentation was
  11723. explaining how complex the character set issues were, and when I said
  11724. that I didn't see any inherent complexity was berated for my naivety.
  11725. Years later, after studying the issues and conversing with the folks
  11726. actively working in the field, I still maintain that simple solutions
  11727. are possible.  Unfortunately, vendors such as H-P started out with
  11728. complicated schemes and have continue to think in those terms.  This
  11729. rubbed off on X3J11 when the multibyte character approach was adopted,
  11730. which has the obvious problem that anyone programming for an
  11731. international environment MUST change from traditional use of C strings
  11732. to mbc arrays in his applications.  The Japanese recognize this as an
  11733. essential feature of their "long char" proposal, which X3J11 did NOT
  11734. intend the mbc approach to be -- however, the fundamental need for
  11735. library support using any such approach has now led to the Japanese
  11736. requesting that such changes be made for the ISO C standard.  I think
  11737. the arguments I used for my alternative proposal to address these very
  11738. concerns are being borne out, in spades.
  11739.  
  11740.     Returning to the matter of the programming language used for
  11741.     bindings, it is true that AT&T-derived UNIX implementations
  11742.     prefer a diet of C data types.  However, it certainly was an
  11743.     aim of 1003.1 to allow hosted POSIX implementations, which
  11744.     might well be riding on underlying operating systems with
  11745.     entirely different tastes.
  11746.  
  11747. To the contrary, we discussed this very matter in 1003.1 and decided
  11748. that, while we did not wish to preclude layered implementations, we
  11749. would not make any compromises to accommodate them.  Very definitely
  11750. our goal was to develop standards for genuine UNIX variants, not to
  11751. provide a "Software Tools" style of Portable Operating System evironment.
  11752.  
  11753. We used the same argument when we decided that NFS was simply going to
  11754. have to be ruled non-compliant.  UNIX applications rely on certain
  11755. semantics of the file system that NFS did not properly support, and we
  11756. decided that it would be a disservice to UNIX applications to remove
  11757. the requirement that these useful semantics be preserved.
  11758.  
  11759. Volume-Number: Volume 20, Number 115
  11760.  
  11761. From jsq@tic.com  Tue Jul 10 03:35:16 1990
  11762. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  11763.     id AA13238; Tue, 10 Jul 90 03:35:16 -0400
  11764. Posted-Date: 9 Jul 90 06:22:37 GMT
  11765. Received: by cs.utexas.edu (5.64/1.68)
  11766.     id AA01402; Tue, 10 Jul 90 02:35:12 -0500
  11767. Received: by longway.tic.com (4.22/tic.1.2)
  11768.     id AA16476; Tue, 10 Jul 90 02:24:15 cdt
  11769. From: Phil Ronzone <pkr@sgi.com>
  11770. Newsgroups: comp.std.unix
  11771. Subject: Re: Standards Update, IEEE 1003.6: Security
  11772. Message-Id: <802@longway.TIC.COM>
  11773. References: <780@longway.TIC.COM> <786@longway.TIC.COM> <790@longway.TIC.COM>
  11774. Sender: std-unix@tic.com
  11775. Reply-To: std-unix@uunet.uu.net
  11776. Organization: Silicon Graphics, Inc., Mountain View, CA
  11777. Date: 9 Jul 90 06:22:37 GMT
  11778. Apparently-To: std-unix-archive@uunet.uu.net
  11779.  
  11780. From:  pkr@sgi.com (Phil Ronzone)
  11781.  
  11782. In article <790@longway.TIC.COM> sms@WLV.IMSD.CONTEL.COM (Steven M. Schultz) writes:
  11783. >    short of soldiers with M16s at a computer facility door i do not
  11784. >    believe that software is any substitute for physical security.
  11785. >    it's just one more password that has to be spread around (in
  11786. >    case the SSO or whoever) goes on vacation, etc...
  11787.  
  11788. Argument of two different fruits here.
  11789.  
  11790. As an example, we purchased an AT&T 630 (386 PC type machine) to run
  11791. AT&T SV/MLS (B1 UNIX). We had AT&T put the software on, and they set,
  11792. as is required the passwords.
  11793.  
  11794. But they forgot to tell us what the passwords were. Although we had
  11795. physical possesion of the machine, in a company that also make computers,
  11796. it would have taken us a while to "boot" the system (i.e., insecurely).
  11797.  
  11798. And we would have been able to do that ONLY because of the fact that the
  11799. machine used standard disks with "standard" UNIX filesystems and so on.
  11800.  
  11801. Whereas the same hardware with normal UNIX would have very vulnerable.
  11802.  
  11803. A safe protects your money, but if a huge helicopter steals the safe
  11804. and you have weeks to work on it, you can open it.
  11805.  
  11806.  
  11807.  
  11808. >>I disagree again -- I think the recent Internet worm is an example of why.
  11809. >
  11810. >    now it's my turn to disagree.  sheesh, why does the worm have to
  11811. >    be brought up everytime security is discussed?  it was a BUG that
  11812. >    was exploited, and i for one do not think that adding security
  11813. >    will do away with BUGs in software.  on the contrary, as the
  11814.  
  11815. Eh? That's the WHOLE point of Orange book security and the TCB concept.
  11816. Those programs would have never made it into the TCB and been able to
  11817. propagate like they did. Although it is not the best example.
  11818.  
  11819. The answer was more to WHY would someone want security. Answer is, to
  11820. control what you have your system do.
  11821. --
  11822. <---------------------------------------------------------------------------->
  11823. Philip K. Ronzone                  S e c u r e   U N I X           pkr@sgi.com
  11824. Silicon Graphics, Inc. MS 9U-500                           work (415) 335-1511
  11825. 2011 N. Shoreline Blvd., Mountain View, CA 94039            fax (415) 965-2658
  11826.  
  11827. Volume-Number: Volume 20, Number 116
  11828.  
  11829. From jsq@tic.com  Tue Jul 10 03:35:27 1990
  11830. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  11831.     id AA13267; Tue, 10 Jul 90 03:35:27 -0400
  11832. Posted-Date: 9 Jul 90 17:50:35 GMT
  11833. Received: by cs.utexas.edu (5.64/1.68)
  11834.     id AA01413; Tue, 10 Jul 90 02:35:23 -0500
  11835. Received: by longway.tic.com (4.22/tic.1.2)
  11836.     id AA16541; Tue, 10 Jul 90 02:29:35 cdt
  11837. From: John Zolnowsky ext. 33230 <johnz@grapevine.EBay.Sun.COM>
  11838. Newsgroups: comp.std.unix
  11839. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  11840. Summary: _POSIX_n_SOURCE, a source of confusion?
  11841. Message-Id: <803@longway.TIC.COM>
  11842. References: <385@usenix.ORG>
  11843. Sender: std-unix@tic.com
  11844. Reply-To: std-unix@uunet.uu.net
  11845. Organization: Sun Microsystems, Inc. - Mtn View, CA
  11846. Date: 9 Jul 90 17:50:35 GMT
  11847. Apparently-To: std-unix-archive@uunet.uu.net
  11848.  
  11849. From:  johnz@grapevine.EBay.Sun.COM (John Zolnowsky ext. 33230)
  11850.  
  11851. In article <385@usenix.ORG>, jsh@usenix.org writes:
  11852. > Paul Rabin <rabin@osf.org> reports on the April 23-27 meeting in Salt
  11853. > Lake City, UT:
  11854. > 3.3  Headers and Name-Space Control
  11855. > A new feature-test macro will be specified by 1003.1b and subsequent
  11856. > revisions: _POSIX_1_SOURCE.  This macro takes ordinal values, starting
  11857. > with 2 for 1003.1b, and will be incremented by 1 for every subsequent
  11858. > revision.  If the value is 1, the effect will be the same as if
  11859. > _POSIX_SOURCE were defined.
  11860. > There are two changes here.  The new name was used to indicate that
  11861. > the macro only controls the visibility of identifiers defined in
  11862. > POSIX.1.  The usage was changed to allow the value to indicate the
  11863. > particular revision or supplement to the standard, rather than having
  11864. > to create a new macro each time.  This should simplify the
  11865. > construction and maintenance of header files.
  11866.  
  11867. I recognize that programs must have some way of freezing the
  11868. ever-growing POSIX namespace, but I have reservations about the
  11869. approach implicit in the name _POSIX_1_SOURCE.
  11870.  
  11871. I suspect that the "1" in _POSIX_n_SOURCE refers to 1003.1, as a
  11872. working group or a standard.  This creates a strictly historical
  11873. binding between a function name and the working group which first
  11874. needed to define an interface, and this binding will be perpetuated in
  11875. code.  As an example, imagine the goobledeegook when multi-threaded
  11876. network servers must tree-walk and want to be cognizant of symlinks.
  11877.  
  11878. Since it is planned that all these standards will be unified under the
  11879. umbrella of ISO 9945-1 (or whatever future number the C-binding appears
  11880. unders) it would seem more prudent to have a single feature-test macro,
  11881. such as _POSIX_C_SOURCE, for which for increasing values expose the
  11882. entire POSIX function namespace in historical order.  This would place
  11883. no further requirements upon implementations.  Applications would be
  11884. affected only when being modified to use POSIX extensions:  they would
  11885. then have to honor not only the namespace reservation of the extension,
  11886. but of all of POSIX at the time the extension was standardized.  Note
  11887. that this requirement already exists for any other interfaces added by
  11888. the working group which added the extension.
  11889.  
  11890. -John Zolnowsky         johnz@EBay.Sun.COM              (408)276-3230
  11891.  
  11892. Volume-Number: Volume 20, Number 117
  11893.  
  11894. From jsq@tic.com  Tue Jul 10 04:51:06 1990
  11895. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  11896.     id AA01812; Tue, 10 Jul 90 04:51:06 -0400
  11897. Posted-Date: 9 Jul 90 19:01:29 GMT
  11898. Received: by cs.utexas.edu (5.64/1.68)
  11899.     id AA05035; Tue, 10 Jul 90 03:51:02 -0500
  11900. Received: by longway.tic.com (4.22/tic.1.2)
  11901.     id AA17087; Tue, 10 Jul 90 03:36:22 cdt
  11902. From: David Dick <drd@siia.MV.COM>
  11903. Newsgroups: comp.std.unix
  11904. Subject: Re: portability of tar tapes
  11905. Message-Id: <804@longway.TIC.COM>
  11906. References: <792@longway.TIC.COM>
  11907. Sender: std-unix@tic.com
  11908. Reply-To: std-unix@uunet.uu.net
  11909. Date: 9 Jul 90 19:01:29 GMT
  11910. Apparently-To: std-unix-archive@uunet.uu.net
  11911.  
  11912. From:  drd@siia.MV.COM (David Dick)
  11913.  
  11914. >From: cazier@mbunix.mitre.org (Cazier)
  11915. >How portable are tar tapes from one machine to another. My experience
  11916. >has been that tar within a vendor's site is portable but to try to
  11917. >carry a tar 1/4" tape from one vendor to another --- that's another story.
  11918.  
  11919. The trouble with 1/4 inch tapes is not tar format, but format
  11920. of recording data on the tape: there are QIC-11, QIC-24, and QIC-150
  11921. (and maybe others).  I'm not even sure that having QIC-11 or QIC-24 
  11922. is even sufficient.  However, I suspect all the QIC-150s are the same.
  11923.  
  11924. David Dick
  11925. Software Innovations, Inc. [the Software Moving Company (sm)]
  11926.  
  11927. Volume-Number: Volume 20, Number 118
  11928.  
  11929. From uucp@tic.com  Thu Jul 12 08:13:12 1990
  11930. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  11931.     id AA07313; Thu, 12 Jul 90 08:13:12 -0400
  11932. Posted-Date: 10 Jul 90 15:13:29 GMT
  11933. Received: by cs.utexas.edu (5.64/1.68)
  11934.     id AA19054; Wed, 11 Jul 90 19:30:10 -0500
  11935. Received: by longway.tic.com (4.22/tic.1.2)
  11936.     id AA19012; Wed, 11 Jul 90 17:41:57 cdt
  11937. From: Jason Zions <jason@cnd.hp.com>
  11938. Newsgroups: comp.std.unix
  11939. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  11940. Message-Id: <9951@cs.utexas.edu>
  11941. Sender: jbc@cs.utexas.edu
  11942. Reply-To: std-unix@uunet.uu.net
  11943. Organization: Hewlett Packard, Information Networks Group
  11944. Date: 10 Jul 90 15:13:29 GMT
  11945. Apparently-To: std-unix-archive@uunet.uu.net
  11946.  
  11947. From:  Jason Zions <jason@cnd.hp.com>
  11948.  
  11949. > Since it is planned that all these standards will be unified under the
  11950. > umbrella of ISO 9945-1 (or whatever future number the C-binding appears
  11951. > unders) it would seem more prudent to have a single feature-test macro,
  11952. > such as _POSIX_C_SOURCE, for which for increasing values expose the
  11953. > entire POSIX function namespace in historical order.  This would place
  11954. > no further requirements upon implementations.  Applications would be
  11955. > affected only when being modified to use POSIX extensions:  they would
  11956. > then have to honor not only the namespace reservation of the extension,
  11957. > but of all of POSIX at the time the extension was standardized.  Note
  11958. > that this requirement already exists for any other interfaces added by
  11959. > the working group which added the extension.
  11960.  
  11961. This makes the assumption that there is indeed a single POSIX name space,
  11962. to which pieces are added by the various working groups. This assumption,
  11963. while a reasonable one, is in fact not correct.
  11964.  
  11965. The various 1003.* working groups are *not* developing separate components
  11966. of an overall, integrated POSIX standard. Each POSIX standard stands alone
  11967. from all other POSIX standards *except* where that standard deliberately
  11968. requires dependencies. For example, 1003.2 is intended to be implementable
  11969. on systems which do not offer a 1003.1-compliant interface. So, a
  11970. strictly-compliant 1003.2 application *could not* assume the presence of
  11971. 1003.1 symbols et al., and would be permitted to make use of names
  11972. otherwise reserved to 1003.1. Hence, there needs to be a separate
  11973. feature-test macro to activate the 1003.2 name space etc.
  11974.  
  11975. Worse yet, it appears that one of the POSIX Real Time Profiles may very
  11976. well require only a subset of 1003.1; how on earth does one represent
  11977. *that* using the _POSIX_C_SOURCE scheme?
  11978.  
  11979. Jason Zions
  11980.  
  11981.  
  11982. Volume-Number: Volume 20, Number 119
  11983.  
  11984. From uucp@tic.com  Thu Jul 12 07:43:04 1990
  11985. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  11986.     id AA01039; Thu, 12 Jul 90 07:43:04 -0400
  11987. Posted-Date: 10 Jul 90 15:43:41 GMT
  11988. Received: by cs.utexas.edu (5.64/1.68)
  11989.     id AA19065; Wed, 11 Jul 90 19:30:21 -0500
  11990. Received: by longway.tic.com (4.22/tic.1.2)
  11991.     id AA19031; Wed, 11 Jul 90 17:42:40 cdt
  11992. From: peter da silva <peter@ficc.ferranti.com>
  11993. Newsgroups: comp.std.unix
  11994. Subject: Re: Standards Update, IEEE 1003.6: Security
  11995. Message-Id: <9952@cs.utexas.edu>
  11996. References: <780@longway.TIC.COM> <786@longway.TIC.COM> <790@longway.TIC.COM> <802@longway.TIC.COM>
  11997. Sender: jbc@cs.utexas.edu
  11998. Reply-To: peter@ficc.ferranti.com (Peter da Silva)
  11999. Organization: Xenix Support, FICC
  12000. Date: 10 Jul 90 15:43:41 GMT
  12001. Apparently-To: std-unix-archive@uunet.uu.net
  12002.  
  12003. From:  peter@ficc.ferranti.com (peter da silva)
  12004.  
  12005. In article <802@longway.TIC.COM> pkr@sgi.com (Phil Ronzone) writes:
  12006. [had a B1 UNIX box]
  12007. > But they forgot to tell us what the passwords were. Although we had
  12008. > physical possesion of the machine, in a company that also make computers,
  12009. > it would have taken us a while to "boot" the system (i.e., insecurely).
  12010.  
  12011. And if you needed to use the machine, you would have been out of luck.
  12012.  
  12013. For some people that level of security has a negative value. It's that
  12014. simple. It's not like we're saying "we want all UNIX systems to be
  12015. insecure", we're saying "we don't want all UNIX systems to come with
  12016. that level of security". Can't you see the difference?
  12017. -- 
  12018. Peter da Silva.   `-_-'
  12019. +1 713 274 5180.
  12020. <peter@ficc.ferranti.com>
  12021.  
  12022.  
  12023.  
  12024. Volume-Number: Volume 20, Number 120
  12025.  
  12026. From uucp@tic.com  Fri Jul 13 02:24:58 1990
  12027. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12028.     id AA15244; Fri, 13 Jul 90 02:24:58 -0400
  12029. Posted-Date: 12 Jul 90 03:27:28 GMT
  12030. Received: by cs.utexas.edu (5.64/1.68)
  12031.     id AA21731; Fri, 13 Jul 90 00:34:40 -0500
  12032. Received: by longway.tic.com (4.22/tic.1.2)
  12033.     id AA20104; Thu, 12 Jul 90 20:17:08 cdt
  12034. From: John Michael Sovereign <jms@apple.com>
  12035. Newsgroups: comp.std.unix
  12036. Subject: Re: _POSIX_1_SOURCE (was: Standards Update, IEEE 1003.1: System services)interface
  12037. Message-Id: <9997@cs.utexas.edu>
  12038. References: <9951@cs.utexas.edu>
  12039. Sender: jbc@cs.utexas.edu
  12040. Reply-To: std-unix@uunet.uu.net
  12041. Organization: Apple Computer
  12042. Date: 12 Jul 90 03:27:28 GMT
  12043. Apparently-To: std-unix-archive@uunet.uu.net
  12044.  
  12045. From:  jms@apple.com (John Michael Sovereign)
  12046.  
  12047.  
  12048. In article <9951@cs.utexas.edu> jason@cnd.hp.com (Jason Zions) writes:
  12049.  
  12050. > This makes the assumption that there is indeed a single POSIX name space,
  12051. > to which pieces are added by the various working groups. This assumption,
  12052. > while a reasonable one, is in fact not correct.
  12053.  
  12054. There is, however, a single C language name space which new standards (and 
  12055. revisions)
  12056. pollute as long as they continue to use header files already defined by 
  12057. ANSI C and/or POSIX.1
  12058. (as I believe Doug Gwyn pointed out recently).
  12059.  
  12060. > The various 1003.* working groups are *not* developing separate 
  12061. components
  12062. > of an overall, integrated POSIX standard. Each POSIX standard stands 
  12063. alone....
  12064.  
  12065. >From what I've heard, there HAS been discussion at the ISO level of 
  12066. bundling the C language
  12067. interfaces of POSIX.2 and/or POSIX.4 into future versions of 9945-1.  
  12068. Unfortunately, a decision on this matter might be delayed until after the 
  12069. IEEE standards have been adopted....
  12070.  
  12071. As far as _POSIX_1_SOURCE goes, it's not clear to me why the existing 
  12072. _POSIX_SOURCE
  12073. can't be used (perhaps modified) for this purpose.
  12074.  
  12075. John Sovereign
  12076. jms@apple.com
  12077. "Perhaps software developers should face the same legal support 
  12078. requirements as parents."
  12079.  
  12080.  
  12081. Volume-Number: Volume 20, Number 121
  12082.  
  12083. From uucp@tic.com  Fri Jul 13 11:07:05 1990
  12084. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12085.     id AA25188; Fri, 13 Jul 90 11:07:05 -0400
  12086. Posted-Date: 11 Jul 90 21:33:56 GMT
  12087. Received: by cs.utexas.edu (5.64/1.68)
  12088.     id AA21771; Fri, 13 Jul 90 00:34:51 -0500
  12089. Received: by longway.tic.com (4.22/tic.1.2)
  12090.     id AA20123; Thu, 12 Jul 90 20:17:56 cdt
  12091. From: Dave Decot <decot@hpisod2.cup.hp.com>
  12092. Newsgroups: comp.std.unix
  12093. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  12094. Message-Id: <9998@cs.utexas.edu>
  12095. References: <385@usenix.ORG>
  12096. Sender: jbc@cs.utexas.edu
  12097. Reply-To: std-unix@uunet.uu.net
  12098. Organization: Hewlett Packard, Cupertino
  12099. Date: 11 Jul 90 21:33:56 GMT
  12100. Apparently-To: std-unix-archive@uunet.uu.net
  12101.  
  12102. From:  decot@hpisod2.cup.hp.com (Dave Decot)
  12103.  
  12104.  
  12105. > 2.  1003.1a Status
  12106. > 1003.1a is the recently completed revision to the 1988 POSIX standard.
  12107. > No new interfaces or features were introduced, but the text was
  12108. > revised in several ways.  The main reason for the revision was to
  12109.  
  12110. This is not technically true.
  12111.  
  12112. The following new features were added by POSIX.1a:
  12113.  
  12114.     ssize_t - signed version of the size_t type
  12115.     SSIZE_MAX - constant representing maximum value of ssize_t
  12116.     TZNAME_MAX - constant representing maximum length of a timezone name
  12117.     _SC_TZNAME_MAX - sysconf() variable argument for TZNAME_MAX
  12118.     POSIX_TZNAME_MAX - minimum value of TZNAME_MAX on POSIX.1a systems (it's 3)
  12119.  
  12120. The following features were deleted (but are still permitted):
  12121.  
  12122.     cuserid() - definition conflicted with most existing practice
  12123.     CLK_TCK - non-existent definition imported from ANSI C standard
  12124.  
  12125. The following interfaces were changed:
  12126.     ssize_t read(int fildes, void *buf, size_t count);
  12127.     ssize_t write(int fildes, const void *buf, size_t count);
  12128.  
  12129. > The discussion of [the setegid(), etc.] proposal led to a general
  12130. > lament about how unclear the group model is in the 1988 POSIX standard,
  12131. > perhaps the result of a hasty marriage between the System V and BSD models.
  12132. > At the next meeting, the working group intends to add new text to
  12133. > P1003.1b to clarify the relation between the effective group ID and
  12134. > the supplementary group list.
  12135.  
  12136. It seemed rather clear to me.  "Whether the effective group ID is
  12137. included in or omitted from the list of supplementary group IDs is
  12138. implementation-defined."  In all cases when checking permission to
  12139. access something, both the effective group ID and the list of supplementary
  12140. group IDs should be compared to the group of the object in question; if
  12141. either matches, the access should be granted.
  12142.  
  12143. What were the unclarities that were identified?
  12144.  
  12145. Dave Decot
  12146.  
  12147.  
  12148. Volume-Number: Volume 20, Number 122
  12149.  
  12150. From uucp@tic.com  Fri Jul 13 10:21:51 1990
  12151. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12152.     id AA14201; Fri, 13 Jul 90 10:21:51 -0400
  12153. Posted-Date: 12 Jul 90 11:36:58 GMT
  12154. Received: by cs.utexas.edu (5.64/1.68)
  12155.     id AA23079; Fri, 13 Jul 90 00:41:15 -0500
  12156. Received: by longway.tic.com (4.22/tic.1.2)
  12157.     id AA20143; Thu, 12 Jul 90 20:18:39 cdt
  12158. From: Dominic Dunlop <domo@tsa.co.uk>
  12159. Newsgroups: comp.std.unix
  12160. Subject: Re: Report on ISO POSIX meeting of June 1990
  12161. Message-Id: <9999@cs.utexas.edu>
  12162. References: <796@longway.TIC.COM>
  12163. Sender: jbc@cs.utexas.edu
  12164. Reply-To: domo@tsa.co.uk
  12165. Organization: The Standard Answer Ltd.
  12166. Date: 12 Jul 90 11:36:58 GMT
  12167. Apparently-To: std-unix-archive@uunet.uu.net
  12168.  
  12169. From:  Dominic Dunlop <domo@tsa.co.uk>
  12170.  
  12171.  
  12172. In article <796@longway.TIC.COM> Dominic Dunlop <domo@tsa.co.uk>
  12173. (that's me) writes of the forthcoming IS 9945-1 (POSIX operating system
  12174. interface):
  12175.  
  12176. >     Its technical content will be identical to that of
  12177. >     ANSI/IEEE Std. 1003.1:1988, so implementors following
  12178. >     the U.S. standard can be assured of ISO compliance when
  12179. >     9945-1 finally sees the light of day.
  12180.  
  12181. I also say the same thing later:
  12182.  
  12183. >Where all does this leave us?  With no published
  12184. >international standard as yet, but with a very good prospect
  12185. >of having one this year.  Until it arrives, keep using the
  12186. >bilious green book, IEEE std. 1003.1:1988, as its technical
  12187. >content is identical to that of the eventual ISO standard.
  12188.  
  12189. A couple of people have pointed out to me that this ain't strictly so:
  12190. a few small changes have crept in.  If you say ``almost identical'', you're
  12191. more correct -- if a little more worried.  This year's revision of 1003.1
  12192. will bring it exactly into line with the eventual ISO standard.
  12193.  
  12194. I have asked the respondents to make postings to this group summarizing
  12195. the technical differences between the published ANSI/IEEE standard, and
  12196. the ANSI/IEEE and ISO standards expected to be published later this
  12197. year.  (Thanks in advance.)
  12198. -- 
  12199. Dominic Dunlop
  12200.  
  12201.  
  12202.  
  12203. Volume-Number: Volume 20, Number 123
  12204.  
  12205. From uucp@tic.com  Sat Jul 14 04:48:29 1990
  12206. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12207.     id AA05485; Sat, 14 Jul 90 04:48:29 -0400
  12208. Posted-Date: 13 Jul 90 21:07:17 GMT
  12209. Received: by cs.utexas.edu (5.64/1.68)
  12210.     id AA14426; Sat, 14 Jul 90 01:05:53 -0500
  12211. Received: by longway.tic.com (4.22/tic.1.2)
  12212.     id AA21275; Fri, 13 Jul 90 23:54:37 cdt
  12213. From: <mindcrf!karish@cs.utexas.edu>
  12214. Newsgroups: comp.std.unix
  12215. Subject: Re: _POSIX_1_SOURCE (was: Standards Update, IEEE 1003.1: System services)interface
  12216. Summary: Say NO to feature test macro proliferation
  12217. Message-Id: <10059@cs.utexas.edu>
  12218. References: <9951@cs.utexas.edu> <9997@cs.utexas.edu>
  12219. Sender: jbc@cs.utexas.edu
  12220. Reply-To: std-unix@uunet.uu.net
  12221. Organization: Mindcraft, Inc.
  12222. Date: 13 Jul 90 21:07:17 GMT
  12223. Apparently-To: std-unix-archive@uunet.uu.net
  12224.  
  12225. From:  karish@mindcrf.uucp
  12226.  
  12227.  
  12228. In article <9997@cs.utexas.edu> std-unix@uunet.uu.net writes:
  12229. >From:  jms@apple.com (John Michael Sovereign)
  12230. >In article <9951@cs.utexas.edu> jason@cnd.hp.com (Jason Zions) writes:
  12231. >
  12232. >> This makes the assumption that there is indeed a single POSIX name space,
  12233. >> to which pieces are added by the various working groups. This assumption,
  12234. >> while a reasonable one, is in fact not correct.
  12235. >
  12236. >There is, however, a single C language name space which new standards (and 
  12237. >revisions)
  12238. >pollute as long as they continue to use header files already defined by 
  12239. >ANSI C and/or POSIX.1
  12240. >(as I believe Doug Gwyn pointed out recently).
  12241.  
  12242. >From the 1003.1 standard, 2.8.2:
  12243.  
  12244.     Symbols called `feature test macros' are used to control the
  12245.     visibility of symbols that might be included in a header.
  12246.     Implementations, future versions of this standard, and other
  12247.     standards may define additional feature test macros.
  12248.  
  12249. My interpretation of this text is that the 1003.1 committee wanted to
  12250. provide a mechanism by which a number of standards and implementations
  12251. could share the C namespace.  Of course, extended use of this mechanism
  12252. is up to the other standards committees and implementors, and is
  12253. outside the scope of 1003.1.  Perhaps this is an issue that Dot 0
  12254. could help clear up.
  12255.  
  12256. >> The various 1003.* working groups are *not* developing separate 
  12257. >components
  12258. >> of an overall, integrated POSIX standard. Each POSIX standard stands 
  12259. >alone....
  12260.  
  12261. Which makes it essential that each standard specify what it assumes
  12262. is available from its host, and what it will add to the composite
  12263. environment.  While each standard may stand alone, implementations
  12264. certainly won't.
  12265.  
  12266. >As far as _POSIX_1_SOURCE goes, it's not clear to me why the existing 
  12267. >_POSIX_SOURCE
  12268. >can't be used (perhaps modified) for this purpose.
  12269.  
  12270. Because, unlike __STDC__, _POSIX_SOURCE is #defined or not #defined;
  12271. its value is not significant.  The implication of the suggestion to use
  12272. _POSIX_1_SOURCE for 1003.1a-conforming headers is that the 1003.1
  12273. committee is reserving for its own use all feature test macro names
  12274. that start with _POSIX_.  This means that the 1003.2 committee will be
  12275. on shaky ground if they require that programmers #define
  12276. _POSIX_2_SOURCE in order to make 1003.2 symbols visible.
  12277.  
  12278. The approach chosen by the ANSI C committee was a good one:  Use a single
  12279. name for the feature test macro, and change the macro's VALUE when a
  12280. new version of the standard supersedes an old one.
  12281. -- 
  12282.  
  12283.     Chuck Karish        karish@mindcraft.com
  12284.     Mindcraft, Inc.        (415) 323-9000        
  12285.  
  12286.  
  12287. Volume-Number: Volume 20, Number 124
  12288.  
  12289. From uucp@tic.com  Sat Jul 14 04:39:39 1990
  12290. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12291.     id AA03158; Sat, 14 Jul 90 04:39:39 -0400
  12292. Posted-Date: 12 Jul 90 23:23:25 GMT
  12293. Received: by cs.utexas.edu (5.64/1.68)
  12294.     id AA14484; Sat, 14 Jul 90 01:06:03 -0500
  12295. Received: by longway.tic.com (4.22/tic.1.2)
  12296.     id AA21293; Fri, 13 Jul 90 23:55:25 cdt
  12297. From: <news@ira.uka.de>
  12298. Newsgroups: comp.std.unix
  12299. Subject: Re: Standards Update, IEEE 1003.1: System services interface / TAPES
  12300. Message-Id: <10060@cs.utexas.edu>
  12301. References: <767@longway.TIC.COM> <770@longway.TIC.COM> <781@longway.TIC.COM>
  12302. Sender: jbc@cs.utexas.edu
  12303. Reply-To: std-unix@uunet.uu.net
  12304. Organization: FZI Forschungszentrum Informatik, Karlsruhe, West-Germany
  12305. Date: 12 Jul 90 23:23:25 GMT
  12306. Apparently-To: std-unix-archive@uunet.uu.net
  12307.  
  12308. From:  news@ira.uka.de
  12309.  
  12310. --- archives and tapes ---
  12311.  
  12312. First, I have to admit that I haven't read the latest standard's version,
  12313. but I do have strong feelings about data archives and transport.
  12314.  
  12315. Both tar and cpio are highly deficient for properly moving information
  12316. out and in. The first blunder of all is the limited format that does not
  12317. take care of long file names. There is a NAMSIZ parameter, so for heaven's
  12318. sake reserve sufficient space in the file descriptor of such a transport
  12319. archive! That's so fundamental that I will only talk about one other equally
  12320. nasty point about these formats, missing archive and volume labelling.
  12321.  
  12322. Next, you have to realize that both tar and cpio already do arrange data
  12323. in suitable chunks for transfer ('tar' reads 'tape archive'!). There is
  12324. no reason in the world why an ANSI tape file shall not be the envelope
  12325. for a UNIX-type archive. On the contrary, this will finally, after all
  12326. these years offer data labelling, both on the archive and on the tape
  12327. volumes. It is unbelievable that today, 1990, i have to look at a piece of
  12328. paper with my tar tape, which tells me about a number of archives on the
  12329. same medium and their position. Additionally, the ANSI tar standard
  12330. provides multi-volume data sets, so yet another stumbling stone can be
  12331. forgotten, if we only wrap tar' and cpio' archives in ANSI tape structures
  12332. (where tar' and cpio' are improved versions of tar and cpio).
  12333.  
  12334. Then, a point often forgotten: There is a real need to select, duplicate,
  12335. store data from some external medium (tape) on a different type of machine
  12336. than the one the tape is written on / to be read.  The proposal above will
  12337. make that an easy and safe operation, what cannot be claimed today. (Today,
  12338. ypou just have to have a guru around who knows alls kinds of different
  12339. machines and how they mix).
  12340.  
  12341. Finally: Yes, we do move archives across networks, but for most substantial
  12342. transfers of data in and out of our machines there is no adequate replacement
  12343. for sequential magnetic media. Posix has to take that into account, or we
  12344. will be burdened with those problems of today.
  12345.  
  12346. Karl Kleine
  12347. FZI Forschungszentrum Informatik, Karlsruhe, West-Germany;  kleine@fzi.uka.de
  12348.  
  12349.  
  12350.  
  12351. Volume-Number: Volume 20, Number 125
  12352.  
  12353. From uucp@tic.com  Sat Jul 14 04:26:51 1990
  12354. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12355.     id AA29533; Sat, 14 Jul 90 04:26:51 -0400
  12356. Posted-Date: 12 Jul 90 21:07:17 GMT
  12357. Received: by cs.utexas.edu (5.64/1.68)
  12358.     id AA14553; Sat, 14 Jul 90 01:06:16 -0500
  12359. Received: by longway.tic.com (4.22/tic.1.2)
  12360.     id AA21312; Fri, 13 Jul 90 23:56:04 cdt
  12361. From: Doug Gwyn <gwyn@smoke.brl.mil>
  12362. Newsgroups: comp.std.unix
  12363. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  12364. Message-Id: <10061@cs.utexas.edu>
  12365. References: <9951@cs.utexas.edu>
  12366. Sender: jbc@cs.utexas.edu
  12367. Reply-To: std-unix@uunet.uu.net
  12368. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  12369. Date: 12 Jul 90 21:07:17 GMT
  12370. Apparently-To: std-unix-archive@uunet.uu.net
  12371.  
  12372. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  12373.  
  12374.  
  12375. In article <9951@cs.utexas.edu> std-unix@uunet.uu.net writes:
  12376. >From:  Jason Zions <jason@cnd.hp.com>
  12377. >Worse yet, it appears that one of the POSIX Real Time Profiles may very
  12378. >well require only a subset of 1003.1; how on earth does one represent
  12379. >*that* using the _POSIX_C_SOURCE scheme?
  12380.  
  12381. Shouldn't 1003.0 step in here and exert some coordination?
  12382. 1003.1 was deliberately not split into "levels" a la COBOL,
  12383. and we meant it.  A Real-Time extension could very well exist
  12384. (say, number 1003.123a) and not require that 1003.1 be specified,
  12385. but be useless in the absence of some subset of 1003.1 or equivalent,
  12386. just as a hosted C implementation on UNIX does not specify that
  12387. open() exist, but secretly requires a function with similar
  12388. properties in order to be implemented at all.  If the problem is
  12389. that the extension wants to contradict some of 1003.1, then it is
  12390. an INCOMPATIBLE standard (i.e. one could not specify simultaneous
  12391. conformance with 1003.1 and 1003.123a), and I thought that standards
  12392. organizations prohibited that.
  12393.  
  12394.  
  12395. Volume-Number: Volume 20, Number 126
  12396.  
  12397. From uucp@tic.com  Sat Jul 14 16:28:31 1990
  12398. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12399.     id AA05481; Sat, 14 Jul 90 16:28:31 -0400
  12400. Posted-Date: 13 Jul 90 04:42:15 GMT
  12401. Received: by cs.utexas.edu (5.64/1.68)
  12402.     id AA02215; Sat, 14 Jul 90 15:28:27 -0500
  12403. Received: by longway.tic.com (4.22/tic.1.2)
  12404.     id AA21994; Sat, 14 Jul 90 15:43:12 cdt
  12405. From: Norbert Schlenker <nfs@Princeton.EDU>
  12406. Newsgroups: comp.std.unix
  12407. Subject: How does one criticize P1003.2?
  12408. Message-Id: <10086@cs.utexas.edu>
  12409. Sender: jbc@cs.utexas.edu
  12410. Reply-To: std-unix@uunet.uu.net
  12411. Date: 13 Jul 90 04:42:15 GMT
  12412. Apparently-To: std-unix-archive@uunet.uu.net
  12413.  
  12414. From:  Norbert Schlenker <nfs@Princeton.EDU>
  12415.  
  12416. In the mail today, I received a short excerpt out of draft 9 of the
  12417. P1003.2 (proposed) standard.  Taking a look at a random page, I came
  12418. across the description of fold(1).  It's hardly an important utility,
  12419. but it is at least non-trivial.  Thinking a little about how it
  12420. could be implemented, I quickly decided that it cannot be done
  12421. correctly on machines with finite amounts of memory, because of an
  12422. error in specification (details on request).
  12423.  
  12424. As I don't have the entire draft, I don't know how to register an
  12425. objection -- or at least a request for clarification.  Could someone
  12426. tell me how I can do this?
  12427.  
  12428. Norbert
  12429.  
  12430. P.S.  I hope the fold specification is not indicative of the rest of
  12431.       the standard.
  12432.  
  12433.  
  12434. Volume-Number: Volume 20, Number 127
  12435.  
  12436. From uucp@tic.com  Sun Jul 15 19:33:52 1990
  12437. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12438.     id AA08081; Sun, 15 Jul 90 19:33:52 -0400
  12439. Posted-Date: 14 Jul 90 23:27:34 GMT
  12440. Received: by cs.utexas.edu (5.64/1.68)
  12441.     id AA00999; Sun, 15 Jul 90 18:33:50 -0500
  12442. Received: by longway.tic.com (4.22/tic.1.2)
  12443.     id AA22977; Sun, 15 Jul 90 16:55:13 cdt
  12444. From: Guy Harris <auspex!guy@cs.utexas.edu>
  12445. Newsgroups: comp.std.unix
  12446. Subject: Re: Standards Update, IEEE 1003.1: System services interface / TAPES
  12447. Message-Id: <10113@cs.utexas.edu>
  12448. References: <770@longway.TIC.COM> <781@longway.TIC.COM> <10060@cs.utexas.edu>
  12449. Sender: jbc@cs.utexas.edu
  12450. Reply-To: std-unix@uunet.uu.net
  12451. Organization: Auspex Systems, Santa Clara
  12452. Date: 14 Jul 90 23:27:34 GMT
  12453. Apparently-To: std-unix-archive@uunet.uu.net
  12454.  
  12455. From:  guy@auspex.uucp (Guy Harris)
  12456.  
  12457.  
  12458. >Then, a point often forgotten: There is a real need to select, duplicate,
  12459. >store data from some external medium (tape) on a different type of machine
  12460. >than the one the tape is written on / to be read.  The proposal above will
  12461. >make that an easy and safe operation,
  12462.  
  12463. Really?  The proposal above will deal with moving stuff from a machine
  12464. with a QIC-150-type 1/4" tape drive that can't write QIC-24 tapes to a
  12465. machine with a QIC-24-type 1/4" tape drive that can't read QIC-150 or
  12466. QIC-120 tapes?  Neat trick!
  12467.  
  12468. >what cannot be claimed today. (Today, ypou just have to have a guru
  12469. >around who knows alls kinds of different machines and how they mix).
  12470.  
  12471. "The proposal above" seems to be "put a 'tar' or 'cpio' archive as one
  12472. file within an ANSI-labelled tape."  I fail to see how that makes things
  12473. any better; if the problems are with variations between "cpio" and "tar"
  12474. formats on different machines, wrapping ANSI labels around the "tar" or
  12475. "cpio" data doesn't seem to make things any better.
  12476.  
  12477. If the *real* fix is in the "tar'" and "cpio'" formats you list, what do
  12478. the ANSI labels buy you other than multi-volume support?
  12479.  
  12480. >Finally: Yes, we do move archives across networks, but for most substantial
  12481. >transfers of data in and out of our machines there is no adequate replacement
  12482. >for sequential magnetic media.
  12483.  
  12484. By "data" do you mean "data as opposed to programs"?  If not, do any of
  12485. the folks who have retrieved, say, the X11 source via FTP or UUCP have
  12486. any comments on the above claim? I sucked the entire X11R3 distribution
  12487. to our site via UUCP; I would have done the same with the X11R4 format,
  12488. except that somebody already had it and offered to put it on 1/4" tapes
  12489. - fortunately, a 1/4" format we can read; they put it on a "tar" tape,
  12490. though, so ANSI tape labels contributed nothing.... 
  12491.  
  12492. I suspect the amount of software moved into our site via UUCP is at
  12493. least a significant fraction of the amount of software moved into our
  12494. site via magtapes.
  12495.  
  12496.  
  12497. Volume-Number: Volume 20, Number 128
  12498.  
  12499. From uucp@tic.com  Sun Jul 15 19:34:03 1990
  12500. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12501.     id AA08198; Sun, 15 Jul 90 19:34:03 -0400
  12502. Posted-Date: 15 Jul 90 01:52:16 GMT
  12503. Received: by cs.utexas.edu (5.64/1.68)
  12504.     id AA01006; Sun, 15 Jul 90 18:34:01 -0500
  12505. Received: by longway.tic.com (4.22/tic.1.2)
  12506.     id AA22997; Sun, 15 Jul 90 16:55:54 cdt
  12507. From: Sean Fagan <seanf@sco.COM>
  12508. Newsgroups: comp.std.unix
  12509. Subject: Re: Standards Update, IEEE 1003.6: Security
  12510. Message-Id: <10114@cs.utexas.edu>
  12511. References: <780@longway.TIC.COM> <786@longway.TIC.COM> <790@longway.TIC.COM> <802@longway.TIC.COM>
  12512. Sender: jbc@cs.utexas.edu
  12513. Reply-To: seanf@sco.COM (Sean Fagan)
  12514. Organization: The Santa Cruz Operation, Inc.
  12515. Date: 15 Jul 90 01:52:16 GMT
  12516. Apparently-To: std-unix-archive@uunet.uu.net
  12517.  
  12518. From:  seanf@sco.COM (Sean Fagan)
  12519.  
  12520. In article <802@longway.TIC.COM> std-unix@uunet.uu.net writes:
  12521. >As an example, we purchased an AT&T 630 (386 PC type machine) to run
  12522. >AT&T SV/MLS (B1 UNIX). We had AT&T put the software on, and they set,
  12523. >as is required the passwords.
  12524. >
  12525. >Whereas the same hardware with normal UNIX would have very vulnerable.
  12526.  
  12527. Do you honestly believe that, short of encrypting the data on the disk, 
  12528. sufficient security is going to keep your data "safe" if your machine is
  12529. (physicially) compromised?
  12530.  
  12531. Uh-huh.
  12532. -- 
  12533. -----------------+
  12534. Sean Eric Fagan  | "Just think, IBM and DEC in the same room, 
  12535. seanf@sco.COM    |      and we did it."
  12536. uunet!sco!seanf  |         -- Ken Thompson, quoted by Dennis Ritchie
  12537.  
  12538.  
  12539.  
  12540.  
  12541. Volume-Number: Volume 20, Number 129
  12542.  
  12543. From uucp@tic.com  Sun Jul 15 19:34:10 1990
  12544. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12545.     id AA08257; Sun, 15 Jul 90 19:34:10 -0400
  12546. Posted-Date: 14 Jul 90 19:15:16 GMT
  12547. Received: by cs.utexas.edu (5.64/1.68)
  12548.     id AA01022; Sun, 15 Jul 90 18:34:08 -0500
  12549. Received: by longway.tic.com (4.22/tic.1.2)
  12550.     id AA23015; Sun, 15 Jul 90 16:56:30 cdt
  12551. From: Doug Gwyn <gwyn@smoke.brl.mil>
  12552. Newsgroups: comp.std.unix
  12553. Subject: Re: Standards Update, IEEE 1003.1: System services interface
  12554. Message-Id: <10115@cs.utexas.edu>
  12555. References: <385@usenix.ORG> <9998@cs.utexas.edu>
  12556. Sender: jbc@cs.utexas.edu
  12557. Reply-To: std-unix@uunet.uu.net
  12558. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  12559. Date: 14 Jul 90 19:15:16 GMT
  12560. Apparently-To: std-unix-archive@uunet.uu.net
  12561.  
  12562. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  12563.  
  12564.  
  12565. In article <9998@cs.utexas.edu> std-unix@uunet.uu.net writes:
  12566. >From:  decot@hpisod2.cup.hp.com (Dave Decot)
  12567. >The following features were deleted (but are still permitted):
  12568. >    CLK_TCK - non-existent definition imported from ANSI C standard
  12569.  
  12570. ? Did you also get rid of the times() function?  CLK_TCK was left to
  12571. 1003.1 by X3J11 for their exclusive use in converting times() results
  12572. to/from seconds.  The only thing that SHOULD have been changed is that
  12573. 1003.1 should not say that ANSI C <time.h> defines CLK_TCK, because it
  12574. doesn't.  CLK_TCK should be defined by a 1003.1 implementation, though.
  12575.  
  12576.  
  12577. Volume-Number: Volume 20, Number 130
  12578.  
  12579. From uucp@tic.com  Sun Jul 15 19:34:46 1990
  12580. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12581.     id AA08568; Sun, 15 Jul 90 19:34:46 -0400
  12582. Posted-Date: 14 Jul 90 19:37:46 GMT
  12583. Received: by cs.utexas.edu (5.64/1.68)
  12584.     id AA01044; Sun, 15 Jul 90 18:34:43 -0500
  12585. Received: by longway.tic.com (4.22/tic.1.2)
  12586.     id AA23035; Sun, 15 Jul 90 16:57:08 cdt
  12587. From: Doug Gwyn <gwyn@smoke.brl.mil>
  12588. Newsgroups: comp.std.unix
  12589. Subject: Re: _POSIX_1_SOURCE (was: Standards Update, IEEE 1003.1: System services)interface
  12590. Message-Id: <10116@cs.utexas.edu>
  12591. References: <9951@cs.utexas.edu> <9997@cs.utexas.edu> <10059@cs.utexas.edu>
  12592. Sender: jbc@cs.utexas.edu
  12593. Reply-To: std-unix@uunet.uu.net
  12594. Organization: U.S. Army Ballistic Research Laboratory, APG, MD.
  12595. Date: 14 Jul 90 19:37:46 GMT
  12596. Apparently-To: std-unix-archive@uunet.uu.net
  12597.  
  12598. From:  Doug Gwyn <gwyn@smoke.brl.mil>
  12599.  
  12600.  
  12601. In article <10059@cs.utexas.edu> std-unix@uunet.uu.net writes:
  12602. >>From the 1003.1 standard, 2.8.2:
  12603. >    Symbols called `feature test macros' are used to control the
  12604. >    visibility of symbols that might be included in a header.
  12605. >    Implementations, future versions of this standard, and other
  12606. >    standards may define additional feature test macros.
  12607. >My interpretation of this text is that the 1003.1 committee wanted to
  12608. >provide a mechanism by which a number of standards and implementations
  12609. >could share the C namespace.
  12610.  
  12611. The feature-test macro provision was the outcome of discussions among
  12612. DOnn Terry, Dave Prosser, myself, and a few others in an attempt to
  12613. resolve the problem that a single implementation could not simultaneously
  12614. conform to IEEE Std 1003.1 and ANS X3.159 due to the strict prohibition
  12615. of the latter against implementations defining or declaring non-reserved
  12616. identifiers in the standard headers.  Because of the evolutionary history
  12617. of the standard headers, some of them contained both UNIX-specific and
  12618. OS-independent definitions/declarations; for example, <stdio.h> included
  12619. fopen(), which applies in every hosted C environment, and fdopen(), which
  12620. is relevant only for UNIX-like environments.  Partly out of legitimate
  12621. political concerns, X3J11 refused to allow any special dispensation for
  12622. UNIX-specific extensions in the standard C headers, and as a generally
  12623. appreciated service to C programmers everywhere forbid conforming C
  12624. implementations to add other (non-reserved, i.e. not starting with
  12625. underscore etc.) identifiers to the standard headers.  Thus, in effect
  12626. other standards such as POSIX, if they are to be compatible with the C
  12627. language standard, must not require implementations to define/declare
  12628. such names in the headers specified in X3.159.  Yet, P1003 wished to add
  12629. some of the traditional UNIX identifiers to those headers.  This is the
  12630. problem that the feature-test macro POSIX_SOURCE was intended to solve.
  12631. (X3J11 recommended a similar but functionally different solution.)  While
  12632. they were at it, P1003 decided that packages other than 1003.1 might also
  12633. benefit from feature-test macros, and ended up with the wording you saw.
  12634.  
  12635. The technical loophole is that any application that defines _POSIX_SOURCE
  12636. has violated a constraint of X3.159, by using a reserved identifier, and
  12637. this allows the implementation to act in a non-X3.159-conforming manner,
  12638. in this case to define/declare otherwise-prohibited identifiers.
  12639.  
  12640. One drawback is that any portable 1003.1-based application that uses any
  12641. of the 1003.1 extensions in standard headers will have to predefine the
  12642. feature-test macro before including the headers.
  12643.  
  12644. There is no such problem with inclusion of headers NOT specified in
  12645. X3.159.  Thus, feature-test macros can be avoided simply by specifying
  12646. that new facilities be defined/declared in new add-on headers.  This is
  12647. much more convenient for the programmer and is highly recommended.
  12648. There is no historical-evolutionary problem for new POSIX standards,
  12649. and thus there is no need for a mechanism to share the standard headers
  12650. for new standards.  Instead of trying to add more cruft to standard C
  12651. headers, new inventions should provide their own headers.
  12652.  
  12653.  
  12654. Volume-Number: Volume 20, Number 131
  12655.  
  12656. From uucp@tic.com  Mon Jul 16 18:15:41 1990
  12657. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12658.     id AA21908; Mon, 16 Jul 90 18:15:41 -0400
  12659. Posted-Date: 16 Jul 90 15:16:26 GMT
  12660. Received: by cs.utexas.edu (5.64/1.68)
  12661.     id AA01475; Mon, 16 Jul 90 15:24:27 -0500
  12662. Received: by longway.tic.com (4.22/tic.1.2)
  12663.     id AA23918; Mon, 16 Jul 90 15:34:43 cdt
  12664. From: Jack Jansen <jack@cwi.nl>
  12665. Newsgroups: comp.std.unix
  12666. Subject: POSIX Terminal size.
  12667. Message-Id: <10147@cs.utexas.edu>
  12668. Sender: jbc@cs.utexas.edu
  12669. Reply-To: std-unix@uunet.uu.net
  12670. Organization: AMOEBA project, CWI, Amsterdam
  12671. Date: 16 Jul 90 15:16:26 GMT
  12672. Apparently-To: std-unix-archive@uunet.uu.net
  12673.  
  12674. From:  jack@cwi.nl (Jack Jansen)
  12675.  
  12676.  
  12677. This topic has probably been beaten to death already, but I don't follow
  12678. this group regularly, so here goes:
  12679.  
  12680. I can't seem to find anything in the standard regarding a call to get
  12681. the size of a terminal window. Did I miss it, or is there no such call?
  12682. If there isn't, are there any plans for adding such a call, and, if so,
  12683. is there anybody out there who could make an educated guess as to what
  12684. that call might look like?
  12685.  
  12686. Please reply by mail, I'll summarize.
  12687. --
  12688. --
  12689. Een volk dat voor tirannen zwicht    | Oral:     Jack Jansen
  12690. zal meer dan lijf en goed verliezen    | Internet: jack@cwi.nl
  12691. dan dooft het licht            | Uucp:     hp4nl!cwi.nl!jack
  12692.  
  12693.  
  12694. Volume-Number: Volume 20, Number 132
  12695.  
  12696. From uucp@tic.com  Tue Jul 17 14:12:01 1990
  12697. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12698.     id AA15052; Tue, 17 Jul 90 14:12:01 -0400
  12699. Posted-Date: 17 Jul 90 12:53:40 GMT
  12700. Received: by cs.utexas.edu (5.64/1.68)
  12701.     id AA08856; Tue, 17 Jul 90 13:11:57 -0500
  12702. Received: by longway.tic.com (4.22/tic.1.2)
  12703.     id AA24800; Tue, 17 Jul 90 12:01:47 cdt
  12704. From: Dominic Dunlop <domo@tsa.co.uk>
  12705. Newsgroups: comp.std.unix
  12706. Subject: Re: Why perl can't ship as HP/Apollo base software [Perl as standard]
  12707. Message-Id: <10178@cs.utexas.edu>
  12708. References: <4b8c2cb1.20b6d@apollo.HP.COM>
  12709. Sender: jbc@cs.utexas.edu
  12710. Reply-To: domo@tsa.co.uk
  12711. Organization: The Standard Answer Ltd.
  12712. Date: 17 Jul 90 12:53:40 GMT
  12713. Apparently-To: std-unix-archive@uunet.uu.net
  12714.  
  12715. From:  Dominic Dunlop <domo@tsa.co.uk>
  12716.  
  12717. [Note Followup-To above.  Specify wider distribution if you feel it
  12718. appropriate.]
  12719.  
  12720. In article <4b8c2cb1.20b6d@apollo.HP.COM> carlton@apollo.hp.com
  12721. (Carlton B. Hommel) writes:
  12722. >I've spent several hours over the past few weeks, trying to get perl included as
  12723. >part of the next base software release.  It won't happen, for the following
  12724. >reasons...
  12725. >
  12726. >1.  The GNU GENERAL PUBLIC LICENSE
  12727. >...
  12728. >
  12729. >2.  No Support
  12730. >...
  12731.  
  12732. [Cogent, if besuited, explanations omited -- dig up original posting QUICK if
  12733. interested.]
  12734. >
  12735. >In short, while R&D might think that perl is the best thing since V7, those dreaded
  12736. >"business considerations" currently prevent our shipping this truely outstanding
  12737. >utility.
  12738.  
  12739. Thanks for trying, Carl.
  12740.  
  12741. >So, how can perl get into Domain/OS, the Apollo software release?  Well,
  12742. >since we, like most other big companies, follow the policy of jumping on whatever
  12743. >standards bandwagons come down the pike, if perl makes it into Posix, 1003.?, OSF,
  12744. >the next Berkeley distribution, or whatever, then we will pick it up.  However, I'm
  12745. >afraid that perl might be just a little too late for any of these efforts.  
  12746. >
  12747. >I've taken a shot at it here at HP/Apollo.  What about other companies?  If I can
  12748. >say that our competition is shipping perl, that might swing some weight.  Is anyone
  12749. >spearheading an effort to get perl included in the "Real Unix" standards?  
  12750. >
  12751. Not to my knowledge.  Standardizing the shell and tools is quite enough
  12752. work for now and the next year or two.  (That's what 1003.2 is doing.)
  12753. 1003.7, on system administration, might be interested, but they're
  12754. currently developing a framework for administration -- trying to work out
  12755. what the problem is before they propose a solution -- whereas the philosophy
  12756. of perl, as applied to administration, is to make it easier to hack up
  12757. ad-hoc solutions (and none the worse for that).
  12758. -- 
  12759. Dominic Dunlop
  12760.  
  12761.  
  12762.  
  12763. Volume-Number: Volume 20, Number 133
  12764.  
  12765. From uucp@tic.com  Thu Jul 19 01:53:12 1990
  12766. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12767.     id AA22990; Thu, 19 Jul 90 01:53:12 -0400
  12768. Posted-Date: 17 Jul 90 17:31:40 GMT
  12769. Received: by cs.utexas.edu (5.64/1.68)
  12770.     id AA15806; Thu, 19 Jul 90 00:53:07 -0500
  12771. Received: by longway.tic.com (4.22/tic.1.2)
  12772.     id AA26229; Wed, 18 Jul 90 23:12:47 cdt
  12773. From: WHITE V L <vyw@stc06.ctd.ornl.gov>
  12774. Newsgroups: comp.std.unix
  12775. Subject: Shell and Tools FIPS
  12776. Message-Id: <10234@cs.utexas.edu>
  12777. Sender: jbc@cs.utexas.edu
  12778. Reply-To: std-unix@uunet.uu.net
  12779. Date: 17 Jul 90 17:31:40 GMT
  12780. Apparently-To: std-unix-archive@uunet.uu.net
  12781.  
  12782. From:  WHITE V L <vyw@stc06.ctd.ornl.gov>
  12783.  
  12784.  
  12785. The last I heard about the POSIX Shell and Tools FIPS was the 
  12786. draft sent out by Rick Kuhn of NIST on April 13.  At that time, the
  12787. FIPS had not yet been published.  What is its current status?
  12788.  
  12789. Thanks,
  12790.  
  12791. Vicky White
  12792. Oak Ridge National Laboratory
  12793. Oak Ridge, TN
  12794. vyw@ornl.gov
  12795.  
  12796.  
  12797. Volume-Number: Volume 20, Number 134
  12798.  
  12799. From uucp@tic.com  Thu Jul 19 01:53:22 1990
  12800. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12801.     id AA23037; Thu, 19 Jul 90 01:53:22 -0400
  12802. Posted-Date: 17 Jul 90 18:23:12 GMT
  12803. Received: by cs.utexas.edu (5.64/1.68)
  12804.     id AA15840; Thu, 19 Jul 90 00:53:17 -0500
  12805. Received: by longway.tic.com (4.22/tic.1.2)
  12806.     id AA26248; Wed, 18 Jul 90 23:13:29 cdt
  12807. From: Bob Lenk <rml@hpfcdc.fc.hp.com>
  12808. Newsgroups: comp.std.unix
  12809. Subject: Re: Standards Update, IEEE 1003.1: System services interface / TAPES
  12810. Message-Id: <10235@cs.utexas.edu>
  12811. References: <10115@cs.utexas.edu>
  12812. Sender: jbc@cs.utexas.edu
  12813. Reply-To: std-unix@uunet.uu.net
  12814. Date: 17 Jul 90 18:23:12 GMT
  12815. Apparently-To: std-unix-archive@uunet.uu.net
  12816.  
  12817. From:  Bob Lenk <rml@hpfcdc.fc.hp.com>
  12818.  
  12819. >The following features were deleted (but are still permitted):
  12820. >    CLK_TCK - non-existent definition imported from ANSI C standard
  12821.  
  12822. As of 1003.1a/D5 (also ISO/IEC DIS 9945-1.2), CLK_TCK is still required
  12823. to be defined in <time.h>.  It is obsolescent.  It is mentioned only
  12824. in one subclause (4.8.1.5), and is not used to define or describe any
  12825. other functionality.  Most features (such as times() are now described
  12826. in terms of "clock ticks".  Since it is no longer in the C Standard, it is
  12827. not mentioned in 2.7.1 (as in 1003.1-1988); the index seems to have an
  12828. erroneous reference to that deleted mention.
  12829.  
  12830. I don't know of any changes to this since that draft/DIS.
  12831.  
  12832.         Bob Lenk
  12833.         rml@hpfcla.hp.com
  12834.         hplabs!hpfcla!rml
  12835.  
  12836.  
  12837. Volume-Number: Volume 20, Number 135
  12838.  
  12839. From uucp@tic.com  Tue Jul 24 01:34:39 1990
  12840. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12841.     id AA27142; Tue, 24 Jul 90 01:34:39 -0400
  12842. Posted-Date: 19 Jul 90 18:04:02 GMT
  12843. Received: by cs.utexas.edu (5.64/1.68)
  12844.     id AA00133; Mon, 23 Jul 90 22:49:39 -0500
  12845. Received: by longway.tic.com (4.22/tic.1.2)
  12846.     id AA00699; Mon, 23 Jul 90 22:41:45 cdt
  12847. From: Cazier <cazier@mbunix.mitre.org>
  12848. Newsgroups: comp.std.unix
  12849. Subject: Re: Shell and Tools FIPS
  12850. Message-Id: <10322@cs.utexas.edu>
  12851. References: <10234@cs.utexas.edu>
  12852. Sender: jbc@cs.utexas.edu
  12853. Reply-To: std-unix@uunet.uu.net
  12854. Organization: The MITRE Corp., Bedford, MA
  12855. Date: 19 Jul 90 18:04:02 GMT
  12856. Apparently-To: std-unix-archive@uunet.uu.net
  12857.  
  12858. From:  cazier@mbunix.mitre.org (Cazier)
  12859.  
  12860. You can write to hall@swe.ncsl.nist.gov or call Roger Martin at the NIST
  12861. at 301-975-3295 to get more info.
  12862.  
  12863.  
  12864. Volume-Number: Volume 20, Number 136
  12865.  
  12866. From uucp@tic.com  Tue Jul 24 01:44:28 1990
  12867. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12868.     id AA29749; Tue, 24 Jul 90 01:44:28 -0400
  12869. Posted-Date: 20 Jul 90 05:29:50 GMT
  12870. Received: by cs.utexas.edu (5.64/1.68)
  12871.     id AA00145; Mon, 23 Jul 90 22:49:48 -0500
  12872. Received: by longway.tic.com (4.22/tic.1.2)
  12873.     id AA00720; Mon, 23 Jul 90 22:42:41 cdt
  12874. From: John G. DeArmond <rsiatl!jgd@cs.utexas.edu>
  12875. Newsgroups: comp.std.unix
  12876. Subject: Shipping Perl
  12877. Message-Id: <10323@cs.utexas.edu>
  12878. Sender: jbc@cs.utexas.edu
  12879. Reply-To: std-unix@uunet.uu.net
  12880. Organization: Radiation Systems, Inc. (a thinktank, motorcycle, car and gun works facility)
  12881. Date: 20 Jul 90 05:29:50 GMT
  12882. Apparently-To: std-unix-archive@uunet.uu.net
  12883.  
  12884. From:  jgd@rsiatl.uucp (John G. DeArmond)
  12885.  
  12886.  
  12887. domo@tsa.co.uk (Dominic Dunlop) writes:
  12888.  
  12889.  
  12890. >>So, how can perl get into Domain/OS, the Apollo software release?  Well,
  12891. >>since we, like most other big companies, follow the policy of jumping on whatev
  12892. >er
  12893. >>standards bandwagons come down the pike, if perl makes it into Posix, 1003.?, O
  12894. >SF,
  12895. >>the next Berkeley distribution, or whatever, then we will pick it up.  However,
  12896. > I'm
  12897. >>afraid that perl might be just a little too late for any of these efforts.
  12898. >>
  12899. >>I've taken a shot at it here at HP/Apollo.  What about other companies?  If I c
  12900. >an
  12901. >>say that our competition is shipping perl, that might swing some weight.  
  12902.  
  12903. [repeat after me "hit <enter> after 79 columns :-)]
  12904.  
  12905. One of my clients is GTE and they'll be shipping Perl the next release
  12906. of one of their major products.  contact me by email if you are 
  12907. interested in the details.
  12908.  
  12909. Sounds like all you REALLY gotta do is get your lawyers to READ the 
  12910. LICENSE.  Even a dumb lawyer can understand it.
  12911.  
  12912. John
  12913.  
  12914.  
  12915.  
  12916.  
  12917. -- 
  12918. John De Armond, WD4OQC  | We can no more blame our loss of freedom on congress
  12919. Radiation Systems, Inc. | than we can prostitution on pimps.  Both simply
  12920. Atlanta, Ga             | provide broker services for their customers.
  12921. {emory,uunet}!rsiatl!jgd|  - Dr. W Williams |                **I am the NRA**  
  12922.  
  12923.  
  12924. Volume-Number: Volume 20, Number 137
  12925.  
  12926. From uucp@tic.com  Wed Jul 25 11:13:57 1990
  12927. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12928.     id AA02968; Wed, 25 Jul 90 11:13:57 -0400
  12929. Posted-Date: 23 Jul 90 23:20:32 GMT
  12930. Received: by cs.utexas.edu (5.64/1.68)
  12931.     id AA23399; Wed, 25 Jul 90 10:08:24 -0500
  12932. Received: by longway.tic.com (4.22/tic.1.2)
  12933.     id AA05314; Wed, 25 Jul 90 08:06:46 cdt
  12934. From: Ron Guilmette <lupine!rfg@cs.utexas.edu>
  12935. Newsgroups: comp.std.unix
  12936. Subject: vexec function(s)?
  12937. Message-Id: <10461@cs.utexas.edu>
  12938. Sender: jbc@cs.utexas.edu
  12939. Reply-To: lupine!rfg@uunet.uu.net
  12940. Organization: Network Computing Devices, Inc., Mt. View, CA
  12941. Date: 23 Jul 90 23:20:32 GMT
  12942. Apparently-To: std-unix-archive@uunet.uu.net
  12943.  
  12944. From:  rfg@lupine.uucp (Ron Guilmette)
  12945.  
  12946.  
  12947. Just a trivia question.
  12948.  
  12949. On very rare occasions, I have found the family of vprintf functions (i.e.
  12950. vprintf, vfprintf, and vsprintf) quite useful.  In certain cases, there
  12951. is simply no other way to accomplish quite the same thing (especially
  12952. on the newer RISC machines where methods of passing variable numbers of
  12953. parameters can get rather complicated).
  12954.  
  12955. Now I'm looking at a hunk of non-portable code (written by somebody else
  12956. of course :-) that I have to port. and this code involves a call to execvp.
  12957. It looks kinda like:
  12958.  
  12959. ------------------------------------------------------------------------------
  12960. different_execvp (a, args)
  12961. char    *a;
  12962. va_list args;
  12963. {
  12964.     char **argv;
  12965.  
  12966.     argv = (char **) args;        /* YIKES!!! */
  12967.     argv[0] = basename(argv[0]);
  12968.     execvp(a, argv);
  12969. }
  12970. ------------------------------------------------------------------------------
  12971.  
  12972. The line with the comment /* YIKES!!! */ gets errors during compilation due
  12973. to a severe type mishmash for the assignment.  That's due to the fact that
  12974. (on the machine I am compiling on, the type used for `va_list' is most
  12975. definitely *not* a type which can be legally typecast to a pointer.  (Hint:
  12976. it is a struct on this type of RISC machine.)
  12977.  
  12978. What I appear to need here is either:
  12979.  
  12980.     a)  a standard way to convert a va_list into a list of pointers
  12981.         (to argument values), or
  12982.  
  12983.     b)  a standard way to modify one element of a va_list *and* a
  12984.         standard function like:
  12985.  
  12986.         int vexeclp (char *name, va_list vargs);
  12987.  
  12988. None of these things are a part of standard ANSI C (as far as I know).
  12989. Are any of them a part of POSIX?  If not, why not?
  12990.  
  12991.  
  12992.  
  12993. Volume-Number: Volume 20, Number 138
  12994.  
  12995. From uucp@tic.com  Wed Jul 25 11:10:43 1990
  12996. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  12997.     id AA02112; Wed, 25 Jul 90 11:10:43 -0400
  12998. Posted-Date: 23 Jul 90 22:07:06 GMT
  12999. Received: by cs.utexas.edu (5.64/1.68)
  13000.     id AA23504; Wed, 25 Jul 90 10:10:27 -0500
  13001. Received: by longway.tic.com (4.22/tic.1.2)
  13002.     id AA05342; Wed, 25 Jul 90 08:07:49 cdt
  13003. From: Roland McGrath <mcgrath%tully.Berkeley.EDU@ucbvax.Berkeley.EDU>
  13004. Newsgroups: comp.std.unix
  13005. Subject: _POSIX_VDISABLE
  13006. Message-Id: <10462@cs.utexas.edu>
  13007. Sender: jbc@cs.utexas.edu
  13008. Reply-To: std-unix@uunet.uu.net
  13009. Organization: Hackers Anonymous International, Ltd., Inc. (Applications
  13010. Date: 23 Jul 90 22:07:06 GMT
  13011. Apparently-To: std-unix-archive@uunet.uu.net
  13012.  
  13013. From:  mcgrath%tully.Berkeley.EDU@ucbvax.Berkeley.EDU (Roland McGrath)
  13014.  
  13015.  
  13016. >From 1003.1 2.10.4 it seems that if _POSIX_VDISABLE is defined as -1 in
  13017. <unistd.h>, it is supposed to mean there is no VDISABLE value for any file.
  13018. This precludes the value being -1.  Was this the intent?
  13019.  
  13020. Similarly, 5.7.1.3 says:
  13021.  
  13022. If the variable corresponding to NAME has no limit for the path or file
  13023. descriptor, the pathconf() and fpathconf() functions shall return -1 without
  13024. changing `errno'.
  13025.  
  13026. Though in the case of NAME == _PC_VDISABLE, the value in question is not a
  13027. "limit", this seems to imply that if pathconf("file", _PC_VDISABLE) returns -1
  13028. without changing `errno', then there is no VDISABLE for value for "file".
  13029.  
  13030. The problem is that the wording of the standard and the sysconf, pathconf, and
  13031. fpathconf functions were designed for boolean options and for limits which are
  13032. required to be positive integers.  In these cases, -1 is a reasonable
  13033. out-of-range value.  But _POSIX_VDISABLE is a character value, not restricted
  13034. to any specific range, and doesn't fit in right.
  13035. --
  13036.     Roland McGrath
  13037.     Free Software Foundation, Inc.
  13038. roland@ai.mit.edu, uunet!ai.mit.edu!roland
  13039.  
  13040.  
  13041. Volume-Number: Volume 20, Number 139
  13042.  
  13043. From uucp@tic.com  Wed Jul 25 11:11:19 1990
  13044. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13045.     id AA02302; Wed, 25 Jul 90 11:11:19 -0400
  13046. Posted-Date: 24 Jul 90 21:31:58 GMT
  13047. Received: by cs.utexas.edu (5.64/1.68)
  13048.     id AA23514; Wed, 25 Jul 90 10:10:35 -0500
  13049. Received: by longway.tic.com (4.22/tic.1.2)
  13050.     id AA05371; Wed, 25 Jul 90 08:09:16 cdt
  13051. From: John S. Quarterman <jsq@usenix.org>
  13052. Newsgroups: comp.std.unix
  13053. Subject: Thanks, g.m.
  13054. Message-Id: <394@usenix.ORG>
  13055. Sender: std-unix@usenix.ORG
  13056. Reply-To: std-unix@uunet.uu.net
  13057. Date: 24 Jul 90 21:31:58 GMT
  13058. Apparently-To: std-unix-archive@uunet.uu.net
  13059.  
  13060. From: jsq@usenix.org (John S. Quarterman)
  13061.  
  13062. Thanks to John B. Chambers <jbc@cs.utexas.edu> for acting
  13063. as guest moderator while I was away at the IEEE/CS TCOS
  13064. standards committee meetings in Danvers last week, and
  13065. elsewhere before that.  Good job, g.m....
  13066.  
  13067. John S. Quarterman <jsq@usenix.org> moderator comp.std.unix
  13068.  
  13069. Volume-Number: Volume 20, Number 140
  13070.  
  13071. From uucp@tic.com  Thu Jul 26 17:50:33 1990
  13072. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13073.     id AA09007; Thu, 26 Jul 90 17:50:33 -0400
  13074. Posted-Date: 24 Jul 90 22:29:02 GMT
  13075. Received: by cs.utexas.edu (5.64/1.68)
  13076.     id AA25333; Thu, 26 Jul 90 16:50:30 -0500
  13077. Received: by longway.tic.com (4.22/tic.1.2)
  13078.     id AA09893; Thu, 26 Jul 90 15:48:53 cdt
  13079. From: Karl Heuer <karl@IMA.IMA.ISC.COM>
  13080. Newsgroups: comp.std.unix
  13081. Subject: functions and headers
  13082. Message-Id: <397@usenix.ORG>
  13083. Sender: std-unix@usenix.ORG
  13084. Reply-To: karl@IMA.IMA.ISC.COM (Karl Heuer)
  13085. Organization: Interactive Systems, Cambridge, MA 02138-5302
  13086. Date: 24 Jul 90 22:29:02 GMT
  13087. Apparently-To: std-unix-archive@uunet.uu.net
  13088.  
  13089. From:  karl@IMA.IMA.ISC.COM (Karl Heuer)
  13090.  
  13091. In which header should ctermid() and cuserid() be declared?  Traditionally
  13092. they have been found in <stdio.h>, which is where their L_ constants are
  13093. defined, but they aren't listed there in 2.8.3.  Is this an oversight which
  13094. is being corrected in a supplement, or do these functions go in <unistd.h>
  13095. (as implied by the default clause of 2.8.3)?
  13096.  
  13097. How about popen() and pclose()?  These aren't listed in 1003.1 at all,
  13098. presumably because they use shell syntax and so they're described by 1003.2.
  13099. Should they go in <stdio.h>, <unistd.h>, or nowhere?  (XPG3 says they're
  13100. declared in <stdio.h>, but does not mark this as an extension over POSIX.)
  13101.  
  13102. Karl W. Z. Heuer (karl@kelp.ima.isc.com or ima!kelp!karl), The Walking Lint
  13103.  
  13104. Volume-Number: Volume 20, Number 141
  13105.  
  13106. From uucp@tic.com  Thu Jul 26 17:50:45 1990
  13107. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13108.     id AA09047; Thu, 26 Jul 90 17:50:45 -0400
  13109. Posted-Date: 24 Jul 90 19:52:22 GMT
  13110. Received: by cs.utexas.edu (5.64/1.68)
  13111.     id AA25344; Thu, 26 Jul 90 16:50:38 -0500
  13112. Received: by longway.tic.com (4.22/tic.1.2)
  13113.     id AA09912; Thu, 26 Jul 90 15:49:48 cdt
  13114. From: Rick Kuhn <kuhn@swe.ncsl.nist.gov>
  13115. Newsgroups: comp.std.unix
  13116. Subject: Shell & Util FIPS Wkshp.
  13117. Message-Id: <398@usenix.ORG>
  13118. Sender: std-unix@usenix.ORG
  13119. Reply-To: std-unix@uunet.uu.net
  13120. Organization: National Institute of Standards and Technology
  13121. Formerly: National Bureau of Standards
  13122. Sub-Organization: National Computer and Telecommunications Laboratory
  13123. Date: 24 Jul 90 19:52:22 GMT
  13124. Apparently-To: std-unix-archive@uunet.uu.net
  13125.  
  13126. From: Rick Kuhn <kuhn@swe.ncsl.nist.gov>
  13127.  
  13128.                        NIST POSIX Workshop
  13129.  
  13130.                   POSIX Commands and Utilities
  13131.  
  13132.                         September 6, 1990
  13133.  
  13134. A workshop will be held September 6, 1990 to discuss the proposed
  13135. Federal  Information  Processing  Standard for POSIX Commands and
  13136. Utilities.  The proposed FIPS  is  based  on  Draft  9  of  POSIX
  13137. 1003.2.   The workshop will explain the contents of POSIX 1003.2,
  13138. the exclusions specified in the FIPS proposal,  and  the  use  of
  13139. FIPS  in  Federal  procurements.    Comments on the proposed FIPS
  13140. will be solicited.  The workshop is open to all  interested  par-
  13141. ties.  Both Federal agency personnel and vendors implementing PO-
  13142. SIX systems are encouraged to attend.
  13143.  
  13144. The workshop will be held September 6, 1990  at  NIST,  Gaithers-
  13145. burg,  Md.  For information on the workshop, or to register, con-
  13146. tact
  13147.  
  13148.                 Jim Hall
  13149.                 Technology Bldg.  B266
  13150.                 NIST
  13151.                 Gaithersburg, Md.  20899
  13152.                 301/975-3273
  13153.                 301/590-0932  FAX
  13154.                 hall@swe.ncsl.nist.gov
  13155.  
  13156. Volume-Number: Volume 20, Number 142
  13157.  
  13158. From uucp@tic.com  Thu Jul 26 17:51:01 1990
  13159. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13160.     id AA09145; Thu, 26 Jul 90 17:51:01 -0400
  13161. Posted-Date: 24 Jul 90 22:03:57 GMT
  13162. Received: by cs.utexas.edu (5.64/1.68)
  13163.     id AA25353; Thu, 26 Jul 90 16:50:48 -0500
  13164. Received: by longway.tic.com (4.22/tic.1.2)
  13165.     id AA09946; Thu, 26 Jul 90 15:51:01 cdt
  13166. From: Karl Heuer <karl@IMA.IMA.ISC.COM>
  13167. Newsgroups: comp.std.unix
  13168. Subject: Re: _POSIX_VDISABLE
  13169. Message-Id: <399@usenix.ORG>
  13170. References: <10462@cs.utexas.edu>
  13171. Sender: std-unix@usenix.ORG
  13172. Reply-To: karl@IMA.IMA.ISC.COM (Karl Heuer)
  13173. Organization: Interactive Systems, Cambridge, MA 02138-5302
  13174. Date: 24 Jul 90 22:03:57 GMT
  13175. Apparently-To: std-unix-archive@uunet.uu.net
  13176.  
  13177. In article <10462@cs.utexas.edu>:
  13178. >From: mcgrath%tully.Berkeley.EDU@ucbvax.Berkeley.EDU (Roland McGrath)
  13179. >The problem is that the wording of the standard and the sysconf, pathconf, and
  13180. >fpathconf functions were designed for boolean options and for limits which are
  13181. >required to be positive integers.  In these cases, -1 is a reasonable
  13182. >out-of-range value.  But _POSIX_VDISABLE is a character value, not restricted
  13183. >to any specific range, and doesn't fit in right.
  13184.  
  13185. The documented use of _POSIX_VDISABLE is to store it in an object of type
  13186. cc_t.  This is defined in 7.1.2.1 to be an unsigned integral type; hence -1
  13187. is indeed out-of-band.  Unless you're trying to make cc_t an unsigned long and
  13188. have _POSIX_VDISABLE be ULONG_MAX, you should be okay.
  13189.  
  13190. Karl W. Z. Heuer (karl@kelp.ima.isc.com or ima!kelp!karl), The Walking Lint
  13191.  
  13192. Volume-Number: Volume 20, Number 143
  13193.  
  13194. From uucp@tic.com  Thu Jul 26 17:51:21 1990
  13195. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13196.     id AA09255; Thu, 26 Jul 90 17:51:21 -0400
  13197. Posted-Date: 25 Jul 90 09:49:41 GMT
  13198. Received: by cs.utexas.edu (5.64/1.68)
  13199.     id AA25370; Thu, 26 Jul 90 16:50:59 -0500
  13200. Received: by longway.tic.com (4.22/tic.1.2)
  13201.     id AA10019; Thu, 26 Jul 90 15:53:32 cdt
  13202. From: Dominic Dunlop <domo@tsa.co.uk>
  13203. Newsgroups: comp.std.unix,comp.unix.wizards
  13204. Subject: Re: Location of seek pointer after read error?
  13205. Summary: SunOS behaviour is actually POSX conformant
  13206. Message-Id: <400@usenix.ORG>
  13207. References: <1990Jul23.171022.17798@phri.nyu.edu>
  13208. Sender: std-unix@usenix.ORG
  13209. Reply-To: domo@tsa.co.uk
  13210. Followup-To: comp.std.unix
  13211. Organization: The Standard Answer Ltd.
  13212. Date: 25 Jul 90 09:49:41 GMT
  13213. Apparently-To: std-unix-archive@uunet.uu.net
  13214.  
  13215. From:  Dominic Dunlop <domo@tsa.co.uk>
  13216.  
  13217. [Moderator: please cross-post to comp.unix.wizards -- or let me know that
  13218. you won't cross-post to unmoderated groups]
  13219.  
  13220. [I prefer not to cross post, but I sometimes do so if the number of
  13221. newsgroups is small, the subject matter is appropriate, and especially
  13222. if there's a Followup-To.  -mod]
  13223.  
  13224. In article <1990Jul23.171022.17798@phri.nyu.edu> roy@alanine.phri.nyu.edu
  13225. (Roy Smith) writes:
  13226. >The SunOS-3.5.2 man page for read(2) says:
  13227. >
  13228. >    On objects capable of seeking, the read starts at a position
  13229. >    given by the pointer associated with d (see lseek(2)).  Upon
  13230. >    return from read, the pointer is incremented by  the  number
  13231. >    of bytes actually read.
  13232. >
  13233. Ah.  Isn't this interesting?  Here's what POSIX.1 (ANSI/IEEE Std.
  13234. 1003.1:1988) has to say:
  13235.  
  13236.     On a regular file or other file capable of seeking, read() shall
  13237.     start at a position in the file given by the file offset associated
  13238.     with fildes.  Before successful return from read(), the file
  13239.     offset shall be incremented by the number of bytes actually read.
  13240.  
  13241. >Now, if you are reading from a raw disk partition (say /dev/rxy0a) and get
  13242. >a read error (because, for example, there is a bad block on the disk),
  13243. >where should the pointer be after the read(2) call returns?  It turns out
  13244. >that, at least for SunOS-3.5.2, the pointer is incremented, as if the bytes
  13245. >in the bad block had actually been read.  I would consider this incorrect
  13246. >behavior.  Do you agree?
  13247. >
  13248. Looking at the tighter and arguably sneakier wording of the standard,
  13249. it appears that all bets are off as to the value of the file offset
  13250. after an error.  Sure enough, the rationale says:
  13251.  
  13252.     The standard does not specify the value of the file offset after an
  13253.     error is returned; there are too many cases.  For programming
  13254.     errors, such as [EBADF], the concept is meaningless since no file
  13255.     is involved.  For errors that are detected immediately, such as
  13256.     [EAGAIN], clearly the pointer should not change.  After an
  13257.     interrupt or hardware error, however, an updated value would be
  13258.     very useful, and this is the behavior of many implementations.
  13259.  
  13260.     References to actions taken on an ``unrecoverable error'' have been
  13261.     removed [from the standard].  It is considered beyond the scope of
  13262.     this standard to describe what happens in the case of hardware
  13263.     errors.
  13264.  
  13265. So, you'll be nonplussed to learn that SunOS' behaviour, which I agree is
  13266. less useful than it could be, is POSIX-conformant.
  13267.  
  13268. >[Description of writing program which repeatedly seeked back to start of
  13269. >failing blocks, and so eventually recovered slightly soft errors deleted.]
  13270.  
  13271. Should Sun wish to modify their drivers so that the file pointer points to
  13272. the start of a failing block after an error, that behaviour too would be
  13273. POSIX conformant.   You can't legislate for everything...
  13274.  
  13275. >"Arcane?  Did you say arcane?  It wouldn't be Unix if it wasn't arcane!"
  13276.  
  13277. Wouldn't be POSIX either...
  13278. -- 
  13279. Dominic Dunlop
  13280.  
  13281. Volume-Number: Volume 20, Number 144
  13282.  
  13283. From uucp@tic.com  Thu Jul 26 17:51:20 1990
  13284. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13285.     id AA09251; Thu, 26 Jul 90 17:51:20 -0400
  13286. Posted-Date: 25 Jul 90 18:24:00 GMT
  13287. Received: by cs.utexas.edu (5.64/1.68)
  13288.     id AA25378; Thu, 26 Jul 90 16:51:10 -0500
  13289. Received: by longway.tic.com (4.22/tic.1.2)
  13290.     id AA10045; Thu, 26 Jul 90 15:55:19 cdt
  13291. From: Guy Harris <auspex!guy@cs.utexas.edu>
  13292. Newsgroups: comp.std.unix
  13293. Subject: Re: vexec function(s)?
  13294. Message-Id: <401@usenix.ORG>
  13295. References: <10461@cs.utexas.edu>
  13296. Sender: std-unix@usenix.ORG
  13297. Reply-To: std-unix@uunet.uu.net
  13298. Organization: Auspex Systems, Santa Clara
  13299. Date: 25 Jul 90 18:24:00 GMT
  13300. Apparently-To: std-unix-archive@uunet.uu.net
  13301.  
  13302. From:  guy@auspex.uucp (Guy Harris)
  13303.  
  13304. >What I appear to need here is either:
  13305. >
  13306. >    a)  a standard way to convert a va_list into a list of pointers
  13307. >        (to argument values), or
  13308.  
  13309. I suspect "different_execvp" is misnamed; given the "va_list", it
  13310. appears to have a calling sequence more like "execlp" - i.e.,
  13311.  
  13312.     different_execlp("/bin/explode", "explode", "bright blue light",
  13313.         (char *)NULL);
  13314.  
  13315. Given that, you could scan the argument list twice; the first time,
  13316. you'd count the number of arguments, then you'd malloc up an array of
  13317. N+1 "char *"s, and scan the argument list a second time filling in that
  13318. array.  Now "argv" is a pointer to the first element of that array....
  13319.  
  13320. >None of these things are a part of standard ANSI C (as far as I know).
  13321.  
  13322. The second isn't; the first can be done in ANSI C, unless I've missed
  13323. something subtle in the spec that forbids traversing the argument list
  13324. twice (I just checked and didn't see anything obvious).
  13325.  
  13326. >Are any of them a part of POSIX?
  13327.  
  13328. Nope.
  13329.  
  13330. >If not, why not?
  13331.  
  13332. Because the first can be done in ANSI C (or pre-ANSI C with <varargs.h>).
  13333.  
  13334. Volume-Number: Volume 20, Number 145
  13335.  
  13336. From uucp@tic.com  Thu Jul 26 17:51:34 1990
  13337. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13338.     id AA09333; Thu, 26 Jul 90 17:51:34 -0400
  13339. Posted-Date: 26 Jul 90 00:12:42 GMT
  13340. Received: by cs.utexas.edu (5.64/1.68)
  13341.     id AA25387; Thu, 26 Jul 90 16:51:19 -0500
  13342. Received: by longway.tic.com (4.22/tic.1.2)
  13343.     id AA10074; Thu, 26 Jul 90 15:56:48 cdt
  13344. From: Roland McGrath <mcgrath%tully.Berkeley.EDU@ucbvax.Berkeley.EDU>
  13345. Newsgroups: comp.std.unix
  13346. Subject: Re: vexec function(s)?
  13347. Message-Id: <402@usenix.ORG>
  13348. References: <10461@cs.utexas.edu>
  13349. Sender: std-unix@usenix.ORG
  13350. Reply-To: std-unix@uunet.uu.net
  13351. Organization: Hackers Anonymous International, Ltd., Inc. (Applications
  13352. Date: 26 Jul 90 00:12:42 GMT
  13353. Apparently-To: std-unix-archive@uunet.uu.net
  13354.  
  13355. From:  mcgrath%tully.Berkeley.EDU@ucbvax.Berkeley.EDU (Roland McGrath)
  13356.  
  13357. In article <10461@cs.utexas.edu> rfg@lupine.uucp (Ron Guilmette) writes:
  13358.    What I appear to need here is either:
  13359.  
  13360.        a)  a standard way to convert a va_list into a list of pointers
  13361.            (to argument values), or
  13362.  
  13363.        b)  a standard way to modify one element of a va_list *and* a
  13364.            standard function like:
  13365.  
  13366.            int vexeclp (char *name, va_list vargs);
  13367.  
  13368.    None of these things are a part of standard ANSI C (as far as I know).
  13369.    Are any of them a part of POSIX?  If not, why not?
  13370.  
  13371. A would fall under the C standard, and B under 1003.1.  However, neither of
  13372. these exist.  I imagine the answer the appropriate committees would give would
  13373. be "insufficient utility".
  13374.  
  13375. At any rate, you can handle the case in question by doing A manually, since
  13376. `execlp' has a defined way of determining its number of arguments:
  13377.  
  13378. {
  13379.   char **argv[ARG_MAX];
  13380.   register unsigned int i = 0;
  13381.   va_list args;
  13382.  
  13383.   va_start(args, lastarg);
  13384.  
  13385.   do
  13386.     argv[i] = va_arg(args, char *);
  13387.   while (argv[i++] != NULL);
  13388. }
  13389.  
  13390. (Actually, I would suggest dynamically allocating ARGV to avoid eating all your
  13391. memory if ARG_MAX is very large.)
  13392. --
  13393.     Roland McGrath
  13394.     Free Software Foundation, Inc.
  13395. roland@ai.mit.edu, uunet!ai.mit.edu!roland
  13396.  
  13397. Volume-Number: Volume 20, Number 146
  13398.  
  13399. From uucp@tic.com  Thu Jul 26 17:51:54 1990
  13400. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13401.     id AA09561; Thu, 26 Jul 90 17:51:54 -0400
  13402. Posted-Date: 26 Jul 90 17:36:58 GMT
  13403. Received: by cs.utexas.edu (5.64/1.68)
  13404.     id AA25396; Thu, 26 Jul 90 16:51:31 -0500
  13405. Received: by longway.tic.com (4.22/tic.1.2)
  13406.     id AA10107; Thu, 26 Jul 90 15:58:28 cdt
  13407. From: Jeffrey S. Haemer <jsh@usenix.org>
  13408. Newsgroups: comp.std.unix
  13409. Subject: Son of WeirdNIX
  13410. Message-Id: <403@usenix.ORG>
  13411. Sender: std-unix@usenix.ORG
  13412. Reply-To: Jeffrey S. Haemer <jsh@usenix.org>
  13413. Date: 26 Jul 90 17:36:58 GMT
  13414. Apparently-To: std-unix-archive@uunet.uu.net
  13415.  
  13416. From: Jeffrey S. Haemer <jsh@usenix.org>
  13417.  
  13418.                           Son of WeirdNIX
  13419.  
  13420.                          USENIX Association
  13421.  
  13422.                             23 July 1990
  13423.  
  13424.     Norman Bangerter, Governor of Utah, declared April 23-27
  13425.     ``POSIX week'' in the state of Utah.  Spurred on by the
  13426.     spirit of that declaration, the USENIX Association is
  13427.     announcing its 1990 POSIX contest.
  13428.  
  13429.     Prizes (besides notoriety) include
  13430.  
  13431.        + a copy of the ``POSIX Week'' declaration,
  13432.  
  13433.        + an official, 40-foot, red-and-white ``Welcome POSIX''
  13434.          banner,
  13435.  
  13436.        + and -- thanks to UNISYS and the state of Utah --
  13437.          + two round-trip tickets to Salt Lake City, plus
  13438.          + weekend accommodations at a hotel yet to be named.
  13439.  
  13440.     If you were at the Snowbird meetings, or have ever been to
  13441.     Utah for any reason, you'll know this is a great prize.  If
  13442.     you haven't, take our word for it.
  13443.  
  13444.     ``What,'' you're asking, ``do I have to do to win?''
  13445.     Designing a contest isn't easy.  We toyed with the idea of
  13446.     holding a Roger Martin look-alike contest.  We almost
  13447.     decided on, ``If POSIX were made into a movie, who would
  13448.     play the attendees?'' [Sample answer: Jack Nicholson as Jim
  13449.     Isaak (Jim says he'd prefer ``Cary Grant''), Oscar the
  13450.     Grouch as John Quarterman, ...]
  13451.  
  13452.     Finally, we decided on a second, not-at-all-annual, WeirdNIX
  13453.     Contest.  As with the first one, which is described in
  13454.     section B.1.2.12 of ANSI/IEEE 1003.1-1988, the goal is to
  13455.     find:
  13456.  
  13457.      the best new and technically legal interpretation of the POSIX standard
  13458.      which nevertheless violates the intuitive intent of the POSIX standard.
  13459.  
  13460.     Both
  13461.  
  13462.        + 1003.1 (``The Ugly Green Book''), and
  13463.  
  13464.        + 1003.2 (draft 10 or later)
  13465.  
  13466.     are fair game.  The former is available from
  13467.  
  13468.     
  13469.                     - 2 -
  13470.  
  13471.          IEEE Service Center
  13472.          445 Hoes Lane
  13473.          Piscataway, NJ  08854
  13474.          U.S.A.
  13475.          (201) 981-0060
  13476.  
  13477.     the latter from
  13478.  
  13479.          Lisa Granoien
  13480.          IEEE Computer Society
  13481.          1730 Massachusetts Ave NW
  13482.          Washington, DC 20036-1903
  13483.          (202) 371-0101
  13484.  
  13485.     While the only version of 1003.1 currently available is IEEE
  13486.     1003.1-1988, we won't give high marks to cheap shots, so
  13487.     problems fixed in IEEE 1003.1-1990 (soon to be published,
  13488.     and formerly found in documents labeled 1003.1a) aren't good
  13489.     targets.
  13490.  
  13491.     In the earlier contest, separate prizes were awarded for
  13492.     ``Best'' and for ``Most Demented.'' We debated doing this
  13493.     again but, in the end, decided that one prize of two tickets
  13494.     makes more sense than two prizes of one ticket.  The judges
  13495.     may choose to announce winners in a variety of categories,
  13496.     but the prize mentioned above is a grand prize: we'll award
  13497.     the prize to whichever entry we think is the best, whatever
  13498.     its orientation.
  13499.  
  13500.          Judges are:
  13501.  
  13502.          Donn Terry (Chair, 1003.1),
  13503.          Hal Jespersen (Chair, 1003.2),
  13504.          N. Ray Wilkes, (Vice chair, 1003.3),
  13505.          John Quarterman (USENIX Standards liaison), and
  13506.          Jeffrey S. Haemer (USENIX report editor).
  13507.  
  13508.     Please mail entries to Jeffrey S. Haemer <jsh@usenix.org>.
  13509.     If you don't get an acknowledgement, I haven't gotten it.
  13510.     Previous winners may compete, but previous entries aren't
  13511.     allowed.
  13512.  
  13513.     Entries must be submitted by November 21, 1990, to give us
  13514.     time to judge them.
  13515.  
  13516.     We'll announce the winner at the Winter USENIX Conference in
  13517.     Dallas, January 21-25, 1991.
  13518.  
  13519. Volume-Number: Volume 20, Number 147
  13520.  
  13521. From uucp@tic.com  Mon Jul 30 01:27:56 1990
  13522. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13523.     id AA09268; Mon, 30 Jul 90 01:27:56 -0400
  13524. Posted-Date: 28 Jul 90 23:00:20 GMT
  13525. Received: by cs.utexas.edu (5.64/1.68)
  13526.     id AA23438; Mon, 30 Jul 90 00:27:54 -0500
  13527. Received: by longway.tic.com (4.22/tic.1.2)
  13528.     id AA16269; Sun, 29 Jul 90 23:25:50 cdt
  13529. From: John F. Haugh II <jfh@rpp386.cactus.org>
  13530. Newsgroups: comp.std.unix
  13531. Subject: POSIX Saved-Set-IDs v. System V
  13532. Message-Id: <404@usenix.ORG>
  13533. Sender: std-unix@usenix.ORG
  13534. Reply-To: std-unix@uunet.uu.net
  13535. Date: 28 Jul 90 23:00:20 GMT
  13536. Apparently-To: std-unix-archive@uunet.uu.net
  13537.  
  13538. From:  jfh@rpp386.cactus.org (John F. Haugh II)
  13539.  
  13540. Peter Jeffe has managed to convince me that there is something flawed in
  13541. my reading of 4.2.2, and the associated pieces of 1003.1 related to the
  13542. feature test macro _POSIX_SAVED_IDS.
  13543.  
  13544. The rationale, in B.4.2.2, claims that this functionality is derived from
  13545. System V and is designed to permit the application to toggle between the
  13546. effective ID of the process and the real ID of the process creator.
  13547.  
  13548. The conflict between 4.2.2.2 and System V setuid is that System V states
  13549.  
  13550.     "If the effective user ID of the calling process is super-user,
  13551.      the real user (group) ID and effective user (group) ID are set
  13552.      to uid (gid)."
  13553.  
  13554. and 4.2.2.2 states
  13555.  
  13556.     "(1) If the process has appropriate privileges, the setuid()
  13557.      function sets the real user ID, effective user ID, and the
  13558.      saved set-user-ID to uid."
  13559.  
  13560. The first problem is that a program which is set-user-ID to an ID other
  13561. than super-user will behave quite differently when executed by root.  The
  13562. first execution of "setuid (real_uid)" will change the effective user ID
  13563. to a process which "has appropriate privileges" so that the second
  13564. execution of "setuid (effective_uid)" will permanently change the process
  13565. back to "effective_uid".  The second problem relates to processes which
  13566. are set-user-ID to super-user.  The first execution of "setuid (real_uid)"
  13567. is going to permanently change the IDs so that the process can never
  13568. switch back to the original saved set-user-ID.
  13569.  
  13570. Contrary to the rationale, this behavior does not permit the application
  13571. to toggle between the real and saved set-user-ID unless both are not the
  13572. super-user's ID.  So, how does an application toggle between a non-super
  13573. user and a super-user?
  13574. -- 
  13575. John F. Haugh II                             UUCP: ...!cs.utexas.edu!rpp386!jfh
  13576. Ma Bell: (512) 832-8832                           Domain: jfh@rpp386.cactus.org
  13577.  
  13578. Volume-Number: Volume 20, Number 148
  13579.  
  13580. From uucp@tic.com  Mon Jul 30 17:38:45 1990
  13581. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13582.     id AA07616; Mon, 30 Jul 90 17:38:45 -0400
  13583. Posted-Date: 29 Jul 90 22:05:03 GMT
  13584. Received: by cs.utexas.edu (5.64/1.68)
  13585.     id AA14762; Mon, 30 Jul 90 16:38:43 -0500
  13586. Received: by longway.tic.com (4.22/tic.1.2)
  13587.     id AA18318; Mon, 30 Jul 90 16:50:20 cdt
  13588. From: Arnold Robbins <arnold@audiofax.com>
  13589. Newsgroups: comp.std.unix
  13590. Subject: is struct utimbuf in the standard sys/types.h?
  13591. Message-Id: <405@usenix.ORG>
  13592. Sender: std-unix@usenix.ORG
  13593. Reply-To: <samsung.com!audfax!arnold@cs.utexas.edu>
  13594. Organization: AudioFAX Inc., Atlanta
  13595. Date: 29 Jul 90 22:05:03 GMT
  13596. Apparently-To: std-unix-archive@uunet.uu.net
  13597.  
  13598. From:  arnold@audiofax.com (Arnold Robbins)
  13599.  
  13600. Can someone with access to the 1003.1 standard tell me if the utime(2)
  13601. system call is standardized, and if so if the definition of struct utimbuf
  13602. is supposed to be in a particular header file?
  13603.  
  13604. While we're at it, can anyone tell me why the stupid structure never
  13605. made it into <sys/types.h>, and instead has to be redeclared over and over
  13606. and over again from the man page??!?  Sheesh.
  13607.  
  13608. As they used to say in ancient net history,
  13609.  
  13610. ``Thanks In Advance,''
  13611. -- 
  13612. Arnold Robbins                AudioFAX, Inc. | Laundry increases
  13613. 2000 Powers Ferry Road, #220 / Marietta, GA. 30067     | exponentially in the
  13614. INTERNET: arnold@audiofax.com    Phone: +1 404 933 7600 | number of children.
  13615. UUCP:      emory!audfax!arnold    Fax:   +1 404 933 7606 |   -- Miriam Robbins
  13616.  
  13617. Volume-Number: Volume 20, Number 149
  13618.  
  13619. From uucp@tic.com  Tue Jul 31 14:49:03 1990
  13620. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13621.     id AA05795; Tue, 31 Jul 90 14:49:03 -0400
  13622. Posted-Date: 31 Jul 90 00:53:12 GMT
  13623. Received: by cs.utexas.edu (5.64/1.68)
  13624.     id AA17537; Tue, 31 Jul 90 13:49:00 -0500
  13625. Received: by longway.tic.com (4.22/tic.1.2)
  13626.     id AA20043; Tue, 31 Jul 90 13:49:19 cdt
  13627. From: Donn Holtzman <donnh@smokey.SanDiego.NCR.COM>
  13628. Newsgroups: comp.std.unix
  13629. Subject: POSIX ACL Definition
  13630. Keywords: security, ACLs
  13631. Message-Id: <407@usenix.ORG>
  13632. Sender: std-unix@usenix.ORG
  13633. Reply-To: donnh@smokey.SanDiego.NCR.COM (Donn Holtzman)
  13634. Organization: NCR Corporation, Rancho Bernardo
  13635. Date: 31 Jul 90 00:53:12 GMT
  13636. Apparently-To: std-unix-archive@uunet.uu.net
  13637.  
  13638. From:  donnh@smokey.SanDiego.NCR.COM (Donn Holtzman)
  13639.  
  13640. Is there a POSIX standard which defines Access Control Lists (ACLs)?
  13641. If so could someone please send me (via email) the name and number of
  13642. the standard? I also need to know the best way to get a copy.
  13643.  
  13644. Thanks
  13645.  
  13646. Donn Holtzman
  13647. NCR E&M San Diego, MS9114
  13648. 16550 W. Bernardo Dr.
  13649. San Diego, CA 92127
  13650.  
  13651. Volume-Number: Volume 20, Number 150
  13652.  
  13653. From uucp@tic.com  Tue Jul 31 14:49:23 1990
  13654. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13655.     id AA05992; Tue, 31 Jul 90 14:49:23 -0400
  13656. Posted-Date: 31 Jul 90 16:47:04 GMT
  13657. Received: by cs.utexas.edu (5.64/1.68)
  13658.     id AA17561; Tue, 31 Jul 90 13:49:15 -0500
  13659. Received: by longway.tic.com (4.22/tic.1.2)
  13660.     id AA20065; Tue, 31 Jul 90 13:50:11 cdt
  13661. From: <jsh@usenix.org>
  13662. Newsgroups: comp.std.unix
  13663. Subject: Standards Update, U.S. TAG to ISO/IEC JTC1 SC22 WG15
  13664. Message-Id: <408@usenix.ORG>
  13665. Sender: std-unix@usenix.ORG
  13666. Reply-To: std-unix@uunet.uu.net
  13667. Date: 31 Jul 90 16:47:04 GMT
  13668. Apparently-To: std-unix-archive@uunet.uu.net
  13669.  
  13670. From:  <jsh@usenix.org>
  13671.  
  13672.  
  13673.            An Update on UNIX*-Related Standards Activities
  13674.  
  13675.                               July, 1990
  13676.  
  13677.                  USENIX Standards Watchdog Committee
  13678.  
  13679.                    Jeffrey S. Haemer, Report Editor
  13680.  
  13681. U.S. TAG to ISO/IEC JTC1 SC22 WG15
  13682.  
  13683. Susanne Smith <sws@calvin.wa.com> reports on the June 1 meeting in
  13684. Denver, Colorado:
  13685.  
  13686. 1.  Overview
  13687.  
  13688. Before you ask, ISO/IEC JTC1 SC22 WG15 is ISO POSIX.  The U.S. TAG is
  13689. the United States Technical Advisory Group, which formulates the U.S.
  13690. position on WG15 issues and chooses the U.S. delegation to WG15
  13691. meetings.
  13692.  
  13693. The TAG usually meets in conjunction with the IEEE POSIX meetings.
  13694. The June 1 meeting was a special meeting, held to complete the many
  13695. unfinished tasks left from Snowbird and ready the instructions to the
  13696. U.S. delegation before the June 11 WG15 meeting.
  13697.  
  13698. 2.  Two vacant positions
  13699.  
  13700. Terry Dowling, vice-chair and security rapporteur, resigned after the
  13701. New Orleans meeting in January.  Currently there are no candidates for
  13702. the vice-chair position.  Donn Terry has been assuming the
  13703. responsibilities in the interim.
  13704.  
  13705. A rapporteur group is a group of technical experts that discusses
  13706. specialized aspects of a particular standards effort.  The specialized
  13707. aspects usually have a broader scope than an individual standard and
  13708. require coordination of effort between standards bodies.  WG15 has
  13709. three: internationalization, security, and conformance.  The TAG
  13710. currently has rapporteurs for internationalization (Donn Terry) and
  13711. conformance (Roger Martin).  John Hill and Al Weaver said that they
  13712. would be able to cover the June 11 security meetings in Paris.
  13713.  
  13714. __________
  13715.  
  13716.   * UNIXTM is a Registered Trademark of UNIX System Laboratories in
  13717.     the United States and other countries.
  13718.  
  13719. July, 1990 Standards Update         U.S. TAG to ISO/IEC JTC1 SC22 WG15
  13720.  
  13721.  
  13722.                 - 2 -
  13723.  
  13724. 3.  Some important decisions from Snowbird
  13725.  
  13726. 3.1  Profile groups get help
  13727.  
  13728. SC22 asked WG15 to develop a plan to help groups writing profiles.  (A
  13729. profile is an application-area-specific set of pointers to standards.
  13730. For example, P1003.10 is developing a supercomputing profile.) Wearing
  13731. his WG15-convener hat, Jim Isaak drafted and submitted a ``POSIX
  13732. Harmonization Proposal'' --  a plan that gives profile groups a way to
  13733. observe WG15 meetings and participate when their proposals are being
  13734. considered.  The plan lists the responsibilities of both the
  13735. ``harmonization liaison'' and WG15.  The TAG approved the plan with
  13736. comments, including changing ``harmonization'' to ``coordination.''
  13737. [Editor: I think ``harmonization'' is ugly, but it does parallel the
  13738. ``MUSIC'' acronym that's gaining ground in the UNIX, er, ``Open
  13739. Systems'' arena.]
  13740.  
  13741. 3.2  Speeding international approval
  13742.  
  13743. SC22 has asked all working groups doing development work in national
  13744. bodies (for example, WG15 and IEEE P1003) to find a way to synchronize
  13745. their national and international efforts.  Such synchronization will
  13746. help eliminate delays between national-body approval and ISO approval;
  13747. it will also insure that both national and international bodies use
  13748. the same text and speed achieving a broad consensus by circulating
  13749. them in both bodies simultaneously.
  13750.  
  13751. Donn Terry, TAG chair, and Jim Isaak (him again?) shouldered the
  13752. burden of developing the plan and submitted it at Snowbird.  The meat
  13753. of the proposal is the following synchronization process:
  13754.  
  13755.    - SC22 review and comment
  13756.  
  13757.    - IEEE balloting; document ready for broad comment
  13758.  
  13759.    - U.S. recommends CD registration be requested by WG15.  (CD,
  13760.      Committee Document, is now used instead of DP Draft Proposal.)
  13761.  
  13762.    - CD comments fed to IEEE balloting; IEEE recommendations fed to CD
  13763.      process
  13764.  
  13765.    - IEEE final approval delayed until updated draft is suitable for
  13766.      DIS registration
  13767.  
  13768.    - DIS and ANSI approval run in parallel; substantive feedback from
  13769.      DIS ballot creates an IEEE PAR
  13770.  
  13771. Final authority to approve or reject the plan rests with SC22 and the
  13772. IEEE Computer Society Standards Activities Board, but the TAG voted
  13773. ``No with binding comments,'' objecting to a few details.  If the
  13774. problems listed below are fixed, the vote will automatically change to
  13775.  
  13776. July, 1990 Standards Update         U.S. TAG to ISO/IEC JTC1 SC22 WG15
  13777.  
  13778.  
  13779.                 - 3 -
  13780.  
  13781. ``Yes.''
  13782.  
  13783.    + Under the plan, TCOS/SEC documents, such as standards drafts and
  13784.      administrative status reports, would all be sent to WG15 and SC22
  13785.      to encourage feedback before balloting.  The plan would force
  13786.      TCOS working groups to use the JTC1 format for draft documents.
  13787.      Currently POSIX documents use a unique TCOS format, so the TAG
  13788.      objected to this requirement but added the comment that the
  13789.      format should be one approved by the ITTF (Information Technology
  13790.      Task Force, formerly, the ``Central Secretariat'').
  13791.  
  13792.    + The TAG also objected to the requirement that TCOS meet outside
  13793.      of the U.S. mainland every 12 to 18 months to encourage
  13794.      international participation.  It did not object to meeting
  13795.      outside the U.S., but thought the requirement did not belong in
  13796.      the plan.
  13797.  
  13798. 4.  Decisions made in this meeting
  13799.  
  13800. 4.1  Formatting nits still block ISO UNIX
  13801.  
  13802. The 9945-1 document (the ISO version of 1003.1) still has problems.
  13803. WG15 recommended registering it as an International Standard (IS), but
  13804. is now stuck in a loop: ISO demands a format change, the IEEE makes
  13805. the change, then ISO finds a new formatting problem.  The TAG thinks
  13806. this loop has gone on long enough, and recommended that WG15 form an
  13807. ad hoc committee to determine what ISO will accept.
  13808.  
  13809. 4.2  P1003.1 updates go international
  13810.  
  13811. WG15 is balloting to make 9945-1.2 (which corresponds to 1003.1a,
  13812. draft 5) a Draft International Standard (DIS). The TAG approved the
  13813. U.S. position with comments.  What's that mean?
  13814.  
  13815. Voting within WG15 is done by member country.  To arrive at the U.S.'s
  13816. position on a WG15 ballot, the TAG members draft a position then vote
  13817. on it, one vote per corporation.  (POSIX participation, in contrast,
  13818. is by individuals.) The final ballot resolution is presented to WG15
  13819. as the U.S. position, Sometimes a voice vote suffices, but DISs, NPs
  13820. (New Proposal, formerly New Work Item), or CDs (Committee Document,
  13821. formerly Draft Proposal), require a letter ballot.
  13822.  
  13823. The initial letter-ballot vote was nine yesses, two noes (with
  13824. comments), three abstentions; the two negative ballots were from Sun
  13825. and AT&T.  We considered three options for AT&T's comments:
  13826.  
  13827.   1.  do nothing and write a response to AT&T explaining why,
  13828.  
  13829.   2.  pass the comments on to WG15, or
  13830.  
  13831. July, 1990 Standards Update         U.S. TAG to ISO/IEC JTC1 SC22 WG15
  13832.  
  13833.  
  13834.                 - 4 -
  13835.  
  13836.   3.  pass the comments on to the 1003.1 working group, who could
  13837.       better judge their technical merits,
  13838.  
  13839. and chose the third.  In contrast, we incorporated Sun's comment into
  13840. our position.  Though someone suggested that AT&T might not be getting
  13841. fair treatment, Sun's comment (which simply noted that a change made
  13842. in chapter eight was not reflected in chapter two) was only a response
  13843. to the TAG ballot, while the AT&T comments, were more far-reaching
  13844. responses to 9945-1.2 itself and demanded a different forum.
  13845. Nevertheless, the group asked the ad hoc committee reforming TAG
  13846. procedures to reconsider the ballot resolution process.
  13847.  
  13848. 4.3  How can you be two places at once (when you're ... )?
  13849.  
  13850. In light of the amount of time TAG meetings keep members from
  13851. attending working groups, we decided to meet Sundays before and
  13852. Thursdays and Fridays during the POSIX meetings.  This new schedule
  13853. will start with the Seattle meeting in October. The idea is to
  13854. complete as much as possible on Sunday and have Thursday and Friday
  13855. available if necessary. We agreed that the TAG should allocate this
  13856. much time to avoid one-day meetings like this one.  The SEC meeting
  13857. schedule may force this to change; several TAG members are TCOS
  13858. officers, committee chairs, or Institutional Representatives, all of
  13859. which are automatically SEC members.
  13860.  
  13861. 4.4  Last, least
  13862.  
  13863. Both P1237 and X3T5.5 are working on remote procedure calls (RPC).
  13864. X3T5.5 is specifying the data stream encoding and P1237 is working on
  13865. the Application Programming Interface (API).  The TAG recommended that
  13866. the API work be brought to the ISO level under the WG15 umbrella.
  13867.  
  13868. July, 1990 Standards Update         U.S. TAG to ISO/IEC JTC1 SC22 WG15
  13869.  
  13870. Volume-Number: Volume 20, Number 151
  13871.  
  13872. From uucp@tic.com  Wed Aug  1 20:47:26 1990
  13873. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13874.     id AA23336; Wed, 1 Aug 90 20:47:26 -0400
  13875. Posted-Date: 31 Jul 90 21:56:44 GMT
  13876. Received: by cs.utexas.edu (5.64/1.68)
  13877.     id AA07444; Wed, 1 Aug 90 13:45:41 -0500
  13878. Received: by longway.tic.com (4.22/tic.1.2)
  13879.     id AA03123; Wed, 1 Aug 90 12:53:27 cdt
  13880. From: <Don_Lewine%dgc.ceo.dg.com@RELAY.CS.NET>
  13881. Newsgroups: comp.std.unix
  13882. Subject: Reply to utime() question
  13883. Message-Id: <412@usenix.ORG>
  13884. References: <405@usenix.ORG>
  13885. Sender: std-unix@usenix.ORG
  13886. Reply-To: std-unix@uunet.uu.net
  13887. Date: 31 Jul 90 21:56:44 GMT
  13888. Apparently-To: std-unix-archive@uunet.uu.net
  13889.  
  13890. From:  Don_Lewine%dgc.ceo.dg.com@RELAY.CS.NET
  13891.  
  13892. CEO document contents:
  13893.  
  13894. In article <405@usenix.ORG> <uunet!samsung.com!audfax!arnold> writes:
  13895. >From:  arnold@audiofax.com (Arnold Robbins)
  13896. >
  13897. >Can someone with access to the 1003.1 standard tell me if the utime(2)
  13898. >system call is standardized, and if so if the definition of struct utimbuf
  13899. >is supposed to be in a particular header file?
  13900.  
  13901.  
  13902. >From POSIX 5.6.6.1:
  13903.        #include <sys/types.h>
  13904.        #include <utime.h>
  13905.  
  13906.        Int utime(path,times)
  13907.        char *path;
  13908.        struct utimebuf *times;
  13909.  
  13910. >From 5.6.6.2:
  13911. The utimbuf structure is defined by the header <utime.h>, and included the
  13912. following members:
  13913.        TYPE    NAME            Description
  13914.        time_t  actime          Access time
  13915.        time_t  modtime         Modification time
  13916.  
  13917. The 1990 revision of 1003.1 changes the definition to use an ANSI prototype:
  13918.        int utime(char *path, struct utimebuf *times);
  13919. and add the restriction the the utimebuf structure may not contain any members
  13920. other than the ones listed in the standard.
  13921.  
  13922. Note that utime() is the only function [I believe] where a structure is passed
  13923. into the system without having been obtained by a prior library call.  This 
  13924. makes it "special".  I would guess that this is why AT&T never put it into a
  13925. header file.
  13926.  
  13927.                        --Donald Lewine
  13928.                        uunet!dg!lewine
  13929.  
  13930. Volume-Number: Volume 20, Number 153
  13931.  
  13932. From uucp@tic.com  Wed Aug  1 20:58:44 1990
  13933. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  13934.     id AA28473; Wed, 1 Aug 90 20:58:44 -0400
  13935. Posted-Date: 31 Jul 90 21:59:37 GMT
  13936. Received: by cs.utexas.edu (5.64/1.68)
  13937.     id AA07426; Wed, 1 Aug 90 13:45:30 -0500
  13938. Received: by longway.tic.com (4.22/tic.1.2)
  13939.     id AA03104; Wed, 1 Aug 90 12:52:40 cdt
  13940. From: Bob Lenk <rml@hpfcdc.fc.hp.com>
  13941. Newsgroups: comp.std.unix
  13942. Subject: Re: POSIX Saved-Set-IDs v. System V
  13943. Message-Id: <411@usenix.ORG>
  13944. References: <404@usenix.ORG>
  13945. Sender: std-unix@usenix.ORG
  13946. Reply-To: std-unix@uunet.uu.net
  13947. Date: 31 Jul 90 21:59:37 GMT
  13948. Apparently-To: std-unix-archive@uunet.uu.net
  13949.  
  13950. From:  Bob Lenk <rml@hpfcdc.fc.hp.com>
  13951.  
  13952. In article <404@usenix.ORG>,jfh@rpp386.cactus.org (John F. Haugh II) says:
  13953.  
  13954. > The conflict between 4.2.2.2 and System V setuid is that System V states
  13955. >     "If the effective user ID of the calling process is super-user,
  13956. >      the real user (group) ID and effective user (group) ID are set
  13957. >      to uid (gid)."
  13958. > and 4.2.2.2 states
  13959. >     "(1) If the process has appropriate privileges, the setuid()
  13960. >      function sets the real user ID, effective user ID, and the
  13961. >      saved set-user-ID to uid."
  13962.  
  13963. The behavior required in 4.2.2.2 is understood to be the actual behavior
  13964. of System V (at least Release 2, assuming that appropriate privilege
  13965. means super-user).
  13966.  
  13967. > The first problem is that a program which is set-user-ID to an ID other
  13968. > than super-user will behave quite differently when executed by root.
  13969.  
  13970. Correct.
  13971.  
  13972. > The second problem relates to processes which are set-user-ID to super-user.
  13973.  
  13974. Correct.
  13975.  
  13976. Contrary to the rationale, this behavior does not permit the application
  13977. to toggle between the real and saved set-user-ID unless both are not the
  13978. super-user's ID.
  13979.  
  13980. I'm not sure if this is contrary to the rationale, though it is more
  13981. complete.  The third paragraph of B.4.2.2 (top of page 236) explains
  13982. that the behavior for privileged processes is different.  The problem is
  13983. that setuid() and setgid() are overloaded with two behaviors, and the
  13984. behavior is selected by privilege (traditionally uid).  The fact that a
  13985. portable POSIX application has no way to determine whether it is
  13986. privileged makes this even worse.
  13987.  
  13988. > So, how does an application toggle between a non-super user and a super-user?
  13989.  
  13990. The only ways I know of are to use non-(POSIX/SysV) features or to use
  13991. two processes.  The current draft of the 1003.1a supplement (formerly
  13992. 1003.1b, *not* the 1003.1-1990 revision) introduces the functions
  13993. seteuid() and setegid() to address this.
  13994.  
  13995.         Bob Lenk
  13996.         rml@hpfcla.hp.com
  13997.         hplabs!hpfcla!rml
  13998.  
  13999.  
  14000. Volume-Number: Volume 20, Number 152
  14001.  
  14002. From jsq  Thu Aug  2 19:56:57 1990
  14003. Received: by uunet.uu.net (5.61/1.14) 
  14004.     id AA14505; Thu, 2 Aug 90 19:56:57 -0400
  14005. From: Guy Harris <auspex!guy>
  14006. Newsgroups: comp.std.unix
  14007. Subject: Re: POSIX Saved-Set-IDs v. System V
  14008. Message-Id: <414@usenix.ORG>
  14009. References: <404@usenix.ORG>
  14010. Sender: std-unix@usenix.ORG
  14011. Reply-To: std-unix@uunet.uu.net
  14012. Organization: Auspex Systems, Santa Clara
  14013. Date: 2 Aug 90 00:47:33 GMT
  14014. Apparently-To: std-unix-archive
  14015.  
  14016. From:  guy@auspex.uucp (Guy Harris)
  14017.  
  14018. >The rationale, in B.4.2.2, claims that this functionality is derived from
  14019. >System V
  14020.  
  14021. It is.
  14022.  
  14023. >and is designed to permit the application to toggle between the
  14024. >effective ID of the process and the real ID of the process creator.
  14025.  
  14026. It, like the S5 functionality it is derived from, does so as long as the
  14027. process isn't set-UID "root".  POSIX just inherits S5's deficiencies
  14028. here.
  14029.  
  14030. >The conflict between 4.2.2.2 and System V setuid is that System V states
  14031. >
  14032. >    "If the effective user ID of the calling process is super-user,
  14033. >     the real user (group) ID and effective user (group) ID are set
  14034. >     to uid (gid)."
  14035.  
  14036. That may be what the SVID *states* (or Issue 2 states, anyway; our copy
  14037. of volume 1 has disappeared), and is what the S5R3 documentation states,
  14038. but it ain't what System V *does*.  What System V *does* is:
  14039.  
  14040. >and 4.2.2.2 states
  14041. >
  14042. >    "(1) If the process has appropriate privileges, the setuid()
  14043. >     function sets the real user ID, effective user ID, and the
  14044. >     saved set-user-ID to uid."
  14045.  
  14046. ...precisely that.  If you do "setuid(uid)" when the effective user ID
  14047. is super-user, the saved set-user ID, as well as the real and effective
  14048. UIDs, are set to "uid".
  14049.  
  14050. There's no conflict between what AT&T's S5 implementation does, and what
  14051. POSIX specifies.  There may be a conflict between what the SVID, Issue
  14052. 2, specifies, and what POSIX specifies, but that means there's a
  14053. conflict between what the SVID, Issue 2, specifies and what System V
  14054. does, too.  (Remember, this is UNIX; the documentation isn't the
  14055. up-to-date spec for what the system does, the code is.)
  14056.  
  14057. In fact, the Third Edition of the SVID finally admits that; the wording
  14058. is the same as POSIX.  The S5R4 documentation also admits the way S5 has
  14059. worked since saved set-user IDs were first introduced.
  14060.  
  14061. >Contrary to the rationale, this behavior does not permit the application
  14062. >to toggle between the real and saved set-user-ID unless both are not the
  14063. >super-user's ID.  So, how does an application toggle between a non-super
  14064. >user and a super-user?
  14065.  
  14066. The author of the application lobbies one or more of POSIX and AT&T/UI
  14067. to specify or implement "seteuid()", a call that takes one argument and
  14068. sets the effective user ID, and *ONLY* the effective user ID, to the
  14069. value of that argument, even if the process has appropriate privileges. 
  14070. Without a call like that - which some systems with saved set-user IDs,
  14071. such as SunOS 4.x, have, and which System V Release 4 may even have, but
  14072. without documentation - you're screwed. 
  14073.  
  14074.  
  14075. Volume-Number: Volume 20, Number 154
  14076.  
  14077. From jsq  Thu Aug  2 19:57:48 1990
  14078. Received: by uunet.uu.net (5.61/1.14) 
  14079.     id AA14893; Thu, 2 Aug 90 19:57:48 -0400
  14080. From: Ron Heiby <heiby@mcdchg.chg.mcd.mot.com>
  14081. Newsgroups: comp.std.unix
  14082. Subject: Re: is struct utimbuf in the standard sys/types.h?
  14083. Message-Id: <415@usenix.ORG>
  14084. References: <405@usenix.ORG>
  14085. Sender: std-unix@usenix.ORG
  14086. Reply-To: std-unix@uunet.uu.net
  14087. Organization: Motorola Microcomputer, Schaumburg, IL
  14088. Date: 1 Aug 90 16:55:34 GMT
  14089. Apparently-To: std-unix-archive
  14090.  
  14091. From:  heiby@mcdchg.chg.mcd.mot.com (Ron Heiby)
  14092.  
  14093. My understanding is that not only has the utimbuf structure been
  14094. standardized and included in sys/utime.h, but it was changed in
  14095. a manner incompatible with current practice.  Since the beginning
  14096. of time, the structure has been documented as being a pair of
  14097. time_t values (usually longs), the first specifying the access
  14098. time and the second specifying the modification time.  Now, it's
  14099. been defined to be four time_t values.  The additional two are
  14100. for additional microseconds beyond the existing time in seconds.
  14101. Do you think maybe the two new values could be put at the end
  14102. of the structure where they would do little harm?  No way!  Where
  14103. the modification time value *used* to be, now we find microseconds
  14104. tacked onto the access time value.  Also, since there was never
  14105. before a header file for utimbuf, everyone who uses it has it hard
  14106. coded into their own code (or their own .h file, if they're lucky).
  14107. The thing that really gripes me about this is that I haven't found
  14108. anyone who can explain to me why the access and modification times
  14109. for a file have to be settable to the microsecond.  It's simply
  14110. ridiculous!
  14111. -- 
  14112. Ron Heiby, heiby@chg.mcd.mot.com    Moderator: comp.newprod
  14113. "Mandatory Drug Testing?  Just Say NO!!!"
  14114.  
  14115. Volume-Number: Volume 20, Number 155
  14116.  
  14117. From uucp@tic.com  Thu Aug  2 18:08:34 1990
  14118. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  14119.     id AA27668; Thu, 2 Aug 90 18:08:34 -0400
  14120. Posted-Date: 2 Aug 90 16:12:49 GMT
  14121. Received: by cs.utexas.edu (5.64/1.68)
  14122.     id AA03781; Thu, 2 Aug 90 14:55:38 -0500
  14123. Received: by longway.tic.com (4.22/tic.1.2)
  14124.     id AA05294; Thu, 2 Aug 90 14:50:07 cdt
  14125. From: std-unix@usenix.ORG (Moderator, John Quarterman)
  14126. Newsgroups: comp.std.unix
  14127. Subject: End of comp.std.unix Volume 20
  14128. Message-Id: <416@usenix.ORG>
  14129. Reply-To: std-unix@uunet.uu.net
  14130. Date: 2 Aug 90 16:12:49 GMT
  14131. Apparently-To: std-unix-archive@uunet.uu.net
  14132.  
  14133. From: jsq@usenix.org (Moderator, John Quarterman)
  14134.  
  14135. This is the last article in Volume 20 of the newsgroup comp.std.unix
  14136. and the mailing list std-unix@uunet.uu.net.  Volume 21 will start today.
  14137.  
  14138. These volumes are purely for administrative convenience.  Please feel
  14139. free to continue any previous discussion and to start any new ones.
  14140.  
  14141. John S. Quarterman, moderator, comp.std.unix and std-unix@uunet.uu.net
  14142.  
  14143. Volume-Number: Volume 20, Number 156
  14144.  
  14145.