diff options
author | Nikita Ermakov | 2022-05-09 02:35:57 +0400 |
---|---|---|
committer | Nikita Ermakov | 2022-05-09 02:49:38 +0400 |
commit | cb2aeb0582b20d407432457876a7fb35bc5b0d34 (patch) | |
tree | 66b6a2c239050cbc64cad4cd0b1c4027583606da | |
parent | 78457a1b1969bc920f7428713b9551d39409adf2 (diff) | |
download | aur-cb2aeb0582b20d407432457876a7fb35bc5b0d34.tar.gz |
Fix build for with GCC>10
-rw-r--r-- | .SRCINFO | 2 | ||||
-rw-r--r-- | GCC-now-defaults-to-fno-common.-Use-the-common-modul.patch | 177 | ||||
-rw-r--r-- | PKGBUILD | 21 |
3 files changed, 195 insertions, 5 deletions
@@ -8,7 +8,9 @@ pkgbase = dirb license = GPL2 depends = curl source = http://sourceforge.net/projects/dirb/files/dirb/2.22/dirb222.tar.gz + source = GCC-now-defaults-to-fno-common.-Use-the-common-modul.patch sha512sums = 57305160b11be9d48b44ece5848a102ab7a493a7ac30a44c31339fd7ca659866521ba621dc0639dc28bf21c3b5315390b934441590dac7d5b463e68df4b80b81 + sha512sums = 76b4463f4bb7d3baae5c1d0ea6137e44c0840d1e60028283673ac03ea2f644e81a7c81627bd2eb69c86e75e52515c3d012bc1fff1a90798acd6839ea565370b5 pkgname = dirb diff --git a/GCC-now-defaults-to-fno-common.-Use-the-common-modul.patch b/GCC-now-defaults-to-fno-common.-Use-the-common-modul.patch new file mode 100644 index 000000000000..0d87a899767b --- /dev/null +++ b/GCC-now-defaults-to-fno-common.-Use-the-common-modul.patch @@ -0,0 +1,177 @@ +From d3a817e49142dc24c686da19ecabedc215079836 Mon Sep 17 00:00:00 2001 +From: Nikita Ermakov <sh1r4s3@mail.si-head.nl> +Date: Sat, 19 Mar 2022 22:34:53 +0400 +Subject: [PATCH] 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 100755 +--- 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 100755 +--- 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 100755 +--- 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 100755 +--- 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.36.0 + @@ -1,19 +1,30 @@ -# Maintainer: Olivier Le Moal <mail at olivierlemoal dot fr> +# Maintainer: Nikita Ermakov <sh1r4s3 at mail dot si-head dot nl> +# Previous maintainer: Olivier Le Moal <mail at olivierlemoal dot fr> pkgname=dirb pkgver=2.22 _name=dirb222 -pkgrel=1 +pkgrel=2 pkgdesc="DIRB is a web content scanner, brute forceing for hidden files" url="http://dirb.sourceforge.net/" arch=('i686' 'x86_64') license=("GPL2") depends=('curl') -source=("http://sourceforge.net/projects/${pkgname}/files/${pkgname}/${pkgver}/${_name}.tar.gz") -sha512sums=('57305160b11be9d48b44ece5848a102ab7a493a7ac30a44c31339fd7ca659866521ba621dc0639dc28bf21c3b5315390b934441590dac7d5b463e68df4b80b81') -build () { +source=( + "http://sourceforge.net/projects/${pkgname}/files/${pkgname}/${pkgver}/${_name}.tar.gz" + "GCC-now-defaults-to-fno-common.-Use-the-common-modul.patch" +) +sha512sums=( + '57305160b11be9d48b44ece5848a102ab7a493a7ac30a44c31339fd7ca659866521ba621dc0639dc28bf21c3b5315390b934441590dac7d5b463e68df4b80b81' + '76b4463f4bb7d3baae5c1d0ea6137e44c0840d1e60028283673ac03ea2f644e81a7c81627bd2eb69c86e75e52515c3d012bc1fff1a90798acd6839ea565370b5' +) +prepare() { chmod -R 750 "${srcdir}" cd "${srcdir}/${_name}" + patch -p1 < "${srcdir}/GCC-now-defaults-to-fno-common.-Use-the-common-modul.patch" +} +build () { + cd "${srcdir}/${_name}" ./configure --prefix=/usr make } |