TOP
AutoresTOTAL
LecturasSET 15
119171 visitas
- Contenidos - SET Staff
- Editorial - Editor
- Noticias - Rufus T. Firefly
- 050 - ArMaND VanHell
- IRC War - OmiKroN
- IPV6 - Tyako
- En linea con... GuyBrush - Paseante
- Tabla de tiempos del John the Ripper 1.4 - +NetBul
- Proyectos, peticiones, avisos - SET Staff
- Este banco esta ocupado - FCA000
- Los bugs del mes - SET Staff
- La red global de IBM - FCA000
- La vuelta a SET en 0x1D mails - SET Staff
- Introduccion a Iberpac III - El Nuevo Eljaker
- Curso de Novell Netware -II y III- - Madfran
- Hacking NT v 1.0 - Chessy
- NTFS - Falken
- Lo hice por todos vosotros... - Traduccion
- Despedida - Editor
- Fuentes Extract - SET Staff
- Llaves PGP - SET Staff
Fuentes Extract
Autor: SET Staff
-[ 0x13 ]-------------------------------------------------------------------- -[ SET-EXT ]----------------------------------------------------------------- -[ by SET Staff ]-----------------------------------------------------SET-15- Aqui teneis una ligera modificacion de la primera version de la utilidad para extraer los fuentes de la ezine. Es una modificacion del extract incluido en Phrack. Yo lo he probado, y funciona. Si teneis algun problema o preferis algun lenguaje, teneis dos opciones: esperar a SET 16, o usar las versiones que aparecen en el ultimo numero de Phrack, el 52. <++> utils/set-ext.c /* set-ext.c by Falken para SET * * SET - Saqueadores Edicion Tecnica, 1998 * * Extrae fragmentos especialmente marcados en una estructura jerarquica de * directorios. Usar para extraer los fuentes incluidos en algunos de los * articulos de SET. Compatible con el programa 'extract.c' aparecido en * Phrack 50. * * UNIX: gcc -o set-ext set-ext.c * DOS/Windows: Cualquier compilador de C * * SET-EXT <fichero> * */ #include <stdio.h> #include <string.h> void extraer (char *nombre) { char *c = "<++> ", *f = "<-->", b[256], *bp; FILE *e, *s = NULL; int l, n, i = 0; l = strlen(c); n = strlen(f); if ( !(e = fopen (nombre, "r"))) { printf ("No se pudo abrir %s.\n", nombre); return; } while (fgets (b, 256, e)) { if (!strncmp (b, c, l)) { b [strlen (b) - 1] = '\0'; if ((bp = strchr (b + l + 1, '/'))) while (bp) { *bp = '\0'; mkdir (b + l, 0700); *bp = '/'; bp = strchr (bp + 1, '/'); } if ((s = fopen (b + l, "w"))) printf ("- Extrayendo %s\n", b + l); else { printf ("No se puede extraer '%s'\n", b + l); return; } } else if (!strncmp (b, f, n)) { if (s) fclose (s); else { printf ("Error cerrando fichero.\n"); return; } } else if (s) { fputs (b, s); i++; } } if (!i) printf ("No se encontraron etiquetas de extraccion.\n"); fclose (e); } int main (int argc, char **argv) { int indice = 0; char name[256]; printf ("\nSET-EXT * Utilidad de extracion de SET * Version 1.2 * 15/6/1998"); printf ("\nFirst published in/Publicado por primera vez en: SET 13"); printf ("\nWritten by/Escrito por: Falken\n\n"); if (argc < 2) { printf ("Deja en blanco para salir\n\n"); do { *name = NULL; printf ("Fichero a escanear: "); gets (name); if (*name) extraer (name); } while (*name); } else if (argc >= 2) for (indice = 2; indice <= argc; indice++) extraer (argv [indice - 1]); return (0); } <-->