Repository of spec files needed to build the COPR r3pek/cybersec
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
fedora-cybersec/dirb/SOURCES/Fix-DIRB-for-GCC-10.patch

178 lines
7.5 KiB

From a949ec35d6368537e52bf85458aab590c4deec77 Mon Sep 17 00:00:00 2001
From: Nikita Ermakov <arei@altlinux.org>
Date: Wed, 9 Dec 2020 15:12:41 +0300
Subject: [PATCH] Fix DIRB for GCC 10
GCC now defaults to -fno-common. Use the common module variables.c for
global variables.
---
src/Makefile.am | 3 ++-
src/Makefile.in | 6 ++++--
src/dirb.h | 1 -
src/variables.c | 30 ++++++++++++++++++++++++++++++
src/variables.h | 45 +++++++++++++++++++++++----------------------
5 files changed, 59 insertions(+), 26 deletions(-)
create mode 100644 src/variables.c
diff --git a/src/Makefile.am b/src/Makefile.am
index c0d56c6..5e6f384 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -11,7 +11,8 @@ base = crea_wordlist.c\
calculanec.c\
utils.c\
options.c\
- resume.c
+ resume.c\
+ variables.c
dirb_SOURCES = $(base)
diff --git a/src/Makefile.in b/src/Makefile.in
index add6c74..990de35 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -50,7 +50,7 @@ binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
PROGRAMS = $(bin_PROGRAMS)
am__objects_1 = crea_wordlist.$(OBJEXT) dirb.$(OBJEXT) \
get_url.$(OBJEXT) lanza_ataque.$(OBJEXT) calculanec.$(OBJEXT) \
- utils.$(OBJEXT) options.$(OBJEXT) resume.$(OBJEXT)
+ utils.$(OBJEXT) options.$(OBJEXT) resume.$(OBJEXT) variables.$(OBJEXT)
am_dirb_OBJECTS = $(am__objects_1)
dirb_OBJECTS = $(am_dirb_OBJECTS)
dirb_LDADD = $(LDADD)
@@ -153,7 +153,8 @@ base = crea_wordlist.c\
calculanec.c\
utils.c\
options.c\
- resume.c
+ resume.c\
+ variables.c
dirb_SOURCES = $(base)
dirb_LDFLAGS = @NETWORK_LIBS@
@@ -230,6 +231,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/options.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resume.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utils.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/variables.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
diff --git a/src/dirb.h b/src/dirb.h
index 5917adc..a3df2eb 100644
--- a/src/dirb.h
+++ b/src/dirb.h
@@ -8,7 +8,6 @@
#include "global.h"
#include "variables.h"
-#include "estructuras.h"
#include "funciones.h"
diff --git a/src/variables.c b/src/variables.c
new file mode 100644
index 0000000..55afcf0
--- /dev/null
+++ b/src/variables.c
@@ -0,0 +1,30 @@
+#include "variables.h"
+
+FILE *outfile; // Fichero de output
+CURL *curl; // Descriptor CURL
+struct opciones options; // Array con las opciones recibidas del usuario
+
+struct result *nec[100]; // Array que almacena los NECs
+int contador; // Contador de palabras generadas
+int descargadas; // Numero de URLs descargadas
+int encontradas; // Numero de URLs encontradas
+int errores; // Contador de errores
+int existant; // Flag para determinar si la URL actual existe
+int listable; // Flag para determinar si un directorio es listable
+
+struct words *wordlist_base; // Base de la lista de palabras
+struct words *wordlist_current; // Nodo actual de la lista de palabras
+struct words *wordlist_final; // Final de la lista de palabras
+
+struct words *exts_base; // Base de la lista de extensiones
+struct words *exts_current; // Nodo actual de la lista de externsiones
+int exts_num; // Numero de extensiones
+
+struct words *muts_base; // Base de la lista de mutaciones
+
+struct words *dirlist_base; // Base de la lista de los directorios encontrados
+struct words *dirlist_final; // Final de la lista los directorios encontrados
+struct words *dirlist_current; // Nodo actual de la lista los directorios encontrados
+
+int resuming; // Flag para saber si estamos en una sesion resumida
+int next_dir; // Flag para saber si tenemos que pasar al siguiente directorio
diff --git a/src/variables.h b/src/variables.h
index d06d6bf..0b0c271 100644
--- a/src/variables.h
+++ b/src/variables.h
@@ -7,38 +7,39 @@
#include "global.h"
+#include "estructuras.h"
/* Global variables */
-FILE *outfile; // Fichero de output
-CURL *curl; // Descriptor CURL
-struct opciones options; // Array con las opciones recibidas del usuario
+extern FILE *outfile; // Fichero de output
+extern CURL *curl; // Descriptor CURL
+extern struct opciones options; // Array con las opciones recibidas del usuario
-struct result *nec[100]; // Array que almacena los NECs
-int contador; // Contador de palabras generadas
-int descargadas; // Numero de URLs descargadas
-int encontradas; // Numero de URLs encontradas
-int errores; // Contador de errores
-int existant; // Flag para determinar si la URL actual existe
-int listable; // Flag para determinar si un directorio es listable
+extern struct result *nec[100]; // Array que almacena los NECs
+extern int contador; // Contador de palabras generadas
+extern int descargadas; // Numero de URLs descargadas
+extern int encontradas; // Numero de URLs encontradas
+extern int errores; // Contador de errores
+extern int existant; // Flag para determinar si la URL actual existe
+extern int listable; // Flag para determinar si un directorio es listable
-struct words *wordlist_base; // Base de la lista de palabras
-struct words *wordlist_current; // Nodo actual de la lista de palabras
-struct words *wordlist_final; // Final de la lista de palabras
+extern struct words *wordlist_base; // Base de la lista de palabras
+extern struct words *wordlist_current; // Nodo actual de la lista de palabras
+extern struct words *wordlist_final; // Final de la lista de palabras
-struct words *exts_base; // Base de la lista de extensiones
-struct words *exts_current; // Nodo actual de la lista de externsiones
-int exts_num; // Numero de extensiones
+extern struct words *exts_base; // Base de la lista de extensiones
+extern struct words *exts_current; // Nodo actual de la lista de externsiones
+extern int exts_num; // Numero de extensiones
-struct words *muts_base; // Base de la lista de mutaciones
+extern struct words *muts_base; // Base de la lista de mutaciones
-struct words *dirlist_base; // Base de la lista de los directorios encontrados
-struct words *dirlist_final; // Final de la lista los directorios encontrados
-struct words *dirlist_current; // Nodo actual de la lista los directorios encontrados
+extern struct words *dirlist_base; // Base de la lista de los directorios encontrados
+extern struct words *dirlist_final; // Final de la lista los directorios encontrados
+extern struct words *dirlist_current; // Nodo actual de la lista los directorios encontrados
-int resuming; // Flag para saber si estamos en una sesion resumida
-int next_dir; // Flag para saber si tenemos que pasar al siguiente directorio
+extern int resuming; // Flag para saber si estamos en una sesion resumida
+extern int next_dir; // Flag para saber si tenemos que pasar al siguiente directorio
--
2.25.4