HDTenEightyP/NetNews huggingface dataset:
From: bernard@cpio1.UUCP (Bernard Fouche)
Newsgroups: comp.unix.programmer,comp.unix.questions
Subject: Re: Need (today's date + [1-7] days)
Keywords: date
Date: 27 Jul 92 23:46:43 GMT
Organization: CPIO S.A.


In article <salem.711339100@pangea.Stanford.EDU>, salem@pangea.Stanford.EDU (Bruce Salem) writes:
> dejesus@archimedes.nwc.navy.mil (Francisco X DeJesus) writes:
> 
> >If I can get today's date in a shell script or C program, how can I find
> >out the dates of the next week? For example, if I know today is
> >"Wed Dec 30 1992", how can I have the program now that the next seven days
> >are going to be "Thu Dec 31 1992", "Fri Jan 1 1993", etc (taking the
> >case in which both month and year could change).
> 
> 	Look for Gregorian Date to Julian Date conversion routines. 
	[ stuff deleted ]

There is also a hack : use TZ and set to a value a negative value if
you want to go forward in time, a positive value if you want to go
backward. For instance, assuming your TZ is GMT0, to go forward one
day, try :

$ date
Mon Jul 27 23:41:44 WET 1992
$ TZ=GMT-24 ; export TZ
$ date
Mon Jul 28 23:41:54 WET 1992
$ 

To go seven days forward, use GMT-(24*7), i.e. : GMT-168

Everybody will probably say that it is something horrible to do but it
works rather well on many unix systems. (humm I didn't considered Daylight
Saving Time...)
-- 
-----------------------------------------------------------------------------
Bernard Fouche  VOX   : +(33) (1) 48.04.56.30  FAX :  (33) (1) 48.04.98.95|
Email : bernard@cpio1.UUCP or cpio1!bernard@gna.org (try both!)
Postal Mail : CPIO S.A., 13-15 Rue de la Verrerie, 75004 Paris, France
From: urlichs@smurf.sub.org (Matthias Urlichs)
Newsgroups: comp.unix.programmer
Subject: Re: ln vs. ln -s
Date: 28 Jul 1992 22:58:32 +0200
Organization: University of Karlsruhe, FRG
NNTP-Posting-Host: 127.0.0.1

In comp.unix.programmer, article <13aea6INN7ce@early-bird.think.com>,
  barmar@think.com (Barry Margolin) writes:
< 
< However, I've seen "file system full" errors result in the system
< call failing after having created the symlink but before filling in the
< target pathname (a symlink is implemented as a file whose contents are the
< target pathname).
< 
Same here. These symlinks point to the current directory instead of the
destination directory or file.

Needless to say, on some systems "ln" (or the kernel) either doesn't check
if the filling-in part succeeds or doesn't bother to remove the spurious
empty link. Fun.

-- 
"I like a man who grins when he fights."
- Winston Churchill
-- 
Matthias Urlichs  --  urlichs@smurf.sub.org -- urlichs@smurf.ira.uka.de   /(o\
Humboldtstrasse 7 -- 7500 Karlsruhe 1 -- Germany  --  +49-721-9612521     \o)/
Xref: sparky comp.unix.programmer:4026 comp.unix.questions:9606
From: guy@Auspex.COM (Guy Harris)
Newsgroups: comp.unix.programmer,comp.unix.questions
Subject: Re: Need (today's date - 2 WORKING days) [was: Need (today's date + [1-7]]
Date: 30 Jul 92 21:38:23 GMT
Followup-To: comp.unix.programmer
Organization: Auspex Systems, Santa Clara

>>>        #define ONE_DAY	((60) * (60) * (24))
>
>Call me stupid, but I thought the number of seconds in a day was constant.
>
>	#define ONE_DAY 86400

Yes, it *is* a constant, but one might want to have the C compiler
calculate the value of that constant, rather than calculating it oneself
and

	#define ONE_DAY	((60) * (60) * (24))

is a fine way of doing that.

If the compiler doesn't calculate that at compile time, but generates
code to do the multiplication at run time, then *it's* stupid.
Newsgroups: comp.unix.programmer
From: etxmesa@eos.ericsson.se (Michael Salmon)
Subject: Re: NAWK - ?Diff. printf output order when using a pipe.
Reply-To: etxmesa@eos.ericsson.se (Michael Salmon)
Organization: Ericsson Telecom AB
Date: Mon, 27 Jul 1992 09:54:58 GMT

In article <1992Jul26.033811.21614@nsisrv.gsfc.nasa.gov>, 
merritt@climate.gsfc.nasa.gov (John H. Merritt) writes:
|> Explain why the following 'nawk' program produces:
|> 
|> ---- cut ----
|> This is the BEGIN section
|> a b c
|> 1 2 3
|> x y z
|> This is the END section
|> ---- cut ----
|> 
|> When run as: 'nawk -f test.nawk test.dat', whereas it produces
|> 
|> ---- cut test.out ----
|> a b c
|> 1 2 3
|> x y z
|> This is the BEGIN section
|> This is the END section
|> ---- cut test.out ----
|> 
|> when redirected to a file, as in: 'nawk -f test.nawk > test.out'
|> 
|> Here is the program:
|> ---- cut test.nawk ----
|> BEGIN {
|> 	printf("This is the BEGIN section\n");
|> }
|> 
|> 	{ printf("%s %s %s\n",$1,$2,$3) | "cat" }
|> 
|> END {
|> 	close("cat")
|> 	printf("This is the END section\n");
|> }
|> ---- cut test.nawk ----
|> 
|> Oh, if it isn't obvious, the contents of test.dat are:
|> -- cut test.dat --
|> a b c
|> 1 2 3
|> x y z
|> -- cut test.dat --
|> 
|> Now, I guess that there must be some sort of buffering of output
|> akin to that of the beginner C programming problem of missing '\n' in
|> printf statements.  I would like to have the contents of the file
|> that I redirect the output to to be identical to that of the terminal;
|> that's the confusing part -- they aren't the same.
|> 
|> There is no problem when the pipe is removed.
|> 
|> I want the 'BEGIN' prints to happen before the body prints and
|> the 'END' prints to happen last -- the order that I programmmed them.
|> If it is a simple matter of the right 'close' statement, then please
|> let me know what it is; I've tried 'close(1)' and 'close(stdout)'.
|> 
|> Computer: IRIS 4D/70GT workstation.
|> OP/SYS  : IRIX 4.0.1
|> Program : nawk

My best guess is the problem is caused by the change in buffering when
going from tty output to file/pipe output. In the first case the
newline terminates the buffering for stdout, the close of the pipe
causes nawk to wait for cat to complete and then the final printf
prints the final line. In the second case the first printf is buffered
(1k? buffer), the close of the pipe causes nawk to wait, the final
printf is buffered and finally the buffer is flushed on nawk's exit.
There are 2 solutions as I see it, i) do something tricky with pty's to
trick nawk's stdio buffers or ii) pipe the BEGIN section into cat and
then close the pipe in BEGIN, I don't think that this should be
required in the END section as this text has always been last. I don't
really like either solution but other than saying try perl I can't
think of anything else.

-- 

Michael Salmon

#include	<standard.disclaimer>
#include	<witty.saying>
#include	<fancy.pseudo.graphics>

Ericsson Telecom AB
Stockholm
From: fazc016@hq.dla.mil (Don Costello)
Newsgroups: comp.unix.programmer
Subject: getlogin() problem
Date: 23 Jul 92 20:55:05 GMT
Organization: HQ Defense Logistics Agency/DASC, Cameron Station, VA
X-Newsreader: Tin 1.1 PL4


Hi.  I've labored over this for quite some time and can't seem to figure
it out.

I have a C program that checks for new/existing mail.  I use the
getlogin call, appended to "/usr/spool/mail/" to get the mailbox for the
user checking his/her mail.

The problem is when I "su" from one login to another (su - otheruser)
and run the program, getlogin() returns the login id of the original
user (the one su'ed from) not the current login.

Is there an explanation/fix for this??

If it matters, I'm on a Gould 9050 running BSD4.3.  However, it behaves the
same on a 3B2 (Sys V Rel 3.2.2) and Gould NP1 (BSD4.3).

Any help would greatly reduce the risk of hair loss :-).

 -- dcc --

-- 
+------------------------------------+---------------------------+
| Don Costello, DASC-ZSC             |  It's hard to cram this   |
| DLA Cameron Station, VA            |  signature into just 4    |
| TEL: (703) 274-7215  AV: 284-7215  |  lines!!!                 |
From: elan@tasha.cheme.cornell.edu
Newsgroups: comp.unix.programmer
Date: 18 Jul 92 21:01 MDT
Subject: bool_t
Nf-ID: #N:1992Jul18.170149.1714@tc.cornell:-1100141676:001:500
Nf-From: tasha.cheme.cornell.edu!elan    Jul 18 21:01:00 1992




Help!  Where's the def of bool_t?  Thanks!!

--
--------------------------------------------------------------------------
|  Elan Feingold       |  I got in trouble for my harmless little .sig   |
|  CS/EE Depts.        |  "virus," so until the computing dept. here at  |
|  Cornell University  |  Cornell learns to appreicate a joke and stops  |
|  Ithaca NY 14850     |  being so paranoid, I will have no .sig :(      |
--------------------------------------------------------------------------
From: css1rs@ainur.ee.surrey.ac.uk (Russell Smithers)
Newsgroups: comp.unix.programmer
Subject: test (sorry)
Date: 29 Jul 92 08:43:19 GMT
Organization: University of Surrey, Guildford, England
X-Newsreader: Tin 1.1 PL4

The reason im doing this, is that i sent a post and it does not appear
to have got here, sorry for the inconviniance.
Newsgroups: comp.unix.programmer
From: lemke@MITL.COM (Kennedy Lemke)
Subject: Advice needed on copyright notice
Originator: lemke@narnia.MITL.COM
Organization: Matsushita Information Technology Laboratory, Princeton, NJ
Date: Fri, 31 Jul 1992 16:13:01 GMT

Question:

[I hope this is an appropriate group for this question--
 if not, can you please point me to an appropriate group?]

Programmers at our company occasionally make useful
modifications to shareware/freeware.  We would like
to give back to the internet community by sharing these
modifications.  According to our company policy, we are
allowed to share such software modifications freely as
long a a standard copyright notice is included in the code.

If we write a piece of code from scratch, including the
copyright notice is easy; but what is the best or standard
way to ask that a copyright notice be included when the code
is modifications to someone else's programs (for example, this
might just be a few additions/changes to a few lines of code
in each of several files)?  Is it typical to include a copyright
as part of a patch file, for example?  Or do folks typically
just include the copyright notice in a README with a description
of the contributions?  Any ideas/standard ways of doing this
would be appreciated.

Please email me as I don't read this group regularly.

				Kennedy Lemke
				Network and UNIX Systems Administrator
				Postmaster
				Matsushita Information Technology Laboratory
				182 Nassau Street, Third Floor
				Princeton, New Jersey  08542
Work Phone: (609) 497-4600
Fax Phone:  (609) 497-4013	Email: lemke@MITL.COM
From: sprice@eng.auburn.edu (Shannon W. Price)
Newsgroups: comp.unix.programmer
Subject: FAQ - keyboard input
Date: 23 Jul 92 17:26:41 GMT
Distribution: usa
Organization: Auburn University Engineering

This must be without a doubt a FAQ, but I was unable to find a FAQ list
among unread messages....

	I'd like to accept three different types of input from
	a keyboard (Sun IPC - running OpenWindows 3.0, 4.1.2)
	using C.  The c.lang FAQ stated that this sort of thing
	is a system dependent question rather than a C question.

	The three types of input are :

		A single enter (e.g. Press enter to continue...)
		A single character (e.g. a menu selection)
		A character string that may have imbedded blanks
				(e.g. a data item)

I've been racking my brain, trying different combinations, asking everyone
I could and none of the suggestions seem to work.  

-shannon price
 auburn university

 sprice@humsci.auburn.edu
 :wq
Xref: sparky comp.unix.programmer:4048 comp.unix.questions:9654
From: smawer@datlog.co.uk (Steve Mawer)
Newsgroups: comp.unix.programmer,comp.unix.questions
Subject: Re: Need (today's date - 2 WORKING days) [was: Need (today's date + [1-7]]
Date: 31 Jul 92 08:14:28 GMT
Organization: Data Logic Limited

ccx018@cch.coventry.ac.uk (Leslie Griffiths (Griff)) writes:

>In article <1992Jul29.031546.26997@bnd2.bnd.oz.au> johnw@bnd2.bnd.oz.au (John Warburton) writes:
>>From article <1992Jul28.072025.13886@cssc-syd.tansu.com.au>, by colinl@cssc-syd.tansu.com.au (Colin Lynch):
>>> bernie@metapro.DIALix.oz.au (Bernd Felsche) writes:
>>>     Having done this, just set a macro for the length (in seconds) of one
>>> day:
>>>        #define ONE_DAY	((60) * (60) * (24))
>Call me stupid, but I thought the number of seconds in a day was constant.
>i.e.
>	#define ONE_DAY 86400

Okay stupid :-)  But think how easy Bernd's macro is to maintain should, say,
the number of minutes in an hour change.  *You'd* have to recalculate. :-)
-- 
Steve C. Mawer       < smawer@datlog.co.uk> or < {backbone}!ukc!datlog!smawer >
		       Voice:  +44 81 863 0383 (x2139)
Newsgroups: comp.unix.programmer
From: rajeev@cbnewsf.cb.att.com (rajeev.dolas)
Subject: Re: I am stumped on this one!!!
Organization: AT&T
Distribution: usa
Date: Mon, 27 Jul 1992 13:53:50 GMT

In article <13744@auspex-gw.auspex.com> guy@Auspex.COM (Guy Harris) writes:
>>>		cp_line = (char *)malloc(sizeof(strlen(pars_wbuf)));
>>
>> You're allocing the sizeof an int, which is likely four bytes.
>> You also forgot to alloc space for the '\0'. Try it again with:
>>
>>	cp_line = (char*)malloc(sizeof(strlen(pars_wbuf) + 1));
>
>No, try it again with:
>
>>	cp_line = (char*)malloc(strlen(pars_wbuf) + 1);
>
>because, as you noted, the "sizeof" doesn't belong there - it turns the
>argument into the size of the result of "strlen", which isn't the length
>of the string.
>
>(Also, try not leaving every single line of the original posting in your
>followup; it makes it rather hard to find the stuff that *doesn't* come
>from the original posting....)

I did modify my code and removed the sizeof(), but that does not help.
As I mentioned previously, the error is in fputs() or putc().

Thanks.

Raj Dolas


Newsgroups: comp.unix.programmer
From: rfrazier%peruvian.utah.edu@cs.utah.edu (Robert Frazier)
Subject: Pipe question
Date: 22 Jul 92 00:50:31 MDT
Organization: University of Utah CS Dept
Distribution: USA

Newsgroups: comp.unix.bsd
Subject: Pipe question
Summary: 
Expires: 
Followup-To: 
Distribution: USA
Organization: University of Utah CS Dept
Keywords: 

Newsgroups: comp.unix.questions
Subject: Pipe question
Summary: 
Expires: 
Followup-To: 
Distribution: USA
Organization: University of Utah CS Dept
Keywords: 


	I am trying to set up a circular pipe with telnet.  I want to 
be able to read telnets stdout and write telnets stdin.  Here is what
I have so far.  But it doesn't read anything.  I have used pipes like
this with other applications, and they seemed to work.

#include <stdio.h>

int main(argc, argv)
     int argc;
     char **argv;
{
  int pid;
  int fd1[2],fd2[2];
  char buff[1000];
  
  pipe(fd1);
  pipe(fd2);
  close(1);
  dup(fd1[1]);
  close(0);
  dup(fd2[0]);

  pid=fork();
  if(!pid) {                      /*These means we are the child process*/
    
    close(0);
    dup(fd1[0]);
    close(1);
    dup(fd2[1]);
    sleep(1);
    fprintf(stderr,"launching telnet\n");
    execlp("telnet","peruvian.utah.edu",NULL);
    fprintf(stderr,"Could not run telnet\n");
    exit(0);
  }

/*this code is the parent process whos stdout will go to the stdin of telnet*/
  sleep(20);
  fprintf(stderr,"about to read\n");
  for(;;) {
    read(0,buff,1);
    fprintf(stderr,"%c",buff[0]);
  }
}


	Any help is greatly appreciated

	Thanks,
	R. Todd Frazier
	rfrazier@peruvian.utah.edu

	
Newsgroups: comp.unix.programmer
From: gantzm@gantz.bowlgreen.oh.us (Michael L. Gantz)
Subject: Database algorithms suitable for 'C' and unix needed.
Organization: GantzNet - B.G., Ohio
Date: Wed, 29 Jul 1992 00:15:26 GMT

I'm looking for some database algorithms that can be applied in 'C'
under the Unix environment.  The environment is Esix 4.0.4 to be more
precise.  I need some algorithms that define how to create multi-user
database files and associated key files for them.  

I've looked through Sedgewick and some other books, all of which have
nice concepts on B-trees and other such things.  But none of these
books touch on record locking, index file record locking, etc.  

I'm not looking for MongoSuperHighSpeed database routines.  Just
something that explains how to create a data file, how to create and
index file, and how to add, update, and delete in a multi-user
environment.

Responses via E-Mail or posting are well appreciated.

-- 
------------------------------------------------------------------------------
Michael L. Gantz        ! gantzm@gantz.bowlgreen.oh.us ! I know JCL and also
213 Napoleon Rd.        ! osu-cis!bgsuvax!gantz!gantzm ! use Unix.  No wonder
Bowling Green, Oh 43402 ! (419) 353-5029               ! I have problems.
Xref: sparky comp.unix.programmer:4018 comp.unix.questions:9583 comp.unix.shell:3209
From: smithj@ohstpy.mps.ohio-state.edu
Newsgroups: comp.unix.programmer,comp.unix.questions,comp.unix.shell
Subject: File Buffering Problem
Date: 30 Jul 92 12:35:42 EDT

Hello.
I have written a C program on a DecStation 5000 series running Ultrix 4.2A.
I am using GnuC 1.37 but could use the Dec cc or c89 if I had to.  The program
runs for a long time (min 15 hrs.) and writes log files during its run.
The log files fall into three categories:

    A. Ones written by my program
    B. Ones written by subroutines for which I don't have source code
    C. Ones written by pipes from scripts that my program runs

It's not uncommon that the program will hang requiring a Ctrl-C to end it or
that I want to see its progress by looking at the log files.  The problem is
that the log files are not getting written immediately and a Ctrl-C looses them
completely.  With regards to the three types of logs:

A. I have tried using the fflush(stream) function but apparently this only
   flushes the C file buffer and not the Ultrix one since nothing gets written.
   I could concievable open and close the file every time I write to it but I'd
   like a cleaner solution.
B. I'm not sure if this is solvable at all.
C. Is there any way to force piping output to get flushed as it's being
   written?

I would appreciate any help.  Please respond by e-mail.
Thanx.
-- 
I knew how the game was going to end when I took Brenda
    into the filing room but I took her in anyway.      --Al
They have one big advantage over us:
    *they* know where they're going.                    --Batman
Has your family tried 'em, Powdermilk?                  --Garrison Keillor

/* Jeffery G. Smith, BS-RHIT (AKA Doc. Insomnia, WMHD-FM)       *
 *    The Ohio State University, Graduate Physics Program       *
 *        2029 Smith Lab, Columbus, OH 43210  (614) 292-6799    *
 *    smithj@ohstpy.mps.ohio-state.edu                          */
Newsgroups: comp.unix.programmer
From: avalon@coombs.anu.edu.au (Darren Reed)
Subject: Re: TCP/IP connections, how does the blocking work?
Organization: Computer Services Centre, Australian National University
Date: 24 Jul 92 16:26:30 GMT

Frank@mindlink.bc.ca (Frank I. Reiter) writes:

>I am considering moving relatively large amounts of data from a fast
>originating process on one machine, to a relatively slow receiving process on
>another machine via sockets.

>If the originating process attempts to write a few megabytes more than the
>receiving process has read, will it block, what causes it to block, and how far
>ahead is it likely to get before it does block?

>I want to make sure I will not be placing undo stress on the receiving machine
>by causing it to try to buffer data not yet read by the process it is intended
>for.  Can the receiving machine cause the sending machine to cause the sending
>process to block?

Yes it can and will block when the receiving buffer's are full.
On SunOS this is around 4 or 8 kbytes in size by default.
Use setsockopt and getsockopt to manipulate the buffer sizes using the
appropriate options (SO_SNDBUF/SO_RCVBUF).

Darren
Newsgroups: comp.unix.programmer
From: pnarayan@cs.tamu.edu (P S Narayan)
Subject: Filesystem question
Organization: Computer Science Department, Texas A&M University
Distribution: usa
Date: Wed, 29 Jul 1992 00:22:03 GMT

Hi netters,
I have a question and I will greatly appreciate any prompt reply from y'all.
The question is:
There is the block and character device interface in the Unix filesystem. The 
Unix filesystem uses the block device interface.
Suppose that I don't want to use the Unix filesystem and use partiton d,
say sd3d as a block device. Does this mean that the whole partition is now
one file. Can I get access to the block addresses of the partition ? How do
I read and write to the partition ? Do I just lseek and write read ? What is
the notion of reaching a block for the user ? Is it (block# * blksize) ?
Kindly reply ASAP.
Thanks a heap.
 
P.S.Narayan
pnarayan@cs.tamu.edu

Newsgroups: comp.unix.programmer,comp.unix.questions,gnu.misc.discuss,comp.unix.ultrix
From: john@iastate.edu (John Hascall)
Subject: Re: help with unexec
Organization: Iowa State University, Ames, IA
Date: Tue, 28 Jul 1992 15:10:00 GMT

net@cs.tu-berlin.de (Oliver Laumann) writes:
}dnicodem@cs.ulowell.edu (David Nicodemus) writes:
}> I am looking for a way to force a program out of execution, and save an
}> image of the program that can be restarted from the same point at a later
}> time. 
}> It appears that the gnu unexec() function from gnu emacs will do this;
}> however, the last parameter asks for a "starting address." 
}> How can I find this "starting address" (which I want to be the current
}> point of execution)?  Is this even possible?
}I'm not sure I understand what exactly you want to accomplish.  You
}certainly cannot *force* a program to dump its image to disk using
}unexec(); the program must call unexec() voluntarily.

I think perhaps what the original poster is looking for is a way to
checkpoint an arbitrary program -- say a machine has a long running job
on it and you need to shutdown.  Perhaps a related question is:
suppose you SIGQUIT the process to generate a core dump file, can you
devise a program which takes the original a.out file and the core file
and resumes the execution at the point where the SIGQUIT would return
as if it was SIG_IGNed?  Same values in all the registers, same memory
contents, files all re-opened and re-seeked, etc.  Perhaps some things
would be un-recreatable (inet sockets?), but if you got the essentials
down perhaps you could serve an important class of problems (how many
big Fortran number crunchers do sockets, not many I'll wager).

John
-- 
John Hascall                                       ``Live with it pink-boy!''
Project Vincent                                                              
Iowa State University Computation Center                     john@iastate.edu
Ames, IA  50011                                      515/294-9551 [fax -1717]
Xref: sparky comp.unix.programmer:4017 comp.unix.wizards:3358 comp.unix.internals:1632
From: jhelberg@nl.oracle.com (Joost Helberg)
Newsgroups: comp.unix.programmer,comp.unix.wizards,comp.unix.internals
Subject: Re: STREAMS help desperately needed
Date: 30 Jul 92 14:09:43 GMT
Followup-To: comp.unix.programmer
Organization: Oracle Europe
X-Newsreader: Tin 1.1 PL3

X-Disclaimer: This message was written by an unauthenticated user
              at Oracle Corporation.  The opinions expressed are those
              of the user and not necessarily those of Oracle.

gram@aim1.aztec.co.za (Graham Wheeler) writes:
: No-one has responded to my previous posts about the ldterm STREAMS module, so

: 				mp->b_cont = allocb(sizeof(struct termio),BPRI_HI);
: 				iocp->ioc_count += sizeof(struct termio);
: 				mp->b_cont->b_wptr = mp->b_cont->b_rptr+sizeof(struct termio);
: 			}
: 			tp = (struct termio *)mp->b_cont->b_datap;
BANG, b_datap points to the datab structure, not the data which
may contain the termio data!
: 			tp->c_iflag = PAD->terminfo.c_iflag;
: 			tp->c_oflag = PAD->terminfo.c_oflag;
: 			tp->c_lflag = PAD->terminfo.c_lflag;
destroying the structure in b_datap

after some time the streams layers free up this message and they get
confused finding flags in the datab --> crash.

--
   Joost Helberg                                Rijnzathe 6
   jhelberg@oracle.nl                           NL-3454 PV De Meern
   jhelberg@nl.oracle.com                       The Netherlands

   Oracle Europe BV                             Product Line Development	
   Phone: +31 3406 94211                        Fax:   +31 3406 65609
Newsgroups: comp.unix.programmer