


TOP
Autores
TOTAL
LecturasSET 14
85828 visitas
- Contenidos - SET Staff
- Editorial - Editor
- Noticias - Rufus T. Firefly
- La importancia de llamarse hacker - Paseante
- PGP: Pontelo, ponselo - Jhames
- Quien soy? Jugando al escondite en iNET - Paseante
- Curso basico practico de crackeo de virus - +NetBul
- Proyectos, peticiones, avisos - SET Staff
- A5 - Tocado y hundido - Falken
- Los bugs del mes - SET Staff
- Rompiendo el ARJ - Falken
- La vuelta a SET en 0x1E mails - SET Staff
- Introduccion a Iberpac II - El Nuevo Eljaker
- Curso de Novell Netware -I- - Madfran
- Ladrillo de comunicaciones - Falken
- Despedida - Editor
- Fuentes Extract - SET Staff
- Llaves PGP - SET Staff
Fuentes Extract
Autor: SET Staff
-[ 0x10 ]-------------------------------------------------------------------- -[ SET-EXT ]----------------------------------------------------------------- -[ by SET Staff ]-----------------------------------------------------SET-14- 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 15, 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; printf ("\nSET-EXT * Utilidad de extracion de SET * Version 1.1 * 16/4/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); } <-->