🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #17490

Re: una vez empezado con sockets...

#17490
From: Ignacio Arenaza
Date: Tue, 21 Dec 1999 00:00
51 lines
2780 bytes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

>>>>> "Alex" == Alex Estevez <alex@interactivebureau.com> writes:

    Alex> Pero ahora empiezan mis dudas. Antes de empezar a pelearme
    Alex> con los semaforos y la memoria compartida, me gustaria saber
    Alex> si hay alguna forma facil de hacer lo siguiente:

    Alex> creas un server que espera con listen y hace los forks
    Alex> pertinentes cuando un cliente se conecta.

    Alex> supongamos ahora que hay dos clientes conectados... como me
    Alex> lo monto para que se habra un socket entre ellos, sin tener
    Alex> mas datos que los pids de los hijos del server cada uno con
    Alex> un socket conectado al cliente?  si puede hacerse con solo

El socket lo tiene que abrir uno de los clientes hacia el otro. Para
esto le hara falta la IP del otro cliente. Por tanto, basta con
guardar las IPs de los clientes atendidos por cada hijo. Entre los
clientes y el servidor tendras que definir un protocolo para pasarle
ese dato de alguna forma.

Cada hijo del servidor que atienda a un cliente tiene un socketpair
(para hacerlo mas facil que usar dos tuberias por hijo) que le une al
padre, y cuando un cliente pide conectarse con otro, el hijo le manda
al padre la peticion de obtencion de la IP asociada al otro cliente
(tendras que definir tambien como se hace esto). Luego tendras que
interrogar al resto de los hijos para ver quien esta unido a ese
cliente (nuevo "protocolo" a definir) y que este le devuelva la IP
asociada. Por ultimo, solo resta pasar este dato al hijo que la ha
solicitado para que se la pase al cliente.

Sencillo, �verdad? ;-))))

Saludos. I�aki.

- -- 
  Linux Registered User #44369
  Si este mensaje no esta firmado con PGP/GPG, entonces no es mio.
  If this message is not PGP/GPG signed, then it's not mine.
  Get PGP/GPG Keys at http://personales.jet.es/inaki.arenaza/pgpkey.html

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.0 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.4 and Gnu Privacy Guard

iD8DBQE4X+4xZXLnGT1HLgcRAqO0AJ9/0shN/twWQIqCXvUSDpTSZBsNkwCfWgER
7Sgs4wfUBzfzBLwr0rghGw4=
=DRm4
-----END PGP SIGNATURE-----
Technical Details
Message-ID: <87iu1sro3x.fsf@eb2ebu.ampr.org>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <385E8910.48FBA1DF@interactivebureau.com>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,e05694dc7b82742
X-Google-Attributes: gidf86c8,public
From: Ignacio Arenaza <inaki.arenaza@jet.es>
Subject: Re: una vez empezado con sockets...
Date: 1999/12/21
Message-ID: <87iu1sro3x.fsf@eb2ebu.ampr.org>
X-Deja-AN: 563545987
Content-Transfer-Encoding: 8bit
References: <385E8910.48FBA1DF@interactivebureau.com>
Organization: Servidor NNTP de eb2ebu.ampr.org
Content-Type: text/plain; charset=iso-8859-1
User-Agent: Gnus/5.070096 (Pterodactyl Gnus v0.96) Emacs/20.3
Mime-Version: 1.0
Newsgroups: es.comp.os.linux.programacion