UNIX-WIZARDS Digest V6#041

postmaster at nssdca.gsfc.nasa.gov postmaster at nssdca.gsfc.nasa.gov
Fri Dec 9 23:18:51 AEST 1988


 *** VMS error in delivery mail, error message follows *** 

EXOS Mail server: delivery error: %MAIL-E-OPENOUT, error opening NCF_VAXPERTS:[PIPES]MAIL$00040091D10E8097.MAI; as output
EXOS Mail server: delivery error: -RMS-E-CRE, ACP file create failed_VAXPERTS:[PIPES]MAIL$00040091D10E8097.MAI; as output
EXOS Mail server: delivery error: -SYSTEM-F-EXDISKQUOTA, disk quota exceededS:[PIPES]MAIL$00040091D10E8097.MAI; as output
EXOS Mail server: delivery error: 
%MAIL-E-OPENOUT, error opening NCF_VAXPERTS:[PIPES]MAIL$00040091D10E8097.MAI; as output
-RMS-E-CRE, ACP file create failed
-SYSTEM-F-EXDISKQUOTA, disk quota exceeded

 *** Original message follows *** 

>From : UNIX-WIZARDS at BRL.MIL
Subject:     UNIX-WIZARDS Digest  V6#041

Return-path: <unix-wizards-request at sem.brl.mil>
Received: from SEM.BRL.MIL by nssdca.GSFC.NASA.GOV
          id 20408412002 ; Fri,  9 Dec 88 07:38:41 EST
Received:  from SEM.BRL.MIL by SEM.BRL.MIL id af01913; 7 Dec 88 9:58 EST
Received:  from sem.brl.mil by SEM.BRL.MIL id aa29933; 7 Dec 88 2:46 EST
Date:        Wed, 07 Dec 88 02:45:42 EST
From:        The Moderator (Mike Muuss) <Unix-Wizards-Request at BRL.MIL>
To:          UNIX-WIZARDS at BRL.MIL
Reply-To:    UNIX-WIZARDS at BRL.MIL
Message-ID:   <8812070246.aa29933 at SEM.BRL.MIL>

UNIX-WIZARDS Digest          Wed, 07 Dec 1988              V6#041

Today's Topics:
                           Re: Cshell Anomaly
           Re: how do I tell the size of a pseudoterm window?
                       Re: Weird Problem with cat
                 Compaq Tape Drive under Bell Tech Unix
                   Re: Autologout of unused terminals
                 Re: random passwords (was Re: Worm...)
                Re: Here's a *BRILLIANT* password idea!
              C code formats (was: Latest indent request)
                        Re: using System V 'cu'
               Re: Trojan horse FIX for Rnmail and Pnews
                  Re: Testing for non-empty wildcards
                   Re: Autologout of unused terminals
              Re: Trojan horse possible with news readers
               Re: Trojan horse FIX for Rnmail and Pnews
                           Re: Cshell Anomaly
           Re: how do I tell the size of a pseudoterm window?
                          Re: Zombie Processes
           Re: how do I tell the size of a pseudoterm window?
                 Re: random passwords (was Re: Worm...)
                    opening telnet virtual circuits.
                                Re: Echo
                       character input in curses
           (argh!) Better Trojan horse fix for Rnmail & Pnews
                    Needed: info on 8mm tape drives
                 how do I set non-rlogin window params?
                           Re: /etc/failures
                           Re: Cshell Anomaly
                     Indenting and alignment style
                      Re^2: Latest indent request
                        Source Management System
                            A User Database
                              NFS security
                       Re: Latest indent request
                  Meta: "Crackers and Worms" Articles

-----------------------------------------------------------------

From: "Richard A. O'Keefe" <ok at quintus.uucp>
Subject: Re: Cshell Anomaly
Date: 6 Dec 88 02:21:35 GMT
Sender: news at quintus.uucp
Keywords: csh
To:       unix-wizards at sem.brl.mil

In article <599 at mqcomp.oz> martin at mqcomp.oz (Martin Foord) writes:
>How does one get an asterisk '*' in a csh variable ?
	set x=\*
	set x="*"
	set x='*'
	set x=$<
	*
All work.  To verify this, try
	echo "$x"
after each one.  _Don't_ try
	echo $x
as filename generation is done after variable substitution.
(Tested in DYNIX 4.2BSD, SunOS3.2, System V.3/386.)

-----------------------------

From: Michael "Ford" Ditto <ditto at cbmvax.uucp>
Subject: Re: how do I tell the size of a pseudoterm window?
Date: 6 Dec 88 04:58:53 GMT
Keywords: window standards layers xt
To:       unix-wizards at sem.brl.mil

In article <9042 at smoke.BRL.MIL> gwyn at brl.arpa (Doug Gwyn (VLD/VMB) <gwyn>) writes:
>It is true that a layer is rather different from other systems' notions
>of what a window is, but UNIX System V does have window size information
>set/get ioctls.  See <sys/jioctl.h>.

You seem to be implying that the layers/xt system is an integral part
of System V or the SysV tty interface.  I don't think this is the case.

Do you think that a windowing system running on SysVr3 should support
the layers/xt ioctl for window size?  (I don't mean whether it should
allow such a function, just whether it should use the same ioctl
command code and return the same data structure.)

This question has come up with regard to Commodore's proprietary
windowing system for Amiga Unix (SysVr3); comments are welcome.
-- 
					-=] Ford [=-

"The number of Unix installations	(In Real Life:  Mike Ditto)
has grown to 10, with more expected."	ford at kenobi.cts.com
- The Unix Programmer's Manual,		...!sdcsvax!crash!elgar!ford
  2nd Edition, June, 1972.		ditto at cbmvax.commodore.com

-----------------------------

From: Michael "Ford" Ditto <ditto at cbmvax.uucp>
Subject: Re: how do I tell the size of a pseudoterm window?
Date: 6 Dec 88 05:11:57 GMT
Keywords: layers xt
To:       unix-wizards at sem.brl.mil

In article <577 at auspex.UUCP> guy at auspex.UUCP (Guy Harris) writes:
>	   (I presume you can, under layers, somehow arrange
>	   to run a program on a machine other than the one to which
>	   your layers terminal is connected and have it interact
>	   with layers just as if it were running on that machine; if
>	   not, X11 does a *better* job than layers does in that
>	   instance.)

I disagree.  An X11 application can not do its display on a machine
to which it is not connected, either; I think your complaint about
layers is more about the fact that layers is usually run over a
direct serial link, and X is usually run over a (multiple-machine)
network.  Both systems require a virtual 8-bit flow-controlled data
path between the display server and the application, and I think
they are very similar in that respect.

I think the layers protocol is a bit intertwined with the underlying
"xt" protocol, so it may have a slight deficiency there (experts,
please correct as needed).
-- 
					-=] Ford [=-

"The number of Unix installations	(In Real Life:  Mike Ditto)
has grown to 10, with more expected."	ford at kenobi.cts.com
- The Unix Programmer's Manual,		...!sdcsvax!crash!elgar!ford
  2nd Edition, June, 1972.		ditto at cbmvax.commodore.com

-----------------------------

From: Michael "Ford" Ditto <ditto at cbmvax.uucp>
Subject: Re: Weird Problem with cat
Date: 6 Dec 88 05:31:34 GMT
Keywords: error reporting
To:       unix-wizards at sem.brl.mil

In article <360 at stca77.stc.oz> peter at stca77.stc.oz (Peter Jeremy) writes:
>In article <134 at minya.UUCP> jc at minya.UUCP (John Chambers) writes:
>>It's especially annoying to be told that a program failed because of
>>"Permission denied", and not be told what the problem is.
>
>This leads one into the area of whether you want a secure system or
>a friendly/usable one.  If you want a really secure system, you don't
>want to tell the users what went wrong, because if they were permitted
>to do it, they wouldn't have gotten the message.  If they are violating
>security, any information you give them might help them to get around
>the security system.

Although you are right in the particular example of "Permission denied",
I think the original complaint was about error reporting in general,
not reporting of security violations.

This is a particular pet peeve of mine, and I always make it a point
to call perror() with the name of the program, and a description of
the operation that failed.  A *minimal* error message should be
something like:

	$ cat foo
	cat: can't open "foo": Permission denied

yet, on many systems, the above command would print out

	foo: Permission denied
or
	cat: can't open input.
or
	cat: Permission denied,

none of which is very useful, and some of them can be quite misleading.
The first message, for example, seems to be from a program called "foo",
and the last one makes it appear that the user doesn't have permission
to run the cat program.
-- 
					-=] Ford [=-

"The number of Unix installations	(In Real Life:  Mike Ditto)
has grown to 10, with more expected."	ford at kenobi.cts.com
- The Unix Programmer's Manual,		...!sdcsvax!crash!elgar!ford
  2nd Edition, June, 1972.		ditto at cbmvax.commodore.com

-----------------------------

From: James Carter <jac at penguin.uucp>
Subject: Compaq Tape Drive under Bell Tech Unix
Date: 4 Dec 88 21:23:24 GMT
Keywords: Compaq Bell-Tech UNIX
To:       unix-wizards at sem.brl.mil

I am trying to bring up Locus' MERGE 386 with Bell Tech UNIX on a Compaq
386 Deskpro (16mhz) and am doing pretty good except for the gottcha....

There seems to be no tape driver in Bell Techs Unix for the internal 40mb
Compaq Tape Drive. It appears to be driven off of the floppy disk controller
board with some rather unusual method of motor/head step control.

I hope that someone in netland has solved this problem (ie can tell me how
or where to find a driver for this thing) or knows someone else who has.

Any assistance would be GREATLY appreciated since Locus Computing has been
trying to fix it with a DOS patch for the last 3 months...it doesn't work
yet!

Oh yes, Bell Tech is no help; to quote them "contact the vendor (Locus) that
you bought it from, they should be able to help you".

My daytime voice phone is (918) 252-5791 x 28.


-- 
==========================================================================
James A. (JC) Carter				|
Penguin Business Systems, Inc.			|   When in doubt..
UUCP:  ..!okstate!romed!penguin!jac		|	SWAP it out..

-----------------------------

From: Mike McNamara <mac at ardent.uucp>
Subject: Re: Autologout of unused terminals
Date: 6 Dec 88 04:39:47 GMT
To:       unix-wizards at sem.brl.mil

In article <213.nlunix6 at orcenl.uucp> bengsig at orcenl.uucp (Bjorn Engsig) writes:
>What I asked for in the first place was just a program to send SIGHUP to
>processes, which seemed to be doing nothing.  There will of course always
>be cases where this 'seems' is wrong, but a process that wants to live could
>easily do signal(SIGHUP,handler) (or nohup).  When doing this, you show that
>you are aware of the possible 'auto-killing', and you will be sure not to be
>killed.  This is also a nice thing to do on a modem line.

	Hmmm.  What is the phone number to your system?  You actually
ignore SIGHUP on dialup lines?  I'll just try your phone number every once
in a while (ok, I'll get a friend on the continent to try...) until I get in
just after you turn your home modem or terminal off without logging out.
	No need for a virus!  (It especially helps if you leave backgrounded
su shells... or games with high scores are good too!)

	Note: a good 15% of the bandwidth on the SYTEX network at
school went into programs the students wrote to echo ^@ at their 
terminals every 30 seconds so the SYTEX wouldn't drop their line.  
This wasn't due (only) to students wishing to hog terminal lines.

	The Unix systems hooked up to this terminal server ignored DTR.
In fact DTR was wired high on the back of the VAXen. (Or perhaps the DZ/DH
or what ever didn't do modem control.) Hence defeating the auto-disconnect 
`feature' of the terminal network was required to maintain the security 
of your account.  If the SYTEX dropped your line, Unix ignored (never saw)
HUP.  The next user, *ANYWHERE ON CAMPUS*, who connected to the same machine
via the switcher, got your existing login.  Pity the poor system manager, 
connected through the SYTEX, who pauses to answer a users question... 
*DISCONNECT*.  Across campus, the student's buddy, CONNECTS.  His terminal
prints

# 

Moral dilema.

Stupid site configuration.
(Of course the Unix admin's inherited the hardware with it's DTR ignorant
terminal multiplexors, and the guys in the IBM shop owned the SYTEX...)

-----------------------------

From: Daniel Ray <norstar at tnl.uucp>
Subject: Re: random passwords (was Re: Worm...)
Date: 5 Dec 88 21:24:10 GMT
To:       unix-wizards at sem.brl.mil

In article <9119 at rpp386.Dallas.TX.US>, jfh at rpp386.Dallas.TX.US (The Beach Bum) writes:
> > and grep the password file why is everyone so sure that a mainframe
> > cannot be used to reverse the encryption routine?
> 
> The former is much simpler than the later.  I can encrypt a dictionary on
> an unused PC running UNIX.  Trying to reverse [ brute-force decrypt is
> more like it ] a password on a PC would take significantly more time than
> you or I have on this earth.
> -- 
> John F. Haugh II                        +-Cat of the Week:--------------_   /|-

Correct me if I'm wrong, but I recall reading one of the old UNIX abstracts
(in the back of "UNIX System Security" by Wood & Kochan, Hayden Books) that
states that the crypt() routine IRREVERSIBLY encrypts a password. As a trivial
example: lets say we encrypt the alphabet..A is mapped to B, B to C, C to D,
etc, except that both Y and Z are  mapped to Z. The encrypted text of the
word "ZOO" would be "ZPP". Easy to do. However, by knowing that the ciphered
text is "ZPP", can one reverse it? No, because both "ZOO" and "YOO" encrypt
to that. I thought crypt() was like this in a much more sophisticated way,
and that there exists the remote but theoretical possibility of password
collision (two different passwords encrypting to the same string using the
same salt).

Is this true, or am I all mixed up :@) !!

norstar
The Northern Lights, Burlington Vermont               |     
tnl dialins: 802-865-3614 at 300-2400 bps.          ` | /   
 ------------------------------------------        --- * --- 
uucp: uunet!uvm-gen!tnl!norstar or                  / | .   
{decvax,linus}!dartvax!uvm-gen!tnl!norstar            |     

-----------------------------

From: Nick Crossley <nick at ccicpg.uucp>
Subject: Re: Here's a *BRILLIANT* password idea!
Date: 5 Dec 88 22:30:34 GMT
To:       unix-wizards at sem.brl.mil

In article <1096 at murtoa.cs.mu.oz.au> glf at munnari writes:
>From article <43034 at ccicpg.UUCP>, by nick at ccicpg.UUCP (Nick Crossley):
>> I have often wondered about the four-digit limit anyway - surely even some
>> branches must have close to 9999 accounts, let alone whole banks.  That does
>> make the code number very unique.
>
>Passwords never need be too unique as they are tied to the id of the requester
>and the methodolgy used to gain access to the protected enviroment.
>For ATM's the four digit number is reasonable
>

and another poster made a similar comment.  This does not make me feel any
happier.  If the password is not sufficiently unique, it has little value.
If all passwords were the same (the digit '1'), then loss of your ATM card
would be serious, as any person finding it could use it.  If all passwords were
drawn from a sufficiently small set, then the same applies.  This is more or
less what the Unix password debates have been about, and (presumably) what led
the original poster to comment on ATM systems.  We are trying to encourage
Unix users to use non-obvious passwords from a potentially very large set,
and there are versions of passwd which try to ensure the user does not limit
himself to a small alphabet.  At the same time, here is a much larger user base
than Unix users, trusting money to a very small password set.

I realise that there are differences; Unix users choose their own (easily
guessed) passwords, banks/computers choose those for ATMs, etc.  But...
-- 

<<< standard disclaimers >>>
Nick Crossley, CCI, 9801 Muirlands, Irvine, CA 92718-2521, USA
Tel. (714) 458-7282,  uucp: ...!uunet!ccicpg!nick

-----------------------------

From: Maarten Litmaath <maart at cs.vu.nl>
Subject: C code formats (was: Latest indent request)
Date: 5 Dec 88 20:11:39 GMT
To:       unix-wizards at sem.brl.mil

gwyn at smoke.BRL.MIL (Doug Gwyn ) writes:

\In article <1748 at solo3.cs.vu.nl> maart at cs.vu.nl (Maarten Litmaath) writes:
\>gaspar at almsa-1.arpa (Al Gaspar) writes:
\>\	if (test)
\>\		{
\>\		whatever;
\>\		}
\>What a DISGUSTING format!

\Most programmers I know that have tried vertical alignment of braces
\for a while have come to prefer that to the style in K&R.  With "sam"
\the K&R style becomes acceptable because it is easy to find the
\matching brace.  In any case, when modifying existing code we use the
\same style as in the existing code, whatever it may be (unless the
\code is totally misformatted, in which case we beautify it first).

Right.

\>I've included Henry Spencer's `Ten Commandments for C Programmers';
\>special attention to point 8, please.

\Henry is a nice enough guy, but he's not God (in fact the first
                                 ^^^^^^^^^^^^
\attribute probably precules the second).

What!? Thank you very much! You've just managed to destroy my world! :-)
Seriously, I think Henry has marked a few things, that a lot of experienced
C programmers value a lot. They're not just his personal views.
-- 
fcntl(fd, F_SETFL, FNDELAY):          |Maarten Litmaath @ VU Amsterdam:
      let's go weepin' in the corner! |maart at cs.vu.nl, mcvax!botter!maart

-----------------------------

From: "a.v.reed" <avr at mtgzz.att.com>
Subject: Re: using System V 'cu'
Date: 5 Dec 88 22:42:35 GMT
To:       unix-wizards at sem.brl.mil

In article <575 at auspex.UUCP>, guy at auspex.UUCP (Guy Harris) writes:
< >(avr) The code for ~+ is #ifdef'ed in the HDB cu source. If you have
< > HDB source, just remake cu with the appropriate -D option.
< 
< Unfortunately, many (quite possibly "most") people with HDB binaries do
< not have HDB source....
< 
< The "#ifdef" symbol is "forfutureuse".  Eventually, "future" becomes
< "present"; what is the event being waited for here?  Is there something
< about it that doesn't work, or is somebody just chicken**** about
< enabling it?

No, there's nothing about it that doesn't work. It has been in use for 6
years now by people who have known about it, and has worked fine for all
of them - not a single MR on it to date. As for what is holding back the
people who decide about externally distributed UNIX(R), I can only
guess, since I'm not one of them. My guess is that it is a standards
issue: they're waiting for code merger with SUN/BSD, and the analogous
option in "tip" is called something else. But then, I only work here....

					Adam Reed (avr at mtgzz.ATT.COM)

-----------------------------

From: Guy Harris <guy at auspex.uucp>
Subject: Re: Trojan horse FIX for Rnmail and Pnews
Date: 6 Dec 88 08:27:38 GMT
To:       unix-wizards at sem.brl.mil


 >*** 200,206 ****
 ...
 >! 	${VISUAL-${EDITOR-$defeditor}} $tmpart $oldart
 ...
 >--- 200,206 ----
 ...
 >! 	${VISUAL-${EDITOR-$defeditor}} '+set nomodeline' $tmpart $oldart
 ...

Sorry, wrong answer.

*I* set EDITOR to "(appropriate directory)/emacs", and it wouldn't like
"+set nomodeline" at all.

For that matter, I don't remember whether the older (e.g., 4.2BSD)
versions of "vi" had a "nomodeline" option.

And, even though the S5R3 one has an option like that, it calls it
"modelines", not "modeline", sigh.  (Since I think AT&T's "vi" derives
from one of around 4.2BSD vintage, this suggests that there might not
have been such an option in the 4.2BSD one, and that AT&T and Berkeley
added it independently.)

If you insist on sticking "+set nomodeline" here, rather than in the
user's ".exrc" where it belongs (there are plenty of other files that
could contain modelines, and that could really screw up things; at least
one file that often contains the magic nasty sequences is
"/etc/passwd"), make sure 1) it *only* does so if the last component of
the editor's name is "ex" or "vi" and 2) that it's easily configurable,
so you can support

	1) 4.3BSD systems with "modeline"

	2) S5R3 systems with "modelines"

	3) other systems with neither

-----------------------------

From: Shankar Unni <shankar at hpclscu.hp.com>
Subject: Re: Testing for non-empty wildcards
Date: 5 Dec 88 21:34:31 GMT
To:       unix-wizards at sem.brl.mil

> 	foreach i (sccs/p.*)
> 		set file = something_horrible
> 		delta sccs/s.$file
> 		get sccs/s.$file
> 	end
  ....
> 
>                 set nonomatch
>                 set a = sccs/p.*
>                 if ( "$a" == "sccs/p.*" ) exit 0
> 

Try something a little nicer (if a little more cpu-expensive):

    find sccs -name 'p.*' -exec something_or_other

or

    find sccs -name 'p.*' -print | while read file
	do
	    # list of commands on $file
	done

(/bin/sh or /bin/ksh example)

---
Shankar.

-----------------------------

From: John Furlani <furlani at broadway.uucp>
Subject: Re: Autologout of unused terminals
Date: 5 Dec 88 20:39:49 GMT
To:       unix-wizards at sem.brl.mil


In article <9012 at smoke.BRL.MIL>, gwyn at smoke.BRL.MIL (Doug Gwyn ) writes:
> In article <2682 at sultra.UUCP> dtynan at sultra.UUCP (Der Tynan) writes:
> >Anyway, perhaps you'd like to let me know
> >why it's such a terrible sin to kill these jobs.
> 
> Because any automated scheme you come up is likely to ALSO kill off
> some perfectly legitimate jobs.
> 

There has been quite a bit of chatter over wether to kill or not to kill
idle processes.  I whipped up this little C Shell script that can be used
as an example of how to kill some idle processes and not others.  A users
original shell is marked with a '-' before it.  This can be killed leaving
all background processes intact.  Unfortunately all forground processes
will be killed.  This script has a simple way of checking for these.   
The names of some processes that shouldn't be killed (e.g. vi, kermit) can
be put in a file.

The basic idea is to get the terminals that have been idle for more than
30 minutes and check to see if they're running anything important.  If
they are, don't kill them, if they aren't, kill them.  This could be
run out of cron every half hour or so.

It should be noted that this idea won't work for window systems.  My
original thought was to use it to clear modem tty's since there are
generally fewer of them and the demand is higher.

I hope this has jogged a couple of minds.  I'm not sure how many systems
this script will work for, but the principle should stay the same.  Please
mail me any suggestions or thoughts.


########################################
#     CLEARS TTY OF IDLE USERS
########################################
#
set dkill = 0
set tty_over = `who -u | awk '$6 ~ /:/ {print $2, $6}' | sed 's/0://' |
 awk '$2 > 30 {printf $1" "}'`

foreach tty ($tty_over)
    set proc_name = `ps -ft$tty | sed '1d' | awk '{print $8}'`
    foreach dont (`cat dont`)
	foreach name ($proc_name)
            if($dont == $name) then
		set dkill = 1
	    endif
	end
    end
    if($dkill == 1) then
        echo DONT KILL
        set dkill = 0
    else
	set kill_proc = `ps -ft$tty | sed '1d' | awk '$8 ~ /-csh/ {print $2}'`
	echo KILL $kill_proc
    endif
end

____________
Disclaimer:  "It's Mine! Mine! All Mine!!"
John L. Furlani 
The University of South Carolina, Columbia SC
(...!uunet!ncrlnk!ncrcae!broadway!furlani)

-----------------------------

From: Cory Kempf <cory at gloom.uucp>
Subject: Re: Trojan horse possible with news readers
Date: 6 Dec 88 15:39:03 GMT
To:       unix-wizards at sem.brl.mil

a few days ago, I posted an article in which I implied that it would
be possible to get root access to a machine just by sending mail or
posting an article that was replied to.  This article wasn't supposed
to make it out, but it did anyway.  (damned cancel didn't work)

Anyway, a number of people have written asking how this worked.

the Sysadmin, while not root (UID=user) read news/mail and replies.
the default editor is vi.  The last few lines of the letter/article
contain lines of the sort <e><x><:>cmd<:>.  The last of these lines
causes all lines beginning with <e><x><:> to be deleted.  The rest
create/modify the .exrc file in the CURRENT working directory (if
write access is allowed) to probe for write access to /etc/passwd,
and if it is allowed, include a line like 
"suser::0:0:Super User:/:/bin/csh"
into the /etc/passwd file.  So, when the Sysadmin su's to root, 
and then executes vi, vi looks in the CURRENT working directory for
a file named .exrc, and executes that.

And that is how the vi's modelines bug can be exploited to give root
access even if you never read news/mail as root (nb: instead of modifyin
the /etc/passwd file, it could just check the UID, and if it is 0 do
an 'rm -rf / &'

+C

-- 
Cory (the last person to escape alive from riverside) Kempf
UUCP: encore.com!gloom!cory
	"...it's a mistake in the making."	-KT

-----------------------------

From: David Elliott <dce at mips.com>
Subject: Re: Trojan horse FIX for Rnmail and Pnews
Date: 6 Dec 88 14:33:21 GMT
To:       unix-wizards at sem.brl.mil

In article <6798 at rosevax.Rosemount.COM> merlyn at ernie.rosemount.com writes:
>! 	${VISUAL-${EDITOR-$defeditor}} '+set nomodeline' $tmpart $oldart

Did you test this with emacs?  ed?  Other editors that may not understand
'+set nomodeline'?

Isn't the problem that vi/ex need to be executed specially?  In that
case, a proper way to handle this would be

	TEXTED=${VISUAL-${EDITOR-$defeditor}}
	case "$TEXTED" in
		vi|*/vi|ex|*/ex)
			"$TEXTED" '+set nomodeline' $tmpart $oldart
			;;
		*)
			"$TEXTED" $tmpart $oldart
			;;
	esac

Disclaimers: No, I didn't test this code.  Yes, there may be other
	names for ex/vi I didn't handle.

-- 
David Elliott		dce at mips.com  or  {ames,prls,pyramid,decwrl}!mips!dce
"Did you see his eyes?  Did you see his crazy eyes?" -- Iggy (who else?)

-----------------------------

From: David Elliott <dce at mips.com>
Subject: Re: Cshell Anomaly
Date: 6 Dec 88 14:35:39 GMT
Keywords: csh
To:       unix-wizards at sem.brl.mil

In article <815 at quintus.UUCP> ok at quintus.UUCP (Richard A. O'Keefe) writes:
>In article <599 at mqcomp.oz> martin at mqcomp.oz (Martin Foord) writes:
>>How does one get an asterisk '*' in a csh variable ?
>	set x=\*
 ...
>All work.  To verify this, try
>	echo "$x"
>after each one.  _Don't_ try
>	echo $x
>as filename generation is done after variable substitution.

Another way to get the value out is

	set

(no arguments).  This prints the values of all shell variables
without doing any kinds of substitution.

-- 
David Elliott		dce at mips.com  or  {ames,prls,pyramid,decwrl}!mips!dce
"Did you see his eyes?  Did you see his crazy eyes?" -- Iggy (who else?)

-----------------------------

From: Guy Harris <guy at auspex.uucp>
Subject: Re: how do I tell the size of a pseudoterm window?
Date: 6 Dec 88 18:02:24 GMT
Keywords: window standards layers xt
To:       unix-wizards at sem.brl.mil

>Do you think that a windowing system running on SysVr3 should support
>the layers/xt ioctl for window size?  (I don't mean whether it should
>allow such a function,

I presume you realize that if it supports more than one size of "tty
window" (i.e., window in which you can run a program that wants to talk
to a "dumb" terminal), it should allow such a function.

>just whether it should use the same ioctl command code and return the
>same data structure.)

I think future S5 releases will have TIOCGWINSZ, 4.3BSD-style; you
should probably consider supporting both.

-----------------------------

From: Guy Harris <guy at auspex.uucp>
Subject: Re: how do I tell the size of a pseudoterm window?
Date: 6 Dec 88 18:10:25 GMT
Keywords: layers xt
To:       unix-wizards at sem.brl.mil

>I disagree.  An X11 application can not do its display on a machine
>to which it is not connected, either; I think your complaint about
>layers is more about the fact that layers is usually run over a
>direct serial link, and X is usually run over a (multiple-machine)
>network.

Err, umm, layers can be run on a terminal attached to a machine that is,
in turn, attached to "a (multiple-machine) network", as well; the
question is whether programs on other machines on the network can use
that terminal in the same way that programs on that machine can, in the
same way programs using X can run either on the machine on which the
display server is running (assuming it's not just an "X terminal" not
set up to run applications) or on any machine that can be *logically*
connected, via some kind of network connection, to that machine.

If the answer is "no", then X11 *does* do a better job; however, Doug's
answer seems to be "yes, programs on other machines can do that".

-----------------------------

From: Wonderly <gregg at ihlpb.att.com>
Subject: Re: Zombie Processes
Date: 6 Dec 88 16:07:31 GMT
To:       unix-wizards at sem.brl.mil

>From article <17712 at adm.BRL.MIL>, by worms-emh1.army.mil>@adm.BRL.MIL:
> I am running UNIX System V on a Unisys (Sperry) 5000/80 series mini, and
> ...
> Periodically, and with no discernable pattern, the getty running
> on the host system will lock up and not respond to our attempts to connect,
> either via the MMDF II deliver daemon or the CU command.  When this happens,
> nothing short of rebooting the host system seems to be able to kill the
> process.

Problems with SYS5 tty ports, like this, are usually solved with the TCFLSH
ioctl.  TCFLSH will wake the process so that it can die.

Below is a program which exercises TCFLSH on the files given on the command
line.  Use "flush /dev/ttyxxxx" to flush ttyxxxx.

========  flush.c  =======
#include <stdio.h>
#include <sys/types.h>
#include <sys/termio.h>

main (argc, argv)
	int argc;
	char **argv;
{
	int fd, i;

	if (argc < 2) {
		fprintf (stderr, "usage: %s tty-devs\n", argv[0]);
		exit (1);
	}

	/*  Process each of the tty devices given.  */

	for (i = 1; i < argc; ++i) {

		/*  Open a file to the device.  */

		if ((fd = open (argv[i], 2)) == -1) {
			perror (argv[1]);
			exit (1);
		}

		/*
		 *  Flush the terminal, as a side effect, sleeping processes
		 *	will be woke up.
		 */

		if (ioctl (fd, TCFLSH, 0) == -1) {
			perror ("TCFLSH");
			exit (1);
		}
		close (fd);
	}

	return (0);
}
-- 
It isn't the DREAM that NASA's missing...  DOMAIN: gregg at ihlpb.att.com
It's a direction!                          UUCP:   att!ihlpb!gregg

-----------------------------

From: Doug Gwyn  <gwyn at smoke.brl.mil>
Subject: Re: how do I tell the size of a pseudoterm window?
Date: 6 Dec 88 22:12:41 GMT
To:       unix-wizards at sem.brl.mil

In article <7082 at chinet.chi.il.us> les at chinet.chi.il.us (Leslie Mikesell) writes:
-If AT&T really wanted people to use layers (and buy their terminals that
-know about them) they might try supplying an emulator for a layering
-terminal as a standard part of the 6386 SysVr3 that would run on the
-console.

Particularly since a PC-LAYERS is rumored to have existed for some time now.

-----------------------------

From: Doug Gwyn  <gwyn at smoke.brl.mil>
Subject: Re: how do I tell the size of a pseudoterm window?
Date: 6 Dec 88 22:22:21 GMT
Keywords: window standards layers xt
To:       unix-wizards at sem.brl.mil

In article <5444 at cbmvax.UUCP> ditto at cbmvax.UUCP (Michael "Ford" Ditto) writes:
>Do you think that a windowing system running on SysVr3 should support
>the layers/xt ioctl for window size?  (I don't mean whether it should
>allow such a function, just whether it should use the same ioctl
>command code and return the same data structure.)

Sure.  I emulate the jioctl window size stuff for the System V environment
on 4.nBSD using the native TIOC[GS]WINSZ, for example.  The numeric
ioctl value is not important, but if other software on the system knows
about the xt ioctls then you'd need to handle the emulation in the
kernel instead of at the program/OS interface level.

The really interesting question is, what should sort-of-UNIX-portable
source code do to cope with the three major (and several minor) variations
on this theme?  It's made worse by the inability to test for the presence
of header files such as <sys/jioctl.h>.

-----------------------------

From: Doug Gwyn  <gwyn at smoke.brl.mil>
Subject: Re: how do I tell the size of a pseudoterm window?
Date: 6 Dec 88 22:24:17 GMT
Keywords: layers xt
To:       unix-wizards at sem.brl.mil

In article <5445 at cbmvax.UUCP> ditto at cbmvax.UUCP (Michael "Ford" Ditto) writes:
>I think the layers protocol is a bit intertwined with the underlying
>"xt" protocol, so it may have a slight deficiency there (experts,
>please correct as needed).

The protocol layers are fairly cleanly separated, but the multiplexing
only allows for 8 channels (one of them used for layer system control),
which is a definite deficiency.

-----------------------------

From: Doug Gwyn  <gwyn at smoke.brl.mil>
Subject: Re: random passwords (was Re: Worm...)
Date: 6 Dec 88 22:26:02 GMT
To:       unix-wizards at sem.brl.mil

In article <120 at tnl.UUCP> norstar at tnl.UUCP (Daniel Ray) writes:
>However, by knowing that the ciphered text is "ZPP", can one reverse it?
>No, because both "ZOO" and "YOO" encrypt to that.

For purposes of obtaining a usable password, either would do.

-----------------------------

From: "William C. VerSteeg" <dnwcv at dcatla.uucp>
Subject: opening telnet virtual circuits.
Date: 6 Dec 88 21:19:12 GMT
To:       unix-wizards at sem.brl.mil


We are trying to offload serial ports from SUN workstations. To this end,
I am trying to find out how to use a TCP/IP/Telnet terminal server
as a print device. I know how to set the box up, and can call
from the SUN to the server using Telnet. 

What I can't figure out is how to make my print deamon open (and
possibly re-open after a failure) the pseudo-ttyport. i.e. I want 
the printer run off of ttyp0 instead of ttya0.

Any pointers to documentation or script files would be appreciated.

Thanks 
Bill VerSteeg

-----------------------------

From: Geoff Clare <gwc at root.co.uk>
Subject: Re: Echo
Date: 5 Dec 88 10:45:09 GMT
To:       unix-wizards at sem.brl.mil

In article <14799 at mimsy.UUCP> chris at mimsy.UUCP (Chris Torek) writes:
>
>Have echo work as in BSD; use printf(1) to produce escapes.  I tried
>to post printf to comp.sources.unix, but it seems it never made it.

- but then you lose the advantage of echo being a shell builtin.
This will have a very noticable effect on speed for scripts which print
a lot of escapes.

Personally, I think fewest existing scripts would break if the SysV
behaviour were adopted, but with the '-n' option added.  There can't
be that many BSD scripts which contain '\' in an echo string, whereas
use of '\c' in SysV scripts is extremely common.

X/Open specifies SysV behaviour for echo.  What does POSIX say?
-- 

Geoff Clare    UniSoft Limited, Saunderson House, Hayne Street, London EC1A 9HH
gwc at root.co.uk   ...!mcvax!ukc!root44!gwc   +44-1-606-7799  FAX: +44-1-726-2750

-----------------------------

From: Jack Bonn <jack at swlabs.uucp>
Subject: character input in curses
Date: 6 Dec 88 11:54:16 GMT
To:       unix-wizards at sem.brl.mil

I am having some trouble with curses.  In the system I am working on,
there is a different process reading the keyboard than the one which
updates the screen.  This is to allow screen updates to occur as a 
result of stimuli other than keyboard action.  

Unfortunately, this means that getch doesn't function properly on some 
systems (all Sys V).  Should it?  Or does it only function properly on 
some systems by chance and not definition.  [It does bother me that the
getch description talks about getting characters from a window.  If I
have echo turned off, what does this really mean?]

Of course, an alternative is to do my own terminal input, bypassing 
curses.  I would like to not have to do this, especially since it
seems to mean that I would have to rewrite the keypad input mapping 
(yuck).  Is there any avoiding this?

E-mail and I'll summarize.
-- 
Jack Bonn, <> Software Labs, Ltd, Box 451, Easton CT  06612
uunet!swlabs!jack (UUCP)	jack%swlabs.uucp at uunet.uu.net (INTERNET)

-----------------------------

From: News administrator <news at rosevax.rosemount.com>
Subject: (argh!) Better Trojan horse fix for Rnmail & Pnews
Date: 6 Dec 88 15:33:17 GMT
To:       unix-wizards at sem.brl.mil

My earlier 'fix' for Rnmail & Pnews failed to check if
the editor being used was vi or ex (you can also add edit if needed).
Here are more forgiving patches...


Rnmail:

*** Rnmail.old	Tue Dec  6 09:29:23 1988
--- Rnmail	Tue Dec  6 09:21:25 1988
***************
*** 200,206 ****
  		;;
  	    esac
  	done
! 	${VISUAL-${EDITOR-$defeditor}} '+set nomodeline' $tmpart $oldart
  	trap "$rescue" 2
  	state=ask
  	;;
--- 200,211 ----
  		;;
  	    esac
  	done
! 	myeditor="`basename ${VISUAL-${EDITOR-$defeditor}}`"
! 	if $test "vi" = "$myeditor" -o "ex" = "$myeditor"; then
! 		${VISUAL-${EDITOR-$defeditor}} '+set nomodeline' $tmpart $oldart
! 	else
! 		${VISUAL-${EDITOR-$defeditor}} $tmpart $oldart
! 	fi
  	trap "$rescue" 2
  	state=ask
  	;;


Pnews:

*** Pnews.old	Tue Dec  6 09:29:15 1988
--- Pnews	Tue Dec  6 09:21:09 1988
***************
*** 317,323 ****
  	    esac
  	done
  	trap : 2
! 	${VISUAL-${EDITOR-$defeditor}} '+set nomodeline' $tmpart $oldart
  	trap "$rescue" 2
  	state=ask
  	;;
--- 317,328 ----
  	    esac
  	done
  	trap : 2
! 	myeditor="`basename ${VISUAL-${EDITOR-$defeditor}}`"
! 	if $test "vi" = "$myeditor" -o "ex" = "$myeditor"; then
! 		${VISUAL-${EDITOR-$defeditor}} '+set nomodeline' $tmpart $oldart
! 	else
! 		${VISUAL-${EDITOR-$defeditor}} $tmpart $oldart
! 	fi
  	trap "$rescue" 2
  	state=ask
  	;;


 -----
Merlyn LeRoy
<bong> "start again"

-----------------------------

From: peter d fiorese <fiorese at hercules.steinmetz>
Subject: Needed: info on 8mm tape drives
Date: 6 Dec 88 15:34:13 GMT
Sender: news at steinmetz.ge.com
To:       unix-wizards at sem.brl.mil


Hello,
  I'm looking to hear from some people who have experiences with the 8mm
helical scan tapes.  I would like to find out:
 		-how long you have been using them
		-if you have had luck (or trouble) with recovery
		-what format you are writing on the tape
		-how many machines you are backing up, what type
		     of schedule you're using, and number of tapes
  I would appreciate any input on this sublject, or on that of the DAT 
tecknology, as I may look into that as well.  Pleas e-mail responses,
and I'll post as summary.

Thanks,					fiorese at ge-crd.ARPA		
  Pete.					fiorese at bashful.steinmetz.ge.com

-----------------------------

From: Bob Page <page at swan.ulowell.edu>
Subject: how do I set non-rlogin window params?
Date: 6 Dec 88 22:46:49 GMT
To:       unix-wizards at sem.brl.mil

I have a terminal program running at home on my Amiga, logged in to
the 4bsd machine at work via a regular dial-up line.  I resize the
terminal window and want the emacs process (and all other processes)
I'm running on the 4bsd machine to know that.

Is it possible?  How?

 ..Bob
-- 
Bob Page, U of Lowell CS Dept.  page at swan.ulowell.edu  ulowell!page
Have five nice days.

-----------------------------

From: kai at uicsrd.csrd.uiuc.edu
Subject: Re: /etc/failures
Date: 6 Dec 88 08:04:00 GMT
Nf-ID: #R:uwslh.UUCP:407:uicsrd.csrd.uiuc.edu:43200056:000:1907
Nf-From: uicsrd.csrd.uiuc.edu!kai    Dec  6 02:04:00 1988
To:       unix-wizards at sem.brl.mil


> /* Written by smb at ulysses.homer.nj.att.com */
>
>> kai at uicsrd.csrd.uiuc.edu writes:
>> 1)  If a login of a single account name at a single terminal fails 3 times in
>> a row within a short period of time, that account is temporarily disallowed
>> from logging in on that terminal.
>> 2)  If a login of a single account at multiple terminals fails 3 times in a
>> row, the account is temporarily disallowed from logging in at any terminal.
>> 3)  If logins of any accounts at a single terminal fails 6 times in a row,
>> that terminal is temporarily disabled.
>
> What's a ``terminal'' to be disabled?
> ... folks are using some sort of port selector, front-end switch, Ethernet
> TAC, etc.  It's rare that any physical port can be associated with a
> login attempt.

Our work environment consists of multiple Encore Annex ethernet terminal
servers providing access to any host from any terminal in the building, so I
understand what you're saying.

I would consider all network connections from a single network host, terminal
server, or data switch as a single "terminal" when disallowing logins.
Unfortunately, then someone could temporarily stop all access from a data
switch by purposefully incorectly logging in multiple times from multiple
accounts.  Does anyone else have any better approach?

This demonstrates a significant advantage of the Annex terminal server over
all other terminals servers or data switches I've ever used, that in a
security concious environment they can be configured to require a valid
username/password be verified by a local "security server" host before access
to the terminal server command line is given, and to approve and log all
attempts at network connections.  With these features enabled, it's easy to
identify who is attempting a breakin.


Patrick Wolfe  (pat at kai.com, kailand!pat)
System Manager, Kuck and Associates, Inc.

#include <cynical/witty.remark>

-----------------------------

From: Maarten Litmaath <maart at cs.vu.nl>
Subject: Re: Cshell Anomaly
Date: 6 Dec 88 15:29:21 GMT
Keywords: csh
To:       unix-wizards at sem.brl.mil

martin at mqcomp.oz (Martin Foord) writes:

\How does one get an asterisk '*' in a csh variable ?   I've been trying for
\a long time to figure this one out but can't achieve it ?  What about if
\you're reading chars in from a file into csh variables and one of them is a
\'*' it doesn't appear into the csh variable at all !

Because it has to be escaped.

	% set x=\*
	% echo "$x"
	*
	%
-- 
fcntl(fd, F_SETFL, FNDELAY):          |Maarten Litmaath @ VU Amsterdam:
      let's go weepin' in the corner! |maart at cs.vu.nl, mcvax!botter!maart

-----------------------------

From: "a.v.reed" <avr at mtgzz.att.com>
Subject: Indenting and alignment style
Date: 6 Dec 88 16:20:10 GMT
Keywords: braces religion
To:       unix-wizards at sem.brl.mil

The real issue is readability. I think even Henry Spencer would agree
that the goal is to make code as easy to read and understand as
possible. This in turn is influenced by matching style to the human
visual system and mind - objective readability - and by how close the
style is to what one is used to. Objective readability (on which there
is a vast literature in psychology, human factors and education
journals) suggests that the optimal style would provide the reader with
vertical alignment of the closing brace with the opening brace, and of
immediately enclosed text with the enclosed braces, like this:

	function(argument,argument)
		{
		statement;
		statement;
		}

If everyone were starting from scratch, this would be readily accepted
by everyone. But since that is not the case, we have to deal with the
fact that objective readability does not necessarily optimize relative
readability, especially for individuals who are used to (and have what
psychologists call "overlearned skills" for processing) an objectively
suboptimal but, in the C community, traditional style:

	function(argument,argument){
		statement;
		statement;
	}

With this style, the reader cannot use vertical alignment for conceptual
matching, either between the corresponding opening and closing brace, or
between the braces and the text they enclose. But people who have been
reading code in this style for many years have developed compensating
skills, and insist that vertically aligned code is "difficult to read" or
even "ugly". And for/to them, it certainly is.

The solution, I think, is to write code in the style that's best for
you, and use "prettyprinting" tools when reading or editing code written
in a different style by somebody else. That way, new programmers can
learn the (objectively optimal) vertically aligned style without unduly
inconveniencing the "old dogs" and traditionalists. After all, *tools*
are why we use UNIX(R) and C in the first place. Insisting that everyone
conform to what you happen to like and/or are used to isn't just
religion, it is neanderthal religion. It'll make you miserable. So just
filter the code you read through the prettyprinter of your choice, and
be happy. OK?
				Adam Reed (avr at mtgzz.ATT.COM)

-----------------------------

From: Maarten Litmaath <maart at cs.vu.nl>
Subject: Re^2: Latest indent request
Date: 6 Dec 88 15:55:10 GMT
To:       unix-wizards at sem.brl.mil

pokey at well.UUCP (Jef Poskanzer) writes:
\main ()
\	{
\	if (expr)
\		{
\		while (cond)
\			{
\			};
\		}
\	}

\This style is common among ex Pascal programmers.
                               ^^^^^^^^^^^^^^^^^^
Aha! Isn't the following one of the first lessons in C?

	C is NOT Pascal, so don't do things like `#define BEGIN {'.

On the other hand, DO apply the K&R indenting rules!
BTW, I didn't even use the indenting scheme above for Pascal!
-- 
fcntl(fd, F_SETFL, FNDELAY):          |Maarten Litmaath @ VU Amsterdam:
      let's go weepin' in the corner! |maart at cs.vu.nl, mcvax!botter!maart

-----------------------------

From: Adri Verhoef <ccea3 at rivm.uucp>
Subject: Source Management System
Date: 6 Dec 88 19:53:02 GMT
Keywords: "sms" 'SMS'
To:       unix-wizards at sem.brl.mil

We have a lot of computer systems (17 System V VAXen, 8 3B2s, etc.)
and we'd like to have some control over local software that has to
be (re)installed on every computer, whenever a new version of some
program is released.
Right now it is a difficult task, as we have no control over what
program-versions have been installed etc., and at times we are losing
sight on it all.  Yes, wow, it's out of sight, man! :-) :-{

So, big question:
Who can enlighten me on the subject above, a source management system?
Is there any such beast?  Does it exist?

	Adri Verhoef, mail: mcvax!rivm!a3

-----------------------------

From: Adri Verhoef <ccea3 at rivm.uucp>
Subject: A User Database
Date: 6 Dec 88 20:19:17 GMT
Keywords: /etc/passwd /etc/group mailaliases
To:       unix-wizards at sem.brl.mil


 A User Database system was to be set up at the Duke University.
Unfortunately, their user database system "has died a slow
agonizing death.  A combination of politics, overworked
staff and students, and hardware priorities has left the
project on the back burner, without the burner even turned
on.", so Neil G. Sullivan <cs.duke.edu!ngs> says.

What user services do I want?
 A simple system for account maintenance under Unix.  The system would
 be a database, which keeps track of current users on all machines.

On one machine we would like to have a general user database.  This
database should contain all loginnames from all the password files.
The database should contain (for each record):
 - the loginname;
 - the machinenames on which the loginname exists;
 - (probably) the password's age (but not necessary);
 - if possible, the machine where the loginname usually will receive mail.
 - the user ID (which must be unique with respect to the loginname);
 - the full user name (GCOS field);
 - the groupname, and
 - the group-ID (these last two ones should always be the same).

An alternative would be to keep the group-IDs in a Group Database,
for we would like to know on which machines this groupname exists
as well, in which case this Group Database could contain:
 - groupname	(Alphanumerical)
 - group-ID	(Numerical)
 - full explanation of the groupname
 - on which machines the group exists

Since all UIDs should be unique, the Database system should tell me
which UID and GID I should use, when I want to add a loginname on a
machine.
When a loginname is deleted, the UID should be kept around in the
database until a certain number, say 10000, is reached.  After that,
new users will get an unused UID between 100 and that number.

This would be very useful to system managers.  Of which I am one.

At the moment we have some programs that handle user accounts and inactive
users at every machine, but we don't have a user database that consists
of all the important information from all the password files throughout
the organization.  We have a network that relies on UUCP connections.

Our environment consists currently of about 620 users, and
3x VAX 11/750		8x 3B2 (at least)	1x Altos 986
12x microVAX		2x PDP 11/73		1x M380	i80386
2x VAX-3600


 Sincerely,
	Adri Verhoef,
	mcvax!rivm!a3

-----------------------------

From: "David P. Lithgow" <dpl at cisunx.uucp>
Subject: NFS security
Date: 6 Dec 88 23:26:06 GMT
Keywords: NFS, security
To:       unix-wizards at sem.brl.mil

 -----------
To all networking afficionados,

	I'm looking for information/scripts/code on determining the
level of security of Ultrix and other BSD-compatible systems vis-a-vis
NFS access.  I'm hoping that something is out there which would assist in
keeping this system secure against intrusion and also be a tool for new
Sun workstations coming online - to make sure that the new system
administrator has secured the appropriate partitions in /etc/exports, among
other things..

	Is /etc/exports the only nfs security mechanism between the
world and the workstation user?

	If you have any references, or experiences, please pass them
along, and I will summarize interesting results back to the net.
--
David P. Lithgow                Sr. Systems Analy./Pgmr., Univ. of Pittsburgh
USENET:  {allegra,bellcore,ihpn4!cadre,decvax!idis,psuvax1}!pitt!cisunx!dpl
CCnet(DECnet): CISVM{S123}::DPL       BITnet(Jnet):  DPL at PITTVMS

-----------------------------

From: Larry McVoy <lm at snafu.sun.com>
Subject: Re: Latest indent request
Date: 7 Dec 88 01:35:09 GMT
Sender: news at sun.uucp
Followup-To: comp.unix.questions
To:       unix-wizards at sem.brl.mil

In article <9149 at ihlpb.ATT.COM> gregg at ihlpb.ATT.COM (Wonderly) writes:
>One of the most frustrating things for me is that so many people insist
>on using a mixture of spaces and tabs for indentation.  It seems obvious
>that editors like vi(1) have commands like ":set tabs=4 sw=4" for some
>reason!  

[unix-wizards in not approrpiate for this, followup to unix questions]

sw=4 is cool.  ts=4 is not.  What happens when I do "lpr $.c" after 
some boy genius has missused the ts=4 feature?  Yeah, I know about expand,
but that is a hack and screws up other code.

Larry McVoy      (lm%snafu at sun.com)

-----------------------------

From: Greg Pasquariello X1190 <gpasq at picuxa.uucp>
Subject: Re: Latest indent request
Date: 6 Dec 88 13:46:56 GMT
To:       unix-wizards at sem.brl.mil

In article <1230 at dsacg3.UUCP> vfm6066 at dsacg3.UUCP (John A. Ebersold) writes:
-In article <7837 at well.UUCP> Jef Poskanzer <jef at rtsg.ee.lbl.gov> writes:
->In the referenced message, jfh at rpp386.Dallas.TX.US (The Beach Bum) wrote:
->
->No, silly.  Here's how you do it:
-NO, THIS IS HOW YOU DO IT.  It's the only way :-) !
->

ARGHHHH!!!! In reality, _THIS_ is the only way :-) :-)

main(argc, argv) 
int	argc;
char	**argv;
	{
	register int foo;
	register char bar;

	if (expr) {
		while (cond)
			;
		}
	}

-- 
=============================================================================
By the time they had diminished from 		  Greg Pasquariello AT&T PMTC
50 to 8, the dwarves began to suspect Hungry.	  att!picuxa!gpasq  
=============================================================================

-----------------------------

From: "Dr. T. Andrews" <tanner at cdis-1.uucp>
Subject: Meta: "Crackers and Worms" Articles
Date: 5 Dec 88 21:54:33 GMT
Posted: Mon Dec  5 16:54:33 1988
To:       unix-wizards at sem.brl.mil

As a native of God's Own Country, I must object to the use of the
term "cracker" to refer to electronic burglars and vandals.  I expect
that our neighbours to the north would similarly take offense.
-- 
 ...!bikini.cis.ufl.edu!ki4pv!cdis-1!tanner  ...!bpa!cdin-1!cdis-1!tanner
or...  {allegra killer gatech!uflorida decvax!ucf-cs}!ki4pv!cdis-1!tanner

-----------------------------


End of UNIX-WIZARDS Digest
**************************



More information about the Comp.unix.wizards mailing list