home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / std_unix / reports / 1989.12.followups < prev    next >
Encoding:
Text File  |  1990-05-09  |  26.2 KB  |  571 lines

  1. echo overview.a
  2. cat >overview.a <<'shar.overview.a.29391'
  3. From jsq@longway.tic.com  Tue Jan  9 09:38:21 1990
  4. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  5.     id AA02344; Tue, 9 Jan 90 09:38:21 -0500
  6. Posted-Date: 8 Jan 90 21:40:19 GMT
  7. Received: by cs.utexas.edu (5.59/1.46)
  8.     id AA03475; Tue, 9 Jan 90 08:37:57 CST
  9. Received: by longway.tic.com (4.22/4.16)
  10.     id AA08380; Tue, 9 Jan 90 06:57:22 cst
  11. From: Doug Gwyn <smoke.brl.mil!gwyn@longway.tic.com>
  12. Newsgroups: comp.std.unix
  13. Subject: Re: Standards Update, USENIX Standards Watchdog Committee
  14. Message-Id: <503@longway.TIC.COM>
  15. References: <500@longway.TIC.COM>
  16. Sender: std-unix@longway.tic.com
  17. Reply-To: Doug Gwyn <gwyn@smoke.brl.mil>
  18. Organization: Ballistic Research Lab (BRL), APG, MD.
  19. Date: 8 Jan 90 21:40:19 GMT
  20. Apparently-To: std-unix-archive@uunet.uu.net
  21.  
  22. From: Doug Gwyn <gwyn@smoke.brl.mil>
  23.  
  24.  
  25. In article <500@longway.TIC.COM> std-unix@uunet.uu.net writes:
  26. >From: Jeffrey S. Haemer <jsh@usenix.org>
  27. >            An Update on UNIX* and C Standards Activities
  28.  
  29. I have several comments on these issues (and will try to refrain
  30. from commenting on the ones I don't track closely).
  31.  
  32. >1003.1
  33. >An example is the recent flap over transparent file access, in which the
  34. >group defining the standard (1003.8/1) was told, in no uncertain terms,
  35. >that NFS wouldn't do, because it wasn't consistent with dot one semantics.
  36.  
  37. This is an important point; 1003.1 did very much have in mind network
  38. file systems, and we decided that the full semantics specified in 1003.1
  39. were really required for the benefit of portable applications on UNIX
  40. systems (or workalikes), which is what 1003 was originally all about.
  41.  
  42. Having run into problem after problem with the lack of full 1003.1
  43. semantics in our NFS-supporting environment, I fully agree with the
  44. decision that applications should be able to rely on "UNIX semantics"
  45. and that NFS simply does not meet this criterion.  (There are other
  46. network-transparent file system implementations that do; the design
  47. of NFS was constrained by the desire to support MS/DOS and to be
  48. "stateless", both of which run contrary to UNIX filesystem semantics.)
  49.  
  50. >One wonders if things like the dot six chmod dispute will finally be
  51. >resolved here as well.
  52.  
  53. Fairly late in the drafting of Std 1003.1, consultation with NCSC and
  54. other parties concerned with "UNIX security" led to a fundamental
  55. change in the way that privileges were specified.  That's when the
  56. notion of "appropriate privilege" and the acknowledgement of optional
  57. "additional mechanisms" were added, deliberately left generally vague
  58. so as to encompass any other specification that would be acceptable
  59. to the 1003.1 people as not interfering unduly with the traditional
  60. UNIX approach to file access permissions.
  61.  
  62. Upon reviewing the chmod spec in IEE Std 1003.1-1988, I see no reason
  63. to think that it would interfere with addition of ACL or other similar
  64. additional mechanisms, the rules for which would be included in the
  65. implementation-defined "appropriate privileges".  Remember, the UNIX-
  66. like access rules of 1003.1 apply only when there is no additional
  67. mechanism (or the additional mechanism is satisfied).
  68.  
  69. >A key to success will be keeping enough of the original dot one
  70. >participants available and active to insure consistency.
  71.  
  72. Good luck with this.  Personally, I couldn't afford to pay the dues
  73. and limited my membership to 1003.2 once Std 1003.1-1988 was published.
  74.  
  75. >1003.2
  76. >The dot two draft currently in ballot, ``dot-two classic,'' is
  77. >intended to standardize commands that you'd find in shell scripts.
  78. >Unfortunately, if you look at dot-two classic you'll see things
  79. >missing.  In fact, you could have a strictly conforming system that
  80. >would be awfully hard to to develop software on or port software to.
  81.  
  82. >From my point of view, 1003.2 unfortunately included TOO MUCH, not
  83. too little, for portable application support.  (My views on the
  84. proper set of commands and options were spelled out in a very early
  85. 1003.2 document.)
  86.  
  87. >To solve this, NIST pressured dot two into drawing up a standard for a
  88. >user portability extension (UPE).  The distinction is supposed to be
  89. >that dot-two classic standardizes commands necessary for shell script
  90. >portability, while the UPE standardizes things that are primarily
  91. >interactive, but aid user portability.
  92.  
  93. NIST apparently thinks that all the horrible existing tools they're
  94. familiar with should be forced upon all environments.  I think this
  95. does interactive users a DISservice.  For one thing, many interesting
  96. architectures require different tools from the traditional ones, and
  97. requiring the traditional ones merely makes it difficult or impossible
  98. for better environments to be provided under contracts that require
  99. conformance to the UPE.  (This probably includes most future U.S.
  100. government procurements, which means most major vendor OSes.)
  101.  
  102. >The two documents have some strategic problems.
  103. >   o+ Many folks who developed dot-two classic say the UPE is outside
  104. >     of dot two's charter, and won't participate in the effort.  This
  105. >     sort of behavior unquestionably harms the UPE.  Since I predict
  106. >     that the outside world will make no distinction between the UPE
  107. >     and the rest of the standard, it will actually harm the entire
  108. >     dot-two effort.
  109.  
  110. But they're right.  The UPE effort should be STOPPED, immediately.
  111. There IS no "right" way to standardize this area.
  112.  
  113. >   o+ The classification criteria are unconvincing.  Nm(1) is in the
  114. >     UPE.  Is it really primarily used interactively?
  115.  
  116. "nm" is precisely the sort of thing that should NOT be standardized
  117. at all, due to widely varying environmental needs in software
  118. generation systems.  There have been numerous attempts to standardize
  119. object module formats (which is similar to standardizing "nm" behavior),
  120. and none of them have been successful over anywhere near the range of
  121. systems that a 1003 standard should properly encompass.
  122.  
  123. >   o+ Cc has been renamed c89, and lint may become lint89.  This is
  124. >     silly and annoying, but look on the bright side: at least we can
  125. >     see why c89 wasn't put in the UPE.  Had it been, it would have
  126. >     had to have a name users expected.
  127.  
  128. "cc" (and "nm") is not sufficiently useful to APPLICATIONS to merit
  129. being in 1003.2 at all.  Certainly its options cannot be fully specified
  130. due to the wide range of system-specific support needed in many
  131. environments.  Thus, "cc options files" where options include just -c
  132. -Iwherever -Dname=value and -o file and files includes -lwhatever is all
  133. that has fully portable meaning.  Is there really any UNIX implementation
  134. that doesn't provide these so that a standard is needed?  I think not.
  135.  
  136. >   o+ Who died and left NIST in charge?  POSIX seems constantly to be
  137. >     doing things that it didn't really want to do because it was
  138. >     afraid that if it didn't, NIST would strike out on its own.
  139. >     Others instances are the accelerated timetables of .1 and .2, and
  140. >     the creation of 1003.7 and 1201.)
  141.  
  142. The problem is, NIST prepares FIPS and there is essentially no stopping
  143. them.  Because FIPS are binding on government procurements (unless
  144. specific waivers are obtained), they have heavy economic impact on
  145. vendors.  In the "good old days", NBS allowed the computing industry
  146. to develop suitable standards and later blessed them with FIPS.  With
  147. the change in political climate that occurred with the Reagan
  148. administration, which was responsible for the name change from NBS to
  149. NIST, NIST was given a more "proactive" role in the development of
  150. technology.  Unfortunately they seem to think that forcing standards
  151. advances the technology, whereas that would be true only under
  152. favorable circumstances (which unsuitable standards do not promote).
  153. (Actually I think that the whole idea of a government attempting to
  154. promote technology is seriously in error, but that's another topic.)
  155.  
  156. I don't know how you can tone down NIST.  Perhaps if enough congressmen
  157. receive enough complaints some pressure may be applied.
  158.  
  159. >   o+ Crucial pieces of software are missing from dot two.  The largest
  160. >     crevasse is the lack of any form of source-code control.  People
  161. >     on the committee don't want to suffer through an SCCS-RCS debate.
  162. >     POSIX dealt with the cpio-tar debate.  (It decided not to
  163. >     decide.) POSIX dealt with the vi-emacs debate.  (The UPE provides
  164. >     a standard for ex/vi.) POSIX is working on the NFS-RFS debate,
  165. >     and a host of others.  Such resolutions are a part of its
  166. >     responsibility and authority.  POSIX is even working on the
  167. >     Motif-Open/Look debate (whether it should or not).
  168.  
  169. The problem with all these is that there is not a "good enough"
  170. solution in widespread existing practice.  This should tell the
  171. parties involved that standardization in these areas is therefore
  172. premature, since it would in effect "lock in" inferior technology.
  173. However, marketing folks have jumped on the standardization
  174. bandwagon and want standards even where they're inappropriate.
  175. (This is especially apparent in the field of computer graphics.)
  176.  
  177. >     At the very least, the standard could require some sort of source
  178. >     code control, with an option specifying which flavor is
  179. >     available.  Perhaps we could ask NIST to threaten to provide a
  180. >     specification.
  181.  
  182. Oh, ugh.  Such options are evil in a standard, because they force
  183. developers to always allow for multiple ways of doing things, which is
  184. more work than necessary.
  185.  
  186. You shouldn't even joke about using NIST to force premature decisions,
  187. as that's been a real problem already and we don't need it to get worse.
  188.  
  189. >As a final note, because dot two (collective) standardizes user-level
  190. >commands, it really can provide practical portability across operating
  191. >systems.  Shell scripts written on a dot-two-conforming UNIX system
  192. >should run just fine on an MS-DOS system under the MKS toolkit.
  193.  
  194. I hope that is not literally true.  1003 decided quite early that it
  195. would not bend over backward to accommodate layered implementations.
  196. For MS-DOS to be supported even at the 1003.2 level would seem to
  197. require that the standard not permit shared file descriptors,
  198. concurrent process scheduling, etc. in portable scripts.  That would
  199. rule out exploitation of some of UNIX's strongest features!
  200.  
  201. >On the surface, it seems logical and appealing that documents like
  202. >1003.1 be re-written as a language-independent standard, with a
  203. >separate C-language binding, analogous to those of dot five and dot
  204. >nine.  But is it really?
  205.  
  206. I don't think it is.  UNIX and C were developed together, and C was
  207. certainly intended to be THE systems implementation language for UNIX.
  208.  
  209. >First, it fosters the illusion that POSIX is divorced from, and
  210. >unconstrained by its primary implementation language.  Should the
  211. >prohibition against nul characters in filenames be a base-standard
  212. >restriction or a C-binding restriction?
  213.  
  214. The prohibition is required due to kernel implementation constraints
  215. (due to UNIX being implemented in C and relying on C conventions for
  216. such things as handling pathname strings).  Thus the prohibition is
  217. required no matter what the application implementation language.
  218.  
  219. >It would be nice if this push for language-independent POSIX would go
  220. >away quietly, but it won't.
  221.  
  222. As I understand it, it is mainly ISO that is forcing this, probably
  223. originally due to Pascal folks feeling left out of the action.
  224. Because many large U.S. vendors have a significant part of their
  225. market in Europe, where conformance with ISO standards is an
  226. important consideration, there is a lot of pressure to make the
  227. U.S.-developed standards meet ISO requirements, to avoid having to
  228. provide multiple versions of products.  I think this is unfortunate
  229. but don't have any solution to offer.
  230.  
  231. >X3J11
  232. >A single individual, Russell Hansberry, is blocking the official
  233. >approval of the ANSI standard for C on procedural grounds.  At some
  234. >point, someone failed to comply with the letter of IEEE rules for
  235. >ballot resolution.  and Hansberry is using the irregularity to delay
  236. >adoption of the standard.
  237.  
  238. This is misstated.  IEEE has nothing to do with X3J11 (other than
  239. through the 1003.1/X3J11 acting liaison, at the moment yours truly).
  240.  
  241. Mr. Hansberry did appeal to X3 on both technical and procedural
  242. grounds.  X3 reaffirmed the technical content of the proposed
  243. standard and the procedural appeal was eventually voluntarily
  244. withdrawn.  The ANSI Board of Standards Review recently approved
  245. the standard prepared by X3J11.
  246.  
  247. The delay in ratification consisted of two parts:  First, a delay
  248. caused by having to address an additional public-review letter
  249. (Mr. Hansberry's) that had somehow been mislaid by X3; fortunately
  250. the points in the letter that X3J11 agreed with had already been
  251. addressed during previous public review resolution.  (Note that
  252. X3J11 and X3 do NOT follow anything like the IEEE 1003.n ballot
  253. resolution/consensus process.  I much prefer X3J11's approach.)
  254. Thus through expeditious work by the editor (me again) and reviewers
  255. of the formal X3J11 document responding to the issues raised by the
  256. late letter, this part of the delay was held to merely a few weeks.
  257. The second part of the delay was caused by the appeal process that
  258. Mr. Hansberry initiated (quite within his rights, although nobody I
  259. know of in X3J11 or X3 thought his appeal to be justified).  The
  260. net effect was to delay ratification of the ANSI standard by
  261. several months.
  262.  
  263. >This has had an odd effect in the 1003 committees.  No one wants to
  264. >see something like this inflicted on his or her group, so folks are
  265. >being particularly careful to dot all i's and cross all t's.  I say
  266. >odd because it doesn't look as though Hansberry's objections will have
  267. >any effect whatsoever on either the standard, or its effectiveness.
  268. >Whether ANSI puts its stamp on it or not, every C compiler vendor is
  269. >implementing the standard, and every book (even K&R) is writing to it.
  270. >X3J11 has replaced one de-facto standard with another, even stronger
  271. >one.
  272.  
  273. That's because all the technical work had been completed and the
  274. appeal introduced merely procedural delays.  Thus there was a clear
  275. specification that was practically certain to become ratified as the
  276. official standard eventually, so there was little risk and considerable
  277. gain in proceeding to implement conformance to it.
  278.  
  279. You should note that no amount of dotting i's and crossing t's
  280. would have prevented the Hansberry appeal.  I'm not convinced that
  281. even handling his letter during the second public review batch would
  282. have forestalled the appeal, which so far as I can tell was motivated
  283. primarily by his disappointment that X3J11 had not attempted to specify
  284. facilities aimed specifically at real-time embedded system applications.
  285. (Note that this sort of thing was not part of X3J11's charter.)
  286.  
  287. >1201
  288. >someone smart will show us a better way to do graphics, and X will
  289. >become a backwater.
  290.  
  291. Someone smart has already shown us better ways to do graphics.
  292. (If you've been reading ACM TOG and the USENIX TJ, you should have
  293. already seen some of these.)
  294.  
  295. There is no doubt a need for X standardization, but it makes no
  296. sense to bundle it in with POSIX.
  297.  
  298. >If 1201.1 ignores X and NIST, can it do anything?  Certainly.  The
  299. >real problem with the occasionally asked question, ``are standards
  300. >bad?'' is that it omits the first word: ``When.'' Asked properly, the
  301. >answer is, ``When they're at the wrong level.'' API's XVT is example
  302. >of a toolkit that sits above libraries like Motif or the Mac toolbox,
  303. >and provides programmers with much of the standard functionality
  304. >necessary to write useful applications on a wide variety of window
  305. >systems.  Even if XVT isn't the answer, it provides proof by example
  306. >that we can have a window-system-independent, application programming
  307. >interface for windowing systems.  1201.1 could provide a useful
  308. >standard at that level.  Will it?  Watch and see.
  309.  
  310. This makes a good point.  Standards can be bad not only because of
  311. being drawn up for the wrong conceptual level, but also when they
  312. do not readily accommodate a variety of environments.  1003.1 was
  313. fairly careful to at least consider pipes-as-streams, network file
  314. systems, ACLs, and other potential enhancements to the POSIX-
  315. specified environment as just that, enhancements to an environment
  316. that was deliberately selected to support portability of applications.
  317. If a standard includes a too-specific methodology, it actually will
  318. adversely constrain application portability.
  319.  
  320. By the way, I could use more information about API's XVT.  How can
  321. I obtain it?
  322.  
  323. Volume-Number: Volume 18, Number 13
  324.  
  325. shar.overview.a.29391
  326. echo overview.b
  327. cat >overview.b <<'shar.overview.b.29391'
  328. From jsq@longway.tic.com  Tue Jan  9 09:38:39 1990
  329. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  330.     id AA02369; Tue, 9 Jan 90 09:38:39 -0500
  331. Posted-Date: 8 Jan 90 21:40:19 GMT
  332. Received: by cs.utexas.edu (5.59/1.46)
  333.     id AA03507; Tue, 9 Jan 90 08:38:17 CST
  334. Received: by longway.tic.com (4.22/4.16)
  335.     id AA08449; Tue, 9 Jan 90 07:21:48 cst
  336. From: John S. Quarterman <usenix.org!jsq@longway.tic.com>
  337. Newsgroups: comp.std.unix
  338. Subject: Re: Standards Update, USENIX Standards Watchdog Committee
  339. Message-Id: <504@longway.TIC.COM>
  340. References: <500@longway.TIC.COM>
  341. Sender: std-unix@longway.tic.com
  342. Reply-To: John S. Quarterman <jsq@usenix.org>
  343. Organization: Ballistic Research Lab (BRL), APG, MD.
  344. Date: 8 Jan 90 21:40:19 GMT
  345. Apparently-To: std-unix-archive@uunet.uu.net
  346.  
  347. From: John S. Quarterman <jsq@usenix.org>
  348.  
  349. In article <500@longway.TIC.COM> Doug Gwyn <gwyn@smoke.brl.mil> writes
  350.  
  351. >>A key to success will be keeping enough of the original dot one
  352. >>participants available and active to insure consistency.
  353.  
  354. >Good luck with this.  Personally, I couldn't afford to pay the dues
  355. >and limited my membership to 1003.2 once Std 1003.1-1988 was published.
  356.  
  357. I will add the possibility of subsidising some IEEE group memberships
  358. (mailing list subscriptions) to the annual standards proposal I'm writing
  359. for the USENIX board meeting at the end of the month.
  360.  
  361. >>X3J11
  362. >>A single individual, Russell Hansberry, is blocking the official
  363. >>approval of the ANSI standard for C on procedural grounds.  At some
  364. >>point, someone failed to comply with the letter of IEEE rules for
  365. >>ballot resolution.  and Hansberry is using the irregularity to delay
  366. >>adoption of the standard.
  367.  
  368. >This is misstated.  IEEE has nothing to do with X3J11 (other than
  369. >through the 1003.1/X3J11 acting liaison, at the moment yours truly).
  370.  
  371. You're right.  As publisher, I should have caught that.
  372. Thanks for the clarifications and updates on the situation.
  373.  
  374. >There is no doubt a need for X standardization, but it makes no
  375. >sense to bundle it in with POSIX.
  376.  
  377. Technically, it isn't POSIX.  That's why it's IEEE 1201, not IEEE 1003.
  378. However, since 1201 seems to always meet concurrently with 1003, I'm
  379. not sure what practical difference there is.
  380.  
  381. >Someone smart has already shown us better ways to do graphics.
  382. >(If you've been reading ACM TOG and the USENIX TJ, you should have
  383. >already seen some of these.)
  384.  
  385. Could you be talked into posting a summary article on this?
  386.  
  387. >By the way, I could use more information about API's XVT.  How can
  388. >I obtain it?
  389.  
  390. If no one else posts information on this, I will dig it up and do so.
  391. There have been papers on XVT in the Brussels EUUG Conference Proceedings
  392. (April 1989) and the Baltimore USENIX Conference Proceedings (June 1989).
  393. Naturally, those seem to be the two volumes missing from my shelf.
  394.  
  395.  
  396. As moderator of the newsgroup, I would ordinarily have waited a few
  397. days before replying on the above subjects, so that other people would
  398. have a chance first.  However, I'm leaving tomorrow morning for New Orleans,
  399. so I thought it best to respond now.  Jeff Haemer is already there, so you
  400. may not hear more from him this week.
  401.  
  402. I hope to hear more discussion on Jeff's and Doug's points.
  403.  
  404. Volume-Number: Volume 18, Number 14
  405.  
  406. shar.overview.b.29391
  407. echo overview.c
  408. cat >overview.c <<'shar.overview.c.29391'
  409. From uucp@longway.tic.com  Thu Jan 11 11:23:14 1990
  410. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  411.     id AA01645; Thu, 11 Jan 90 11:23:14 -0500
  412. Posted-Date: 11 Jan 90 09:38:05 GMT
  413. Received: by cs.utexas.edu (5.59/1.46)
  414.     id AA22970; Thu, 11 Jan 90 10:22:56 CST
  415. Received: by longway.tic.com (4.22/4.16)
  416.     id AA12223; Thu, 11 Jan 90 08:22:19 cst
  417. From: Jim Kingdon <ai.mit.edu!kingdon@longway.tic.com>
  418. Newsgroups: comp.std.unix
  419. Subject: Standards Update, USENIX Standards Watchdog Committee
  420. Message-Id: <7551@cs.utexas.edu>
  421. Sender: cs.utexas.edu!fletcher@longway.tic.com
  422. Reply-To: kingdon@ai.mit.edu (Jim Kingdon)
  423. Date: 11 Jan 90 09:38:05 GMT
  424. Apparently-To: std-unix-archive@uunet.uu.net
  425.  
  426.  
  427.     Cc has been renamed c89, and lint may become lint89.
  428.  
  429. Lint isn't in 1003.2 draft 9 (at least it's not in the index).
  430. The name 'c89' is harmless, provided all implementors are sensible
  431. enough to provide a 'cc' as well (in many cases these will be
  432. different--c89 has to be ANSI but cc might contain ANSI-prohibited
  433. extensions).  
  434.  
  435.  
  436. Volume-Number: Volume 18, Number 17
  437.  
  438. shar.overview.c.29391
  439. echo 1003.4.a
  440. cat >1003.4.a <<'shar.1003.4.a.29391'
  441. From jsq@longway.tic.com  Sat Dec  9 15:22:50 1989
  442. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  443.     id AA20243; Sat, 9 Dec 89 15:22:50 -0500
  444. Posted-Date: 8 Dec 89 22:52:56 GMT
  445. Received: by cs.utexas.edu (5.59/1.45)
  446.     id AA23104; Sat, 9 Dec 89 14:22:43 CST
  447. Received: by longway.tic.com (4.22/4.16)
  448.     id AA04718; Sat, 9 Dec 89 13:07:06 cst
  449. From: <utzoo!henry@longway.tic.com>
  450. Newsgroups: comp.std.unix
  451. Subject: Re: Standards Update, IEEE 1003.4: Real-time Extensions
  452. Message-Id: <469@longway.TIC.COM>
  453. References: <465@longway.TIC.COM>
  454. Sender: std-unix@longway.tic.com
  455. Reply-To: utzoo!henry@cs.utexas.edu
  456. Date: 8 Dec 89 22:52:56 GMT
  457. Apparently-To: std-unix-archive@uunet.uu.net
  458.  
  459. From: henry@utzoo.uucp
  460.  
  461. >From: Jeffrey S. Haemer <jsh@usenix.org>
  462. >[threads vs signals] In fact,
  463. >I think the early, simpler versions of signal() look a lot like what's
  464. >needed (around V6 or so)...
  465.  
  466. Actually, it can be simpler yet, as Waterloo's Thoth system showed.
  467. Subject to some sort of suitable protections (perhaps including a way
  468. to ignore signals), when a thread receives a signal, it drops dead.
  469. No signal handlers or blocking.  If you want some sort of recovery
  470. action, have another thread waiting for the first one to die:  it has
  471. access to all the first thread's data, so it can do whatever recovery
  472. is appropriate.
  473.  
  474.                                      Henry Spencer at U of Toronto Zoology
  475.                                  uunet!attcan!utzoo!henry henry@zoo.toronto.edu
  476.  
  477. Volume-Number: Volume 17, Number 96
  478.  
  479. shar.1003.4.a.29391
  480. echo 1003.6.a
  481. cat >1003.6.a <<'shar.1003.6.a.29391'
  482. From jsq@longway.tic.com  Wed Dec 13 13:01:18 1989
  483. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  484.     id AA23938; Wed, 13 Dec 89 13:01:18 -0500
  485. Posted-Date: 12 Dec 89 17:15:58 GMT
  486. Received: by cs.utexas.edu (5.59/1.45)
  487.     id AA04767; Wed, 13 Dec 89 12:01:12 CST
  488. Received: by longway.tic.com (4.22/4.16)
  489.     id AA04698; Wed, 13 Dec 89 11:24:16 cst
  490. From: Badger BA 64810 <x102c.harris-atd.com!bbadger@longway.tic.com>
  491. Newsgroups: comp.std.unix
  492. Subject: chmod and ACLs (was Re: Standards Update, IEEE 1003.6: Security Extensions)
  493. Summary: For compatibility, chmod needs to be treated as a special case
  494. Message-Id: <473@longway.TIC.COM>
  495. References: <467@longway.TIC.COM>
  496. Sender: std-unix@longway.tic.com
  497. Reply-To: bbadger@x102c.harris-atd.com (Badger BA 64810)
  498. Organization: Harris GISD, Melbourne, FL
  499. Date: 12 Dec 89 17:15:58 GMT
  500. Apparently-To: std-unix-archive@uunet.uu.net
  501.  
  502. From: bbadger@x102c.harris-atd.com (Badger BA 64810)
  503.  
  504. In article <467@longway.TIC.COM> std-unix@uunet.uu.net writes:
  505. >From: Jeffrey S. Haemer <jsh@usenix.org>
  506. [...]
  507. >Ana Maria de Alvare <anamaria@lll-lcc.llnl.gov> reports on the October
  508. >16-20, 1989 meeting in Brussels, Belgium:
  509. [...]
  510. >Discretionary Access Control (DAC)
  511. >
  512. [...]
  513. >It was noted that the current proposed Access Control List (ACL) might
  514. >not be fully compatible with the current behavior of a 'chmod' call.
  515.   It definitely isn't!
  516. >ACL, a 'chmod' will provide the old behavior for the "owner" and
  517. >"other" fields, but the "group" field permissions as set by 'chmod'
  518. >and shown by 'stat', wouldn't represent the actual access permissions
  519. >of the group associated with that file; instead, it's a summary of all
  520. >access permissions included under the ACL list for group entries.  In
  521. >other words, it would represent the maximum permissions allowed to the
  522. >group entries included in the ACL list.
  523. Unfortunately, under this scheme it is impossible for ``old style'' 
  524. programs to get the access checks they want.  For example,
  525.  chmod(rw-r--r--) with an ACL for JOE:rw present results in rw-rw-r--,
  526. granting the entire file-group write access!  This is not what was
  527. wanted.  
  528. >
  529. >Some participants argued that 'chmod' should be replaced by other
  530. >system calls in a system conforming to 1003.6.  In other words, if
  531. >your system were to conform to 1003.6 the behavior of chmod would be
  532. >unspecified and unpredictable.
  533. >
  534. >I disagree.  Although defining the behavior of 'chmod' might restrict
  535. >some implementations of ACLs, having a well-defined chmod behavior
  536. >will provide backward compatibility and ease porting old programs to
  537. >1003.6-conformant systems.  Otherwise old programs will have to be
  538. >ported to platforms with system-dependent representations of 'chmod'
  539. >and 'stat' information.
  540. [...]
  541.  
  542. I'm with you on this.  The Harris Compartmented Mode Workstation
  543. provides the file with a ``compatibility flag'' which indicates
  544. whether the last DAC operation on the file was ``old-unix''
  545. (open,create, or chmod) or ACL-smart (sec_open, sec_create, or
  546. set_acl).  If the last operation was not ACL-smart, all ACL entries
  547. which may be present (from previous set_acl() or through default ACLs)
  548. are masked by the ``others'' permission bits on the file.  (I've seen
  549. the ``rationale'' for masking with the ``group'' permissions, but it
  550. just doesn't reflect what someone who is setting rw-rw-r-- is trying
  551. to do!)
  552.  
  553. The ACLs are still present, and can be made effective by doing a set_acl
  554. on the file.  This sheme provides a compatibilty which only restricts 
  555. those in the ``others'' category, and respects the choice of chmod in the
  556. ``user'' and ``group'' categories.
  557.  
  558. (There are other features, such as exclusionary, control, and default 
  559. attributes, but that's another topic.   BTW, Addamax corp. is 
  560. our teammate and handles the marketing, so don't send me any inquiries,
  561. please.)
  562.     -----    -    -    -    -    -    -    -    ----
  563. Bernard A. Badger Jr.    407/984-6385          |``Get a LIFE!''  -- J.H. Conway
  564. Harris GISD, Melbourne, FL  32902             |Buddy, can you paradigm?
  565. Internet: bbadger%x102c@trantor.harris-atd.com|'s/./&&/g' Tom sed expansively.
  566.  
  567. Volume-Number: Volume 17, Number 100
  568.  
  569. shar.1003.6.a.29391
  570. exit
  571.