[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: user/3746: tcpdump wont write to stdout



This fixes the problem.

Thanks,
David Gwynne

----- Original Message ----- 
From: "Otto Moerbeek" <otto@drijf.net>
To: <bugs@cvs.openbsd.org>
Sent: Wednesday, April 14, 2004 5:30 PM
Subject: Re: user/3746: tcpdump wont write to stdout


> The following reply was made to PR user/3746; it has been noted by GNATS.
> 
> From: Otto Moerbeek <otto@drijf.net>
> To: loki@animata.net
> Cc: gnats@openbsd.org
> Subject: Re: user/3746: tcpdump wont write to stdout
> Date: Wed, 14 Apr 2004 09:23:00 +0200 (CEST)
> 
>  On Wed, 14 Apr 2004 loki@animata.net wrote:
>  
>  > >Number:         3746
>  > >Category:       user
>  > >Synopsis:       "tcpdump -w -" fails
>  
>  Please try this.
>  
>   -Otto
>  
>  Index: privsep_pcap.c
>  ===================================================================
>  RCS file: /cvs/src/usr.sbin/tcpdump/privsep_pcap.c,v
>  retrieving revision 1.3
>  diff -u -p -r1.3 privsep_pcap.c
>  --- privsep_pcap.c 8 Apr 2004 12:38:00 -0000 1.3
>  +++ privsep_pcap.c 14 Apr 2004 07:19:30 -0000
>  @@ -483,9 +483,10 @@ priv_pcap_dump_open(pcap_t *p, char *fna
>   if (priv_fd < 0)
>   errx(1, "%s: called from privileged portion\n", __func__);
>   
>  - if (fname[0] == '-' && fname[1] == '\0')
>  + if (fname[0] == '-' && fname[1] == '\0') {
>   f = stdout;
>  - else {
>  + priv_init_done();
>  + } else {
>   write_command(priv_fd, PRIV_OPEN_OUTPUT);
>   fd = receive_fd(priv_fd);
>   must_read(priv_fd, &err, sizeof(err));