![]() |
De los mismos creadores de pico llega ...
1 Archivos Adjunto(s)
Pues eso, estos días estoy entretenido con un nuevo juguete, no se si recordáis el micro servidor que colgué por aquí ya hace un año, pico lo llame, pues ahora he intentando hacer algo similar en linux (el pico original no funciona en linux porque wine no implementa todavía la API TransmitFile).
Así que he abierto el gedit, y comencé a escribir código en C. Por ahora llevo unas 500 lineas de código, y ya maneja correctamente el comando Get, puede enviar archivos, mensajes de texto, listar directorios, codificar/descodificar urls y además es multihilo. Faltan por implementar la autentificación, el comando Head y algún método de Timeout a la hora de leer el socket, pero eso ya lo haremos mas adelante si es necesario. El funcionamiento es sencillo, solo hay que ejecutar pico en un terminal y luego en cualquier navegador utilizar la url http://127.0.0.1:1978/ si es en el mismo equipo o http://tuip:1978/ si es desde otro equipo de tu red. Se puede ejecutar sin usar el terminal, pero entonces el programa permanece oculto y no mostraría ni mensajes, ni errores (si los hubiera). Una vez que accedemos a esa url vemos un listado de todo el sistema de ficheros, aquí es importante recordar que el programa tiene los mismos permisos de lectura que el usuario que lo ejecuta (para mas adelante estoy pensando en utilizar algo como chroot para cambiar el directorio raíz del proceso). Como siempre, se admiten sugerencias, consejos, criticas (sin pasarse :p ) pero siempre recordando que se trata de un juguete y no de un servidor serio, yo al menos pienso utilizarlo como venia haciéndolo con su hermano gemelo en windows, para pasar archivos de un ordenador a otro rápidamente y sin tener que andar instalando nada, ni cambiando la configuración de las carpetas compartidas, etc ... un par de clicks y copiando, sin complicarse (muy útil cuando quieres pasar archivos al portátil de un amigo). Cambios: - 12/04/2006
|
Cita:
No he podido probarlo, y la verdad es que no sé cuándo podré, pero hay cosillas interesantes. No dices nada de condiciones para usarlo, así que supondré que es completamente libre (el sueño de Stallman :D). Lo digo porque tengo un montón de ideas pendientes a las que tendré que dar salida cuando consiga establecerme definitivamente y... :rolleyes: |
Cita:
Por otro lado, aun siendo libres y sin tener ninguna obligación de hacerlo, estaría bien, que si utilizas el código me mandaras un mensaje para saber como termino la cosa, solo por curiosidad. |
Stupendo.
Y por supuesto que puedes utilizar mis licencias, por eso las puse en mi web. Puede que las cambie algo en un futuro próximo, especialmente lo de "Modificaciones al Acuerdo de Licencia" ya que ahora mismo Burdjia, como ente, no existe y ya no dispongo del apartado de correos, pero lo demás seguirá siendo igual, así que sin problema. |
Bueno al parecer tenia un pequeño problema de zombies. Cuando un proceso hijo finalizaba, no lo limpiaba, quedando entonces en el sistema como un proceso zombie. Bueno, eso esta solucionado, ahora manejo la señal que indica que el proceso hijo a terminado y hago limpieza. Ya subí el zip con el código corregido.
Espero que el siguiente bug tarde un poco mas en aparecer :o |
Hola,
Está muy chulo Pico Seoane. Y me he puesto a probar lo de "compartir" archivos entre ordenadores y la cosa parece muy curiosa. :) No garantizo que vaya a estar "online", pero, ¿alguien podría probar a entrar en la siguiente dirección y decirme lo que ve? :) http://82.159.35.98:1978 |
:D Lo que se ve dec es un dialogo pidiendo usuario y contraseña, y yo que pensé que habías puesto tu disco duro online :p
|
Hola,
:D :D :D Eso era justo lo que quería que se viera. :) :D Ahora puedes probar con el usuario: "clubdelphi" y la contraseña "clubdelphi". :) |
Y por lo que veo estas usando Pico :D
|
Ahora sale un directorio, con un archivo llamado hola.txt
|
Hola,
Sí... :) La verdad es que es curioso esto, ¿eh? Dan ganas de ponerse a hacer algo y todo... de momento ya he añadido a Pico la capacidad de aceptar como parámetro el nombre de un usuario, además de la contraseña. :) No sé... esta misma tarde tengo que irme de casa a hacer unos asuntos, y el ordenador se quedará probablemente encendido... no sé si dejar a Pico "corriendo" de modo que si necesito algún archivo o algo... pueda recurrir a él. Qué cosas... desde luego es curioso Pico. :) |
Cita:
Cita:
|
Hola,
Nope. No he probado la versión para Linux, pero, supongo que viniendo de quien viene será igual o mejor que la de Windows. Y sí que dan ganas de ponerse a juguetear un poco, pero, efectivamente, no sé si está uno lo suficientemente preparado para estas cosas. Por ejemplo, el tema de la seguridad. Tal como yo lo veo, no es posible "saltarse" a Pico a no ser que se conozca el nombre de usuario y la contraseña correspondientes. Ahora bien, esto es tal y como yo lo veo. Otra cosa es que esté completamente equivocado. Una cosa Seoane, ahora que lo pienso, lo mismo que está Pico para HTTP podría uno escribir un Pico para FTP, ¿no? Pero me estoy desviando del tema... :) |
Cita:
Cita:
|
Cita:
Al final, ten en cuenta que agregar una licencia puede ser tan simple como "Este codigo esta disponible bajo la licencia SuperWau! disponible en http://unaurl.com" (En caso de usar una licencia con el texto publico, como las creative commons). Por experiencia, las cosas legales son las que uno menos piensa pero luego vuelven para darte en el trasero... |
Cita:
|
Cita:
"Todos mis mensajes, incluidos código y archivos adjuntos esta bajo la licencia Superguay" ¿Que os parece? he visto que en algún sitio lo hacían así, pero me parecía un poco pedante. Para cuatro lineas de código que se pueden meter en un mensaje me parece excesivo tener que andar pensando en licencias y demás. |
Con respecto al codigo que se pone en los post no es tan serio -al fin rararmente es codigo compilable o completo-, pero en el caso de PICO o cualquier software que es funcional pues si.
|
Y una pregunta social....
Porque re-hiciste PICO en C,sabiendo que existe freepascal? Una mera aventura al lado oscuro? ;). Bueno,no que desanime a probar otros lenguajes. Por ahi he probado ruby,python, erllang y otros mas raros tambien... simplemente que me parece que de tener una cosa funcionando.... |
Cita:
En cuanto a freepascal, me encantaría utilizarlo, pero no termino de acostumbrarme a el :( , no es mi querido delphi :p Mas adelante lo probare de nuevo y veremos que tal ... |
La franja horaria es GMT +2. Ahora son las 06:38:52. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi