Newer
Older
Sunfish / DOC / LEGACY-2.0.md
@Ivan Dominguez Ivan Dominguez 1 day ago 2 KB Pre 3.0 (definitions)

Sunfish 2.0: qué había y qué se hace con ello

La 2.0 (2021) es una aplicación WinForms sobre .NET Framework 4.5, con HttpListener. Su código sigue en el repositorio (Sunfish/, Sunfish Test Plugin/, Sunfish.sln, Sunfish Test Plugin.sln) hasta que empiece la reescritura. Entonces se eliminará: queda en la historia de git (conviene marcar antes ese punto con una etiqueta, p. ej. v2.0).

Capturas de la 2.0: main.png, editor.png.

Funciones y destino

2.0 En la 3
Servicio WebService: carpeta, documento por defecto, listado, solo lectura, borrar Se mantiene como share, con permisos más finos
Ejecutar ficheros en el servidor Se elimina
Compartir pantalla (_OLD_/RemoteScreen.cs) Se elimina
Menú raíz con la lista de servicios Se mantiene (RootMenu)
Locations con prioridad de la más específica Se mantiene, comparando por segmentos completos
Autodescarga del ejecutable (/$sunfish/Sunfish.exe) Se mantiene (/$sunfish/download)
Descarga de carpeta en ZIP (vía fichero temporal) Se mantiene, en flujo y compatible con descompresores antiguos
Subida por trozos con PUT y X-Sunfish-Offset Se mantiene en el modo moderno; el clásico usa formularios
Iconos del shell de Windows y miniaturas con System.Drawing Se elimina (solo Windows y no compatible con AOT); iconos GIF por tipo
Plantillas propias con reflexión (Templater) Se sustituye por generación sin reflexión
Recursos $sunfish "sellados" al final del .exe Se sustituye por recursos incrustados
Fuentes e iconos de Google Fonts Se elimina (no funciona sin Internet)
Plugins sf-*.dll cargados por reflexión Se elimina
Panel de administración con contraseña (sin terminar) Se implementa, con hash y AllowFrom
konsole.js (consola de depuración en la página) Se elimina
Lista de IP y copiar URL por interfaz Se mantiene, con QR
Arrastrar carpetas a la ventana para compartirlas Se mantiene; además, arrastrar sobre el ejecutable
Reglas del cortafuegos de Windows (sin usar) Pendiente (ver APLICACIONES.md)
Configuración JSON sunfish2 INI sunfish.conf, con importación de la 2.0
Requiere administrador (requireAdministrator) No
uHttp.cs (restos de otro proyecto) Se elimina

Los fallos de seguridad de la 2.0 y su corrección están en SEGURIDAD.md.

Lo que se aprovecha

  • MimeTypes.cs: la tabla de extensiones y tipos MIME.
  • El logotipo y el icono de carpeta de $sunfish/, convertidos a GIF.
  • La lógica de las locations (GetServiceForPath).