RPOST(1)

NOMBRE
rpost - envía un artículo a un servidor de noticias NNTP

SINOPSIS
rpost [ nodo ] [ @archivo ] [ -s | -S archivo ] [ -e | -E archivo ] [ -b archivo_lotes ] [ -r archivo_rnews ruta_rnews ] [ -p prefijo ] [ -Q ] [ -d ] [ -U ID_usuario ] [ -P contraseña ] [ -M ] [ -N puerto ] [ -l archivo_de_frases ] [ -D ] [ -T tiempo_tope ] [ -u ] [ -n ]

[ -F perl_file ] [ -i ] [ -z ] [ -f filter $$o=<outfile> filter_arg1 ... ]

DESCRIPCIÓN
Rpost will post one or more articles, specified by hostname. If hostname is not specified, rpost will use the environment variable NNTPSERVER. The hostname may optionally include the port number, in the form Host:Port If this form is used, any port number specified via the -N option will be ignored.

Opciones generales

@archivo

Esta opción hace que rpost lea otras opciones del archivo indicado, además de las de la línea de órdenes.

-D Esta opción hace que rpost envíe varios mensajes de debug a "debug.suck", para uso básicamente del programador.

-e|-E archivo

Estas opciones enviarán todos los mensajes de error (normalmente mostrados por la salida de error estándar, stderr) a un archivo distinto. La opción en minúscula, -e, enviará los mensajes de error al archivo definido en suck_config.h y compilado en suck. El valor por defecto es suck.errorlog. La opción en mayúscula, -E, necesita un nombre de archivo. Todos los mensajes de error serán enviados a dicho archivo.

-i

This option tells rpost to ignore the 201 (no posting allowed) from the welcoming message and to try and post anyway. Some news servers (inn-2.3.1) send 201 no posting allowed when they are using the AUTHINFO commands to verify permission to post.

-l archivo_de_frases

Esta opción hace que rpost cargue un archivo de frases alternativas, en vez de usar los mensajes imbuidos. Esto le permite a Vd. hacer que rpost muestre sus mensajes en otro idioma o permite personalizar los mensajes sin tener que recompilar. Para más detalles vea "FRASES EN DIVERSOS LENGUAJES" en suck(1).

-M

Esta opción hace que rpost envíe una orden de "modo de lectura" al servidor remoto. Si Vd. obtiene un mensaje de orden inválida inmediatamente después del anuncio de bienvenida, pruebe esta opción.

-n

Esta opción hace que rpost muestre el nombre del archivo mientras se está subiendo.

-N puerto

Esta opción hace que rpost use un puerto NNRP alternativo cuando se conecta al nodo, en lugar del puerto 119, que es el que se toma por defecto.

-s|-S archivo

Estas opciones enviarán todos los mensajes de estado (normalmente enviados a la salida estándar, stdout) a un archivo distinto. La opción en minúscula, -s, enviará los mensajes al archivo definido en suck_config.h y compilado en suck. El valor por defecto es /dev/null, esto es: no se muestran los mensajes de estado. La opción en mayúscula, -S, necesita un nombre de archivo. Todos los mensajes de estado serán enviados a dicho archivo.

-T Esta opción reemplaza el valor precompilado de TIMEOUT, tiempo tope de conexión. Es el tiempo que rpost está esperando datos del host remoto antes de sobrepasar el tope y abortarse.

-u Esta opción hace que rpost envíe al servidor remoto una orden AUTHINFO USER nada más conectarse, en lugar de esperar la petición de autorización. Deberá además usar las opciones -U y -P cuando use ésta.

-U usuario -P clave

Estas dos opciones le permiten a Vd. especificar un usuario y una clave de acceso si su servidor NNTP las solicita.

-Q

This option allows you to specify the userid and password via the environment variables "NNTP_USER" and "NNTP_PASS" instead of on the command line. This prevents a potential security issue where someone doing a ps command can see your login and password.

-z This option tells rpost to use SSL to communicate with the remote hosts, if SSL was compiled into rpost.

MODO STDIN
rpost

rpost nodo

rpost lee un artículo en su entrada estándar y lo envía al servidor NNTP. El artículo debe contener una cabecera con al menos dos líneas llamadas Newsgroups: y Subject: y un cuerpo (el artículo propiamente dicho). La cabecera y el cuerpo deben estar separados por un carácter de cambio de línea. Rpost no hace ningún cambio en el artículo.

Rpost usa la orden POST para enviar el artículo, tal y como haría un programa lector de noticias. Esto es práctico cuando se usa SLIP o PPP pues muchos proveedores de servicios de internet no permiten otro método de enviar artículos (como nntpsend o innxmit).

MODO BATCH

rpost hostname -b batchfile -p prefix -d

This batch mode allows you to give rpost a list of articles, and have them all posted.

-b archivo_batch

Una lista de los artículos a enviar. Este parámentro es NECESARIO. Este archivo contiene una línea por cada artículo, siendo cada una de ellas el camino+nombre del archivo que contiene al artículo. Por ejemplo:

    -b /usr/spool/news/out.going/pixi

Si hay problemas al enviar el artículo se creará un archivo de fallos. Se llamará "archivo_batch".fail y contendrá la línea del archivo_batch de cada uno de los artículos que no sean enviados correctamente. Este archivo puede ser usado para volver a enviar los mensajes usando rpost. NOTA: los mensajes duplicados no son considerados como erróneos a efectos de ser incluidos en el archivo "fail".

-d

Si se envían los artículos correctamente, esta opción hace que rpost borre
 el archivo especificado con la opción -b.

-p prefijo

Este parámetro debe ser especificado si el archivo_batch contiene solo una parte del camnino de los artículos, en lugar del camino completo. Esto es útil cuando archivo batch es generado por otro programa. Por ejemplo, Inn lista los artículos en su directorio out.going pero relativos a su directorio base: /var/spool/news. En ese caso basta usar:

     -p /usr/spool/news

MODO RNEWS
rpost equipo -r archivo_rnews ruta_rnews

Esta opción permite el empleo de archivos generados por rnews para postear. Requiere dos parámetros.

rnews_file - this is the base name for the rnews files. If you have your rnews file(s) called batch1, batch2, etc., then this argument would be "batch".

rnews_path - this is the path to the location of the rnews files.
    -r batch /usr/tmp/rnews

-d

Si se envían los artículos correctamente, esta opción hace que rpost borreeste archivo rnews en concreto.

MODOS DE FILTRADO
-f filtro $$o=<archivo_salida> arg1_filtro arg2_filtro ...

In many cases, each article must be massaged before the remote NNTP will accept it. This option, and the embedded perl filter option below, lets you do that. These filters do not work in STDIN mode, but in the batch and rnews modes from above. Note that the -f .... option must be the LAST option, as everything that follows it is passed to the filter, except as noted below. There are three required parameters with this:

$$o=<archivo_salida>    - <archivo_salida> es el nombre del
artículo generado por el filtro y que será enviado al servidor NNTP remoto. NO se pasa al programa de filtro. Puede ser especificado en cualquier lugar de la línea DESPUÉS del argumento -f, bien antes o después del nombre del filtro.

filtro - nombre del programa a ejecutar. Cualquier cosa que siga al filtro, EXCEPTO $$o, será pasado como argumento al filtro.

arg1 - El primer argumento a su programa/script de filtro. Muy posiblemente sea $$i, el cual será reemplazado por rpost con el nombre del artículo que va a ser filtrado.

arg2 ... - cualesquiera argumentos adicionales que sean necesarios.

Un ejemplo para clarificar esto un poco. A algunos servidores NNTP no les gusta recibir artículos con el campo NNTP-Posting-Host relleno. Cree un pequeno script para borrar esto del artículo:

-miscript--------------------------------------------

#!/bin/sh

sed -e "/^NNTP-Posting-Host/d" $1 > $2

-end miscript--------------------------------------

Y ejecute rpost con algo como esto:
    rpost localhost -b /usr/spool/news/out.going/pixi -f miscript \$\$o=/tmp/MSG_FILTRADO \$\$i /tmp/MSG_FILTRADO

Entonces, antes de que cada artículo sea enviado, se llamará a miscript de este modo:
    miscript archivo_con_mensaje /tmp/MSG_FILTRADO

After myscr has finished, rpost uploads the cleaned up article, stored in /tmp/FILTERED_MSG, to the remote NNTP server.

NOTA:
$$o y $$i tienen que ir precedidos por símbolos de escape, como pueden ser barras de división invertidas o bien entre comillas simples para evitar que la shell los interprete como variables y los expanda. ¡ Si no se tiene esa precaución puede ocurrir que rpost no envíe mensajes !

-F perlfilter

This option allows you to use an embedded perl filter to filter your articles. In order to use this, you must edit the Makefile, and define the various PERL_ options. It has a couple of advantages over the -f option above. Because it is embedded perl, there are no forks and execls() done, so it should be faster. Also, you don't need to worry about the arguments to the program and escaping $$, etc as above.

Rpost will, when it starts up, load in the perlfilter file designated and parse it for syntax errors. Then, for each article to be uploaded, rpost will call the subroutine "perl_rpost", contained in the perlfilter file. See sample/put.news.pl for a complete working example. There are three key points you need to be aware of when creating your filter.

    1. The perlfilter file must contain the line "package Embed::Persistant;", so that variables in the perlfilter file don't clash with rpost variables, and the subroutine must be called "perl_rpost". This can be changed by editting the PERL_RPOST_SUB define in suck_config.h.

    2. The perl_rpost subroutine receives the input file name as its sole argument, and must return the full path to the location of the filtered article as a single scalar string (return $outfile).

    3. The subroutine must explicitly close the output file (containing the filtered argument) before it returns. This is because perl will only do an automatic close upon program completion (in our case when rpost exits), or when the file handle is reused (the next time the subroutine is called). If the close is not done, then more than likely, a 0 byte file will exist when rpost tries to post the article, and errors will result.

PRECAUCIÓN:

Tenga mucho cuidado con lo que el filtro borra del artículo. Borrar una línea equivocada puede tener efectos perniciosos más tarde. Por ejemplo, no borre la línea NSG-ID, pues en ese caso puede ocurrir que un mismo mensaje sea enviado varias veces, dependiendo de la configuración de los servidores local y remoto.

ARCHIVO DE ARGUMENTOS DE RPOST

Si Vd. especifica un @archivo en la línea de órdenes, rpost leerá ese archivo y buscará en él argumentos que serán pasados a rpost. Puede especificar los mismos argumentos que en la línea de órdenes. Los argumentos pueden aparecer en la misma línea o distribuidos en varias líneas. Puede incluir comentarios. Los comentarios empiezan por '#' y continúan hasta el final de la línea. Los argumentos de la línea de orden prevalecen sobre los del archivo. Una ventaja de usar un archivo de parámetros en lugar de la línea de órdenes es que no es necesario incluir símbolos de escape para prevenir la expansión de los caracteres especiales como $.

    # Ejemplo de archivo de parámetros
    -b batch # opción de archivar en un lote batch
    -M    # usar el modo de lectura

VALORES DEVUELTOS
Rpost devuelve los siguientes valores:

    0 = correcto, sin errores
    1 = error enviando un artículo
    2 = imposible llevar a cabo un proceso de autorización NNTP con servidor remoto
    3 = respuesta inesperada en el curso de una autorización NNTP.
    -1 = otro error fatal.

VÉASE TAMBIÉN
suck(1), testhost(1), lpost(1).

TRADUCCIÓN
La traducción al español de esta página del manual fue creada por Claudio S. Suárez <csuarez@ctv.es> y Marcos Fouces <marcos@debian.org>

Esta traducción es documentación libre; lea la GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.

Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.