mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Jesse Barnes <jbarnes@virtuousgeek.org>
To: Dirk Gouders <gouders@et.bocholt.fh-gelsenkirchen.de>
Cc: Rob Landley <rob@landley.net>, Milton Miller <miltonm@bga.com>,
	Borislav Petkov <bp@alien8.de>,
	Cong Wang <xiyou.wangcong@gmail.com>,
	Jan Engelhardt <jengelh@inai.de>,
	Linux Kernel <linux-kernel@vger.kernel.org>
Subject: Re: [RFC] netconsole.txt: "nc" needs "-p" to specify the listening port
Date: Thu, 2 Aug 2012 13:41:55 -0700	[thread overview]
Message-ID: <20120802134155.791cfcce@jbarnes-desktop> (raw)
In-Reply-To: <gisjc5hvun.fsf@mx10.gouders.net>

On Thu, 02 Aug 2012 22:39:28 +0200
Dirk Gouders <gouders@et.bocholt.fh-gelsenkirchen.de> wrote:

> Dirk Gouders <gouders@et.bocholt.fh-gelsenkirchen.de> writes:
> 
> > Rob Landley <rob@landley.net> writes:
> >
> >> On 07/29/2012 03:40 AM, Milton Miller wrote:
> >>> [adding Rob as Doc maintanier]
> >>> 
> >>> On Sat, 28 Jul 2012 about 11:08:16 -0000, Dirk Gouders wrote:
> >>>> Borislav Petkov <bp@alien8.de> writes:
> >>>>
> >>>>> On Fri, Jul 27, 2012 at 11:24:53AM +0200, Dirk Gouders wrote:
> >>>>>> Cong Wang <xiyou.wangcong@gmail.com> writes:
> >>>>>>
> >>>>>>> On Fri, Jul 27, 2012 at 2:35 PM, Dirk Gouders
> >>>>>>> <gouders@et.bocholt.fh-gelsenkirchen.de> wrote:
> >>>>>>>> Hi Jesse,
> >>>>>>>>
> >>>>>>>> I would like to ask you to check if the documentation of "nc" in
> >>>>>>>> netconsole.txt is still correct.  I tried two different netcat packages
> >>>>>>>> and both require "-p" to specify the listening port.  I am wondering if
> >>>>>>>> that changed after the use of "nc" has been documented.
> >>>>>>>
> >>>>>>> On Fedora 16, `nc -u -l <port number>` works fine.
> >>>>>>
> >>>>>> Thanks for checking that.
> >>>>>>
> >>>>>> If the information I found is correct, Fedora uses OpenBSD's nc
> >>>>>> codebase.  The two netcat packages I tested on a Gentoo system differ in
> >>>>>> requiring the -p switch for the port specification.
> >>>>>
> >>>>> So say exactly that in the doc: that the *BSD's version of nc doesn't
> >>>>> need the port number specified with '-p' and you're covered.
> >>>> OK, I tried that in the attached patch.
> >>>> I'm not sure if every exeption needs to/should be documented, though.
> >>>>
> >>>> >From 3cdeac3e814471053129145c5fa8391acb365fd8 Mon Sep 17 00:00:00 2001
> >>>> From: Dirk Gouders <gouders@et.bocholt.fh-gelsenkirchen.de>
> >>>> Date: Sat, 28 Jul 2012 12:32:49 +0200
> >>>> Subject: [PATCH] netconsole.txt: non-BSD versions of nc(1) require '-p'
> >>>>  switch
> >>>>
> >>>> Gentoo for example uses non-BSD versions of nc(1) which require
> >>>> the '-p' switch to specify the listening port.
> >>>>
> >>>> ---
> >>>> Documentation/networking/netconsole.txt |    3 ++-
> >>>>  1 files changed, 2 insertions(+), 1 deletions(-)
> >>
> >> Did this ever resolve to a specific recommended patch? The one at the
> >> start of the thread:
> >>
> >>  http://lkml.indiana.edu/hypermail/linux/kernel/1207.3/01995.html
> >>
> >> Apparently isn't it...?
> >
> > Sorry for the delay.
> > I tested the situation on a few distributions and am still thinking
> > about a proper way to write it in a way without netconsole.txt becoming
> > a kind of "netcat.txt".
> >
> > I would be glad about comments to what I currently have -- also, because
> > I am not a native English speaker:
> >
> > ------------------------------------------------------------------------
> > The remote host can run syslogd or netcat to receive the kernel
> > messages.  On distributions using a BSD-based netcat version
> > (e.g. Fedora, openSUSE and Ubuntu) the listening port must be
> > specified without the -p switch:
> >
> > 'nc -u -l -p <port>' / 'nc -u -l <port>' or
> > 'netcat -u -l -p <port>' / 'netcat -u -l <port>'
> > ------------------------------------------------------------------------
> >
> > At the end, I also attach what I have noted during the tests with the
> > different distributions.
> >
> > Dirk
> >
> > ------------------------------------------------------------------------
> > Problem on systems where the gnu-netcat package provides a symbolic
> > link /usr/bin/nc -> /usr/bin/netcat:
> >
> > gnu-netcat requires -p to specify the local port but does not complain
> > if invoked as `nc -l -u <port>'; you need to use -v to see that it
> > does not do what you might expect:
> >
> > # nc -l -u 4444 -v
> > Warning: Inverse name lookup failed for `0.0.17.92'
> > ------------------------------------------------------------------------
> >
> > Distro		Package						needs -p
> > 		Command invocation
> > ========================================================================
> > Arch		gnu-netcat					yes
> > (Website	nc | netcat
> >  documentation)
> > 		openbsd-netcat					no
> > 		nc.openbsd
> > ------------------------------------------------------------------------
> > Debian-6.0.5	netcat-openbsd					no 
> > 		nc | netcat | nc.openbsd		   
> > 		                                   
> > 		netcat / netcat-traditional (preinstalled)	yes
> > 		nc | netcat
> > 		                                   
> > 		netcat6						yes
> > 		nc | netcat | nc6
> > ------------------------------------------------------------------------
> > Fedora-17	nc (preinstalled)				no
> > 		nc
> >
> > 		nc6
> > 		nc6						yes
> > ------------------------------------------------------------------------
> > Gentoo		gnu-netcat					yes
> > 		netcat
> >
> > 		netcat						yes
> > 		nc
> >
> > 		netcat6						yes
> > 		nc | nc6
> > ------------------------------------------------------------------------
> > OpenSUSE-12.1	netcat-openbsd					no
> > 		nc | netcat
> > ------------------------------------------------------------------------
> > Ubuntu-12.04	netcat-openbsd (preinstalled)			no 
> > Desktop		nc | netcat | nc.openbsd
> > 		                                   
> > 		netcat / netcat-traditional			yes
> > 		nc | netcat		   
> > 		                                   
> > 		netcat6						yes
> > 		nc | netcat | nc6
> > ------------------------------------------------------------------------
> 
> Here is a patch that also includes Jan's suggestion for socat(1).
> 
> The problem with the patch is that the netcat part does not cover every
> possible distribution/netcat-package situation but in my opinion it is a
> bearable compromise with respect to keeping the example section compact.
> 
> Dirk
> 
> From d756d2750e4cf07d3c0942dc3c491d57631d4338 Mon Sep 17 00:00:00 2001
> From: Dirk Gouders <gouders@et.bocholt.fh-gelsenkirchen.de>
> Date: Thu, 2 Aug 2012 22:20:16 +0200
> Subject: [PATCH] netconsole.txt: revision of examples for the receiver of kernel messages
> 
> There are at least 4 implementations of netcat with the BSD-based
> being the only one that has to be used without the -p switch to
> specify the listening port.
> 
> Jan Engelhardt suggested to add an example for socat(1).
> ---
>  Documentation/networking/netconsole.txt |   19 +++++++++++++++++--
>  1 files changed, 17 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/networking/netconsole.txt b/Documentation/networking/netconsole.txt
> index 8d02207..2e9e0ae2 100644
> --- a/Documentation/networking/netconsole.txt
> +++ b/Documentation/networking/netconsole.txt
> @@ -51,8 +51,23 @@ Built-in netconsole starts immediately after the TCP stack is
>  initialized and attempts to bring up the supplied dev at the supplied
>  address.
>  
> -The remote host can run either 'netcat -u -l -p <port>',
> -'nc -l -u <port>' or syslogd.
> +The remote host has several options to receive the kernel messages,
> +for example:
> +
> +1) syslogd
> +
> +2) netcat
> +
> +   On distributions using a BSD-based netcat version (e.g. Fedora,
> +   openSUSE and Ubuntu) the listening port must be specified without
> +   the -p switch:
> +
> +   'nc -u -l -p <port>' / 'nc -u -l <port>' or
> +   'netcat -u -l -p <port>' / 'netcat -u -l <port>'
> +
> +3) socat
> +
> +   'socat udp-recv:<port> -'
>  
>  Dynamic reconfiguration:
>  ========================

Looks good to me, thanks Dirk.

Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>

-- 
Jesse Barnes, Intel Open Source Technology Center

  reply	other threads:[~2012-08-02 20:41 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-27  6:35 [RFC PATCH] " Dirk Gouders
2012-07-27  9:02 ` Cong Wang
2012-07-27  9:24   ` Dirk Gouders
2012-07-27 13:15     ` Borislav Petkov
2012-07-28 11:08       ` Dirk Gouders
2012-07-29  8:40         ` [RFC] netconsole.txt: "nc" needs "-p" to specify the listening port, [RFC] " Milton Miller
2012-07-29 11:52           ` Dirk Gouders
2012-08-01 14:06           ` Rob Landley
2012-08-01 15:46             ` Dirk Gouders
2012-08-02 20:39               ` Dirk Gouders
2012-08-02 20:41                 ` Jesse Barnes [this message]
2012-08-03  5:30                 ` Cong Wang
2012-08-03  6:33                   ` Dirk Gouders
2012-08-08 15:36                     ` Cong Wang
2012-08-09  6:41                       ` Dirk Gouders
2012-08-16 11:46                 ` Rob Landley
2012-08-02 19:57 ` [RFC PATCH] " Jan Engelhardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120802134155.791cfcce@jbarnes-desktop \
    --to=jbarnes@virtuousgeek.org \
    --cc=bp@alien8.de \
    --cc=gouders@et.bocholt.fh-gelsenkirchen.de \
    --cc=jengelh@inai.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=miltonm@bga.com \
    --cc=rob@landley.net \
    --cc=xiyou.wangcong@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome