• Publicidad

Ayuda con el módulo Socket

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Notapor explorer » 2006-05-12 11:23 @516

Unix_Sendin escribiste:Me da este error.
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
[Sat May 12 00:13:33 2007] [error] [client 127.0.0.1] Not enough arguments for socket at C:/Perl/lib/Socket.pm line 4, near ",)"\n
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4
En efecto... falta por poner la variable $proto después de la última coma, tal y como luego pones en el volcado de la documentación. Eso es lo que te está diciendo el error...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Publicidad

Notapor Unix_Sendin » 2006-05-14 03:13 @175

Disculpen por mi brutalidad pero es que esto a veces ya no doy más me vuelvo loco lo que estoy tratando de no perder la esperanza. Bueno, aquí le doy mis errores.
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
[Mon May 14 04:06:36 2007] [error] [client 127.0.0.1] Premature end of script headers: c:/appserv/www/cgi-bin/cgiirc/client-perl.cgi
[Mon May 14 04:06:36 2007] [error] [client 127.0.0.1] Argument "SOCK_DGRAM" isn't numeric in socket at C:/Perl/lib/Socket.pm line 4.\n
[Mon May 14 04:06:36 2007] [error] [client 127.0.0.1] Argument "PF_INET" isn't numeric in socket at C:/Perl/lib/Socket.pm line 4.\n
[Mon May 14 04:06:36 2007] [error] [client 127.0.0.1] Undefined subroutine &main::sockaddr_in called at C:/Perl/lib/Socket.pm line 7.\n
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4

Aquí está el Sockt.pm:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. use Socket;
  2.  
  3. $proto = getprotobyname('udp');
  4. socket( Socket_Handle, PF_INET, SOCK_DGRAM, $proto );
  5. $iaddr = gethostbyname('hishost.com');
  6. $port  = getservbyname( 'time', 'udp' );
  7. $sin   = sockaddr_in( $port, $iaddr );
  8. send( Socket_Handle, 0, 0, $sin );
  9.  
  10. $proto = getprotobyname('tcp');
  11. socket( Socket_Handle, PF_INET, SOCK_STREAM, $proto );
  12. $port = getservbyname( 'smtp', 'tcp' );
  13. $sin = sockaddr_in( $port, inet_aton("127.1") );
  14. $sin = sockaddr_in( 7,     inet_aton("localhost") );
  15. $sin = sockaddr_in( 7,     INADDR_LOOPBACK );
  16. connect( Socket_Handle, $sin );
  17.  
  18. ( $port, $iaddr ) = sockaddr_in( getpeername(Socket_Handle) );
  19. $peer_host = gethostbyaddr( $iaddr, AF_INET );
  20. $peer_addr = inet_ntoa($iaddr);
  21.  
  22. $proto = getprotobyname('tcp');
  23. socket( Socket_Handle, PF_UNIX, SOCK_STREAM, $proto );
  24. unlink('/var/run/usock');
  25. $sun = sockaddr_un('/var/run/usock');
  26. connect( Socket_Handle, $sun );
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4

Recuerda que uso Win32. Mis saludos, mis respetos para todos. Gracias por tener paciencia conmigo :wink:
Avatar de Usuario
Unix_Sendin
Perlero nuevo
Perlero nuevo
 
Mensajes: 37
Registrado: 2006-01-29 13:03 @585
Ubicación: Cuba - Ciudad Habana

Notapor explorer » 2006-05-14 08:24 @391

El fichero que muestras como Socket.pm, NO ES Socket.pm.

El fichero Socket.pm que DEBES tener instalado tiene ESTE aspecto. Entra en esa página y fíjate que son un montón de líneas y no las que pones.

Lo que nos estás enseñando es la SINOPSIS de cómo usar el módulo Socket, que no tiene => NADA <= que ver con la definición del módulo.

¿Se puede saber cómo has hecho la instalación del módulo?

Es más, si has instalado Perl en Windows, el módulo DEBERÍA de estar instalado de base. Búscalo en tu disco duro en la parte de librerías en la carpeta Perl.

=> NO <= es un módulo que debas meter junto con el cgiirc.
=> NO <= es un módulo que debas escribir NI modificar.
=> ES <= un módulo que DEBE venir con el Perl. Si no viene, instala un Perl NUEVO.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor Unix_Sendin » 2006-05-15 05:17 @262

Bueno, puse ese módulo en la librería y me dio este error:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
[Tue May 15 06:19:37 2007] [error] [client 127.0.0.1] Socket object version 1.72 does not match bootstrap parameter 1.78 at C:/Perl/lib/XSLoader.pm line 97.\n
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


Yo creo que no son compatible ¿qué opinan?

Mis saludos a todos. Muchas gracias a ti, explorer, por todo mi hermano.
Avatar de Usuario
Unix_Sendin
Perlero nuevo
Perlero nuevo
 
Mensajes: 37
Registrado: 2006-01-29 13:03 @585
Ubicación: Cuba - Ciudad Habana

Notapor explorer » 2006-05-15 05:38 @277

Efectivamente. Has colocado el Socket.pm versión v1.78 en un Perl que requiere la versión v1.72.

Por favor, mi hermano, INSTALA UN Perl NUEVO.

¡Esa versión que tienes del v1.72 es muy antigua! ¡Del año 2001!
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor Unix_Sendin » 2006-05-16 07:14 @343

¡Uff! :( Me volvió a decir que el socket no se puede abrir.

Abrí la ventada de MSDOS le di para instalar el socket, y nada, me sigue diciendo lo mismo.

Creo que le voy a escribir a la gente del CGI::IRC es que no encuentro el correo de ellos.

Bueno, mis saludos a todos. Gracias por su ayuda ;)
Avatar de Usuario
Unix_Sendin
Perlero nuevo
Perlero nuevo
 
Mensajes: 37
Registrado: 2006-01-29 13:03 @585
Ubicación: Cuba - Ciudad Habana

Notapor AkonD » 2006-05-16 08:37 @401

Si mal no recuerdo, el CGI::IRC solo funciona bajo sistemas UNIX.

Tienes otras opciones de webchat basado en Java como pueden ser el pjirc o jpilot.

salu2
AkonD
Perlero nuevo
Perlero nuevo
 
Mensajes: 50
Registrado: 2005-10-06 06:36 @316
Ubicación: España

Notapor Perl user » 2006-05-16 10:05 @462

Unix_Sendin escribiste:Me volvió a decir que el socket no se puede abrir


Here we go....

Mira... creo que ya te expliqué y ya explorer también te dio otra solución... y aún así la estás evadiendo. No es problema de CGI::IRC, es problema TUYO. No recomiendo molestar a la gente de CGI::IRC cuando realmente el del problema eres tú, simplemente van a ignorar la petición.

También, personalmente recomiendo que antes de enviar un mensaje, le des una leída... lo que escribimos y la manera en la que lo hacemos expresa mucho de nuestra persona, y es necesario hacerlo bien para tener una buena imagen, tenemos la libertad de escribir y poner lo que nosotros queramos, pero eso.... habla mucho de nosotros, créeme.

Saludos,
Marco A. Manzo
[email protected]
http://www.unixmonkeys.com/amnesiac/
Perl Programming Language
Perl user
Maestro honorario
Maestro honorario
 
Mensajes: 271
Registrado: 2004-11-03 21:11 @924

Notapor Unix_Sendin » 2006-05-18 08:43 @405

Saludos, ante de todo.

AkonD: El CGI::IRC sí lo hay para win32 :wink:


Perl user:

Mi hermano: yo te entiendo. Comprendo es que ya a mi se me cae la cara de seguir preguntando sobre este tema. El problema es que he hecho todo lo que me han dicho y nada. Por eso quería escribir al autor para que me dijera los pasos nada más, porque ya yo no sé qué hacer. Yo sé que es un error mio porque si no fuera un error mio el autor del CGI::IRC no hubiera sacado el CGI::IRC para win32, pero bueno, es que ya es un descaro mio con todo lo que me han ayudado seguir preguntando. Es por eso que lo decía :cry:

Bueno, mis mayores respetos. Para todos, mis abrazos como hermano.
Avatar de Usuario
Unix_Sendin
Perlero nuevo
Perlero nuevo
 
Mensajes: 37
Registrado: 2006-01-29 13:03 @585
Ubicación: Cuba - Ciudad Habana

Anterior

Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 13 invitados

cron