Explorar el Código

* Reorganize structure of source files

* Adopt build system for new structure

--HG--
rename : cfg_file.h => src/cfg_file.h
rename : cfg_file.l => src/cfg_file.l
rename : cfg_file.y => src/cfg_file.y
rename : cfg_utils.c => src/cfg_utils.c
rename : controller.c => src/controller.c
rename : filter.c => src/filter.c
rename : filter.h => src/filter.h
rename : fstring.c => src/fstring.c
rename : fstring.h => src/fstring.h
rename : main.c => src/main.c
rename : main.h => src/main.h
rename : mem_pool.c => src/mem_pool.c
rename : mem_pool.h => src/mem_pool.h
rename : memcached-test.c => src/memcached-test.c
rename : memcached.c => src/memcached.c
rename : memcached.h => src/memcached.h
rename : perl.c => src/perl.c
rename : perl.h => src/perl.h
rename : plugins/regexp.c => src/plugins/regexp.c
rename : plugins/surbl.c => src/plugins/surbl.c
rename : protocol.c => src/protocol.c
rename : protocol.h => src/protocol.h
rename : upstream.c => src/upstream.c
rename : upstream.h => src/upstream.h
rename : url.c => src/url.c
rename : url.h => src/url.h
rename : util.c => src/util.c
rename : util.h => src/util.h
rename : worker.c => src/worker.c
tags/0.2.7
Vsevolod Stakhov hace 15 años
padre
commit
2aa9c74f1c

+ 8
- 10
Makefile.in Ver fichero

.PHONY: perl clean $(SUBDIRS) .PHONY: perl clean $(SUBDIRS)


all: perl $(TARGETS)
all: $(OBJDIR) perl $(TARGETS)

$(OBJDIR):
mkdir -p $(OBJDIR)


perl: perl/Makefile perl: perl/Makefile
cd perl && make && cd .. cd perl && make && cd ..
perl/Makefile: perl/Makefile:
cd perl && perl Makefile.PL && cd .. cd perl && perl Makefile.PL && cd ..


memctest: upstream.c memcached.c memcached-test.c
$(CC) $(OPT_FLAGS) $(CFLAGS) $(PTHREAD_CFLAGS) -c upstream.c
$(CC) $(OPT_FLAGS) $(CFLAGS) $(PTHREAD_CFLAGS) -c memcached.c
$(CC) $(OPT_FLAGS) $(CFLAGS) $(PTHREAD_CFLAGS) -c memcached-test.c
$(CC) $(OPT_FLAGS) $(PTHREAD_LDFLAGS) $(LD_PATH) upstream.o memcached.o memcached-test.o $(LIBS) -o memcached-test

install: $(EXEC) install: $(EXEC)
cd perl && make install && cd .. cd perl && make install && cd ..
$(INSTALL) -b $(EXEC) $(PREFIX)/sbin/$(EXEC) $(INSTALL) -b $(EXEC) $(PREFIX)/sbin/$(EXEC)
$(MKDIR) -o $(RSPAMD_USER) -g $(RSPAMD_GROUP) /var/run/rspamd $(MKDIR) -o $(RSPAMD_USER) -g $(RSPAMD_GROUP) /var/run/rspamd


clean: clean-subdirs perl/Makefile clean: clean-subdirs perl/Makefile
rm -f *.o $(EXEC) *.core
rm -f cfg_lex.c cfg_yacc.c cfg_yacc.h
rm -f $(OBJDIR)/*.o $(EXEC) *core
rm -fr $(OBJDIR)
rm -f $(SRCDIR)/cfg_lex.c $(SRCDIR)/cfg_yacc.c $(SRCDIR)/cfg_yacc.h
cd perl && make clean && cd .. cd perl && make clean && cd ..


dist-clean: clean dist-clean-subdirs dist-clean: clean dist-clean-subdirs
rm -f Makefile rm -f Makefile
rm -f test/Makefile rm -f test/Makefile
rm -f config.log rm -f config.log
rm -f md5.h md5.c strlcpy.h strlcpy.c queue.h config.h modules.c modules.h
rm -f $(SRCDIR)/md5.h $(SRCDIR)/md5.c $(SRCDIR)/strlcpy.h $(SRCDIR)/strlcpy.c $(SRCDIR)/queue.h $(SRCDIR)/config.h $(SRCDIR)/modules.c $(SRCDIR)/modules.h
cd perl && rm -f Makefile.old && rm -f Makefile.PL && cd .. cd perl && rm -f Makefile.old && rm -f Makefile.PL && cd ..


creategroup: creategroup:

+ 71
- 44
configure Ver fichero

LEX_OUTPUT="cfg_lex.c" LEX_OUTPUT="cfg_lex.c"
CONFIG="config.h" CONFIG="config.h"


SRCDIR="src"
OBJDIR="src/.obj"
SOURCES="upstream.c cfg_utils.c memcached.c main.c util.c controller.c worker.c fstring.c url.c perl.c protocol.c mem_pool.c filter.c plugins/regexp.c plugins/surbl.c ${LEX_OUTPUT} ${YACC_OUTPUT}" SOURCES="upstream.c cfg_utils.c memcached.c main.c util.c controller.c worker.c fstring.c url.c perl.c protocol.c mem_pool.c filter.c plugins/regexp.c plugins/surbl.c ${LEX_OUTPUT} ${YACC_OUTPUT}"
MODULES="surbl regexp" MODULES="surbl regexp"


CFLAGS="$CFLAGS " CFLAGS="$CFLAGS "
LDFLAGS="$LDFLAGS -L/usr/lib -L${LOCALBASE}/lib" LDFLAGS="$LDFLAGS -L/usr/lib -L${LOCALBASE}/lib"
OPT_FLAGS="-O -pipe -fno-omit-frame-pointer" OPT_FLAGS="-O -pipe -fno-omit-frame-pointer"
DEPS="config.h cfg_file.h memcached.h util.h main.h upstream.h fstring.h url.h perl.h mem_pool.h protocol.h filter.h ${LEX_OUTPUT} ${YACC_OUTPUT}"
DEPS="$SRCDIR/config.h $SRCDIR/cfg_file.h $SRCDIR/memcached.h $SRCDIR/util.h $SRCDIR/main.h $SRCDIR/upstream.h $SRCDIR/fstring.h $SRCDIR/url.h $SRCDIR/perl.h $SRCDIR/mem_pool.h $SRCDIR/protocol.h $SRCDIR/filter.h $SRCDIR/${LEX_OUTPUT} $SRCDIR/${YACC_OUTPUT}"
EXEC=rspamd EXEC=rspamd
USER=postfix USER=postfix
GROUP=postfix GROUP=postfix


prepare_config() prepare_config()
{ {
echo "#ifndef CONFIG_H_IN" > $CONFIG
echo "#define CONFIG_H_IN" >> $CONFIG
cat "$CONFIG.in" >> $CONFIG
echo "#ifndef CONFIG_H_IN" > $SRCDIR/$CONFIG
echo "#define CONFIG_H_IN" >> $SRCDIR/$CONFIG
cat "$CONFIG.in" >> $SRCDIR/$CONFIG
} }


finish_config() finish_config()
{ {
echo "#endif" >> $CONFIG
echo "#endif" >> $SRCDIR/$CONFIG
} }


cleanup() cleanup()


have_opt() have_opt()
{ {
echo "#define HAVE_$1" >> $CONFIG
echo "#define HAVE_$1" >> $SRCDIR/$CONFIG
OPTS="$OPTS HAVE_$1" OPTS="$OPTS HAVE_$1"
} }




} }


check_util()
{
UTIL=`PATH="$PATH:$PREFIX/bin:$LOCALBASE/bin" which $1`
echo -n "Testing for $1: "
if [ -x $UTIL ] ; then
echo "found -> $UTIL"
return 0
else
echo "not found"
exit 1
fi

}

check_function() check_function()
{ {
FUNCTION=$1 FUNCTION=$1
INSTALL="/usr/bin/install -C -S -v" INSTALL="/usr/bin/install -C -S -v"
MKDIR="/usr/bin/install -d -v" MKDIR="/usr/bin/install -d -v"
MANPATH="${PREFIX}/man" MANPATH="${PREFIX}/man"
echo "#define FREEBSD" >> $CONFIG ;;
echo "#define FREEBSD" >> $SRCDIR/$CONFIG ;;
Linux*) OS="linux" CFLAGS="${CFLAGS} -D_GNU_SOURCE" Linux*) OS="linux" CFLAGS="${CFLAGS} -D_GNU_SOURCE"
echo "#define LINUX" >> $CONFIG ;;
echo "#define LINUX" >> $SRCDIR/$CONFIG ;;
Solaris*) OS="solaris" CFLAGS="${CFLAGS}" Solaris*) OS="solaris" CFLAGS="${CFLAGS}"
echo "#define SOLARIS" >> $CONFIG ;;
echo "#define SOLARIS" >> $SRCDIR/$CONFIG ;;
*) OS="unknown" ;; *) OS="unknown" ;;
esac esac
} }
write_modules() write_modules()
{ {
# Write modules init function # Write modules init function
echo "#ifndef MODULES_H" > modules.h
echo "#include \"config.h\"" >> modules.h
echo "#include \"modules.h\"" > modules.c
echo "module_t modules[] = {" >> modules.c;
echo "#ifndef MODULES_H" > $SRCDIR/modules.h
echo "#include \"config.h\"" >> $SRCDIR/modules.h
echo "#include \"modules.h\"" > $SRCDIR/modules.c
echo "module_t modules[] = {" >> $SRCDIR/modules.c;
modules_num=0 modules_num=0
for m in $MODULES ; do for m in $MODULES ; do
echo "{\"${m}\", ${m}_module_init, ${m}_module_config, ${m}_module_reconfig}," >> modules.c
echo "int ${m}_module_init(struct config_file *cfg, struct module_ctx **ctx);" >> modules.h
echo "int ${m}_module_config(struct config_file *cfg);" >> modules.h
echo "int ${m}_module_reconfig(struct config_file *cfg);" >> modules.h
echo "{\"${m}\", ${m}_module_init, ${m}_module_config, ${m}_module_reconfig}," >> $SRCDIR/modules.c
echo "int ${m}_module_init(struct config_file *cfg, struct module_ctx **ctx);" >> $SRCDIR/modules.h
echo "int ${m}_module_config(struct config_file *cfg);" >> $SRCDIR/modules.h
echo "int ${m}_module_reconfig(struct config_file *cfg);" >> $SRCDIR/modules.h
modules_num=`expr $modules_num + 1` modules_num=`expr $modules_num + 1`
done done
echo "};" >> modules.c
echo "#endif" >> modules.h
echo "#define MODULES_NUM $modules_num" >> $CONFIG
echo "};" >> $SRCDIR/modules.c
echo "#endif" >> $SRCDIR/modules.h
echo "#define MODULES_NUM $modules_num" >> $SRCDIR/$CONFIG
SOURCES="$SOURCES modules.c" SOURCES="$SOURCES modules.c"
OBJECTS=`echo $SOURCES | sed -e 's/\.c/\.o/g'`


} }


for sub in $SUBDIRS ; do for sub in $SUBDIRS ; do
cp $MAKEFILE $sub/$MAKEFILE cp $MAKEFILE $sub/$MAKEFILE
saved_pwd=`pwd` saved_pwd=`pwd`
old_objs=`echo $OBJECTS | sed -e 's/\([^. ]*\.o\)/..\/\1/g'`
old_srcs=`echo $SOURCES | sed -e 's/\([^. ]*\.c\)/..\/\1/g'`
old_objs=`echo $OBJECTS | sed -e 's/\([^. ]*\.o\)/..\/%%OBJDIR%%\/\1/g' | sed -e "s,%%OBJDIR%%,${OBJDIR},g"`
old_srcs=`echo $SOURCES | sed -e 's/\([^. ]*\.c\)/..\/%%SRCDIR%%\/\1/g' | sed -e "s,%%SRCDIR%%,${SRCDIR},g"`
cd $sub cd $sub
sub_src="`echo *.c`" sub_src="`echo *.c`"
sub_obj="`echo $sub_src | sed -e 's/\.c/\.o/g'`" sub_obj="`echo $sub_src | sed -e 's/\.c/\.o/g'`"
echo "Cflags: $CFLAGS" >> config.log echo "Cflags: $CFLAGS" >> config.log
echo "Ldflags: $LDFLAGS" >> config.log echo "Ldflags: $LDFLAGS" >> config.log
echo "Libs: $LIBS" >> config.log echo "Libs: $LIBS" >> config.log
echo "#define RVERSION \"${VERSION}\"" >> $CONFIG
echo "#define HASH_COMPAT" >> $CONFIG
echo "#define RVERSION \"${VERSION}\"" >> $SRCDIR/$CONFIG
echo "#define HASH_COMPAT" >> $SRCDIR/$CONFIG


write_modules write_modules
for _s in $SOURCES ; do
_o=`echo $_s | awk -F '/' '{split($NF, A, "."); print "%%OBJDIR%%/"A[1]".o"}' | sed -e "s,%%OBJDIR%%,${OBJDIR},"`
OBJECTS="$OBJECTS $_o"
SRC_OBJ="$SRC_OBJ $_s#$_o"
done
write_perl write_perl
# Make CFLAGS more readable # Make CFLAGS more readable
CFLAGS="$CFLAGS $PERLCFLAGS" CFLAGS="$CFLAGS $PERLCFLAGS"
LDFLAGS=$LDFLAGS LDFLAGS=$LDFLAGS
# Libraries to link # Libraries to link
LIBS=$LIBS LIBS=$LIBS
# Directories for sources and objects
SRCDIR=$SRCDIR
OBJDIR=$OBJDIR
# ${EXEC} sources # ${EXEC} sources
SOURCES=$SOURCES SOURCES=$SOURCES
# ${EXEC} objects # ${EXEC} objects
${EXEC}: \$(OBJECTS) ${EXEC}: \$(OBJECTS)
\$(CC) \$(PTHREAD_LDFLAGS) \$(LDFLAGS) \$(OBJECTS) \$(LIBS) -o \$(EXEC) \$(CC) \$(PTHREAD_LDFLAGS) \$(LDFLAGS) \$(OBJECTS) \$(LIBS) -o \$(EXEC)
END END
for o in $OBJECTS ; do
SO=`echo $o | sed -e 's/\.o/\.c/g'`
for o in $SRC_OBJ ; do
SO=`echo $o | cut -d '#' -f 1`
O=`echo $o | cut -d '#' -f 2`
cat >> $MAKEFILE << END cat >> $MAKEFILE << END
${o}: \$(DEPS) ${SO}
\$(CC) \$(OPT_FLAGS) \$(CFLAGS) \$(PTHREAD_CFLAGS) -o ${o} -c ${SO}
${O}: \$(DEPS) ${SRCDIR}/${SO}
\$(CC) \$(OPT_FLAGS) \$(CFLAGS) \$(PTHREAD_CFLAGS) -o ${O} -c ${SRCDIR}/${SO}


END END
done done
cat >> $MAKEFILE << END cat >> $MAKEFILE << END
${LEX_OUTPUT}: cfg_file.h ${LEX_SRC} ${YACC_OUTPUT}
\$(LEX) -o${LEX_OUTPUT} ${LEX_SRC}
${SRCDIR}/${LEX_OUTPUT}: \$(SRCDIR)/cfg_file.h \$(SRCDIR)/${LEX_SRC} \$(SRCDIR)/${YACC_OUTPUT}
\$(LEX) -o\$(SRCDIR)/${LEX_OUTPUT} \$(SRCDIR)/${LEX_SRC}


${YACC_OUTPUT}: cfg_file.h ${YACC_SRC}
\$(YACC) -d -o ${YACC_OUTPUT} ${YACC_SRC}
${SRCDIR}/${YACC_OUTPUT}: \$(SRCDIR)/cfg_file.h \$(SRCDIR)/${YACC_SRC}
\$(YACC) -d -o \$(SRCDIR)/${YACC_OUTPUT} \$(SRCDIR)/${YACC_SRC}
END END
} }


check_make check_make
check_lex check_lex
check_yacc check_yacc
check_util "sed"
check_util "awk"
check_util "cut"
check_os check_os


check_lib "event" "event.h" check_lib "event" "event.h"
check_lib "pcre" check_lib "pcre"
check_lib "md" check_lib "md"
if [ $? -eq 1 ] ; then if [ $? -eq 1 ] ; then
cp $COMPAT_DIR/md5.c .
cp $COMPAT_DIR/md5.h .
cp $COMPAT_DIR/md5.c $SRCDIR
cp $COMPAT_DIR/md5.h $SRCDIR
SOURCES="$SOURCES md5.c" SOURCES="$SOURCES md5.c"
DEPS="$DEPS md5.h"
DEPS="$DEPS $SRCDIR/md5.h"
have_opt "OWN_MD5" have_opt "OWN_MD5"
fi fi




check_function "strlcpy" "string.h" check_function "strlcpy" "string.h"
if [ $? -eq 1 ] ; then if [ $? -eq 1 ] ; then
cp $COMPAT_DIR/strlcpy.c .
cp $COMPAT_DIR/strlcpy.h .
cp $COMPAT_DIR/strlcpy.c $SRCDIR
cp $COMPAT_DIR/strlcpy.h $SRCDIR
SOURCES="$SOURCES strlcpy.c" SOURCES="$SOURCES strlcpy.c"
DEPS="$DEPS strlcpy.h"
DEPS="$DEPS $SRCDIR/strlcpy.h"
have_opt "STRLCPY_H" have_opt "STRLCPY_H"
fi fi
check_function "bzero" "string.h" check_function "bzero" "string.h"
check_include "md5.h" check_include "md5.h"
check_include "sys/queue.h" check_include "sys/queue.h"
if [ $? -eq 1 ] ; then if [ $? -eq 1 ] ; then
cp $COMPAT_DIR/queue.h .
DEPS="$DEPS queue.h"
cp $COMPAT_DIR/queue.h $SRCDIR
DEPS="$DEPS $SRCDIR/queue.h"
fi fi
check_macro "SLIST_FOREACH_SAFE" "sys/queue.h" check_macro "SLIST_FOREACH_SAFE" "sys/queue.h"
if [ $? -eq 1 ] ; then if [ $? -eq 1 ] ; then
cp $COMPAT_DIR/queue.h .
DEPS="$DEPS queue.h"
cp $COMPAT_DIR/queue.h $SRCDIR
DEPS="$DEPS $SRCDIR/queue.h"
have_opt "OWN_QUEUE_H" have_opt "OWN_QUEUE_H"
fi fi


check_macro "MAXPATHLEN" "sys/param.h" check_macro "MAXPATHLEN" "sys/param.h"
if [ $? -eq 1 ] ; then if [ $? -eq 1 ] ; then
have_opt "MAXPATHLEN" have_opt "MAXPATHLEN"
echo "#define MAXPATHLEN 4096" >> $CONFIG
echo "#define MAXPATHLEN 4096" >> $SRCDIR/$CONFIG
else else
have_opt "MAXPATHLEN" have_opt "MAXPATHLEN"
fi fi

+ 5
- 5
perl/rspamd.xs Ver fichero

#include <perl.h> #include <perl.h>
#include <XSUB.h> #include <XSUB.h>


#include "../config.h"
#include "../main.h"
#include "../cfg_file.h"
#include "../perl.h"
#include "../mem_pool.h"
#include "../src/config.h"
#include "../src/main.h"
#include "../src/cfg_file.h"
#include "../src/perl.h"
#include "../src/mem_pool.h"


#define perl_set_session(r) \ #define perl_set_session(r) \
r = INT2PTR(struct worker_task *, SvIV((SV *) SvRV(ST(0)))) r = INT2PTR(struct worker_task *, SvIV((SV *) SvRV(ST(0))))

+ 13
- 0
rspamd.conf.sample Ver fichero

# Sample config file for rspamd
# $Id$
#


# pidfile - path to pid file
# Default: pidfile = /var/run/rspamd.pid

pidfile = "./rspamd.pid";

workers = 1;

bind_socket = localhost:11333;

cfg_file.h → src/cfg_file.h Ver fichero


cfg_file.l → src/cfg_file.l Ver fichero


cfg_file.y → src/cfg_file.y Ver fichero

if (strncasecmp ($3, "LOG_AUTH", sizeof ("LOG_AUTH") - 1) == 0) { if (strncasecmp ($3, "LOG_AUTH", sizeof ("LOG_AUTH") - 1) == 0) {
cfg->log_facility = LOG_AUTH; cfg->log_facility = LOG_AUTH;
} }
else if (strncasecmp ($3, "LOG_CONSOLE", sizeof ("LOG_CONSOLE") - 1) == 0) {
cfg->log_facility = LOG_CONSOLE;
}
else if (strncasecmp ($3, "LOG_CRON", sizeof ("LOG_CRON") - 1) == 0) { else if (strncasecmp ($3, "LOG_CRON", sizeof ("LOG_CRON") - 1) == 0) {
cfg->log_facility = LOG_CRON; cfg->log_facility = LOG_CRON;
} }

cfg_utils.c → src/cfg_utils.c Ver fichero


controller.c → src/controller.c Ver fichero


filter.c → src/filter.c Ver fichero


filter.h → src/filter.h Ver fichero


fstring.c → src/fstring.c Ver fichero


fstring.h → src/fstring.h Ver fichero


main.c → src/main.c Ver fichero


main.h → src/main.h Ver fichero


mem_pool.c → src/mem_pool.c Ver fichero


mem_pool.h → src/mem_pool.h Ver fichero


memcached-test.c → src/memcached-test.c Ver fichero


memcached.c → src/memcached.c Ver fichero


memcached.h → src/memcached.h Ver fichero


perl.c → src/perl.c Ver fichero


perl.h → src/perl.h Ver fichero


plugins/regexp.c → src/plugins/regexp.c Ver fichero


plugins/surbl.c → src/plugins/surbl.c Ver fichero


protocol.c → src/protocol.c Ver fichero


protocol.h → src/protocol.h Ver fichero


upstream.c → src/upstream.c Ver fichero


upstream.h → src/upstream.h Ver fichero


url.c → src/url.c Ver fichero


url.h → src/url.h Ver fichero


util.c → src/util.c Ver fichero


util.h → src/util.h Ver fichero


worker.c → src/worker.c Ver fichero


+ 5
- 5
test/.depends Ver fichero

#if HAVE_STRLCPY_H #if HAVE_STRLCPY_H
../strlcpy.c
../src/strlcpy.c
#endif #endif
../mem_pool.c
../url.c
../util.c
../memcached.c
../src/mem_pool.c
../src/url.c
../src/util.c
../src/memcached.c

+ 3
- 3
test/rspamd_expression_test.c Ver fichero

#include <string.h> #include <string.h>
#include <stdio.h> #include <stdio.h>


#include "../config.h"
#include "../main.h"
#include "../cfg_file.h"
#include "../src/config.h"
#include "../src/main.h"
#include "../src/cfg_file.h"
#include "tests.h" #include "tests.h"


/* Vector of test expressions */ /* Vector of test expressions */

+ 3
- 2
test/rspamd_mem_pool_test.c Ver fichero

#include "../mem_pool.h"
#include "tests.h"


#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <unistd.h> #include <unistd.h>
#include <glib.h> #include <glib.h>


#include "../src/mem_pool.h"
#include "tests.h"

#define TEST_BUF "test bufffer" #define TEST_BUF "test bufffer"
#define TEST2_BUF "test bufffertest bufffer" #define TEST2_BUF "test bufffertest bufffer"



+ 4
- 4
test/rspamd_memcached_test.c Ver fichero

#include <string.h> #include <string.h>
#include <event.h> #include <event.h>


#include "../config.h"
#include "../main.h"
#include "../cfg_file.h"
#include "../memcached.h"
#include "../src/config.h"
#include "../src/main.h"
#include "../src/cfg_file.h"
#include "../src/memcached.h"
#include "tests.h" #include "tests.h"


u_char *buf = "test"; u_char *buf = "test";

+ 3
- 3
test/rspamd_test_suite.c Ver fichero

#include <fcntl.h> #include <fcntl.h>
#include <stdlib.h> #include <stdlib.h>


#include "../config.h"
#include "../main.h"
#include "../cfg_file.h"
#include "../src/config.h"
#include "../src/main.h"
#include "../src/cfg_file.h"
#include "tests.h" #include "tests.h"


int int

+ 4
- 4
test/rspamd_url_test.c Ver fichero

#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>


#include "../config.h"
#include "../main.h"
#include "../cfg_file.h"
#include "../url.h"
#include "../src/config.h"
#include "../src/main.h"
#include "../src/cfg_file.h"
#include "../src/url.h"
#include "tests.h" #include "tests.h"


const char *test_text = const char *test_text =

+ 5
- 5
utils/.depends Ver fichero

#if HAVE_STRLCPY_H #if HAVE_STRLCPY_H
../strlcpy.c
../src/strlcpy.c
#endif #endif
../mem_pool.c
../url.c
../util.c
../memcached.c
../src/mem_pool.c
../src/url.c
../src/util.c
../src/memcached.c

+ 4
- 4
utils/url_extracter.c Ver fichero



#include <gmime/gmime.h> #include <gmime/gmime.h>


#include "../config.h"
#include "../main.h"
#include "../cfg_file.h"
#include "../url.h"
#include "../src/config.h"
#include "../src/main.h"
#include "../src/cfg_file.h"
#include "../src/url.h"


static void static void
mime_foreach_callback (GMimeObject *part, gpointer user_data) mime_foreach_callback (GMimeObject *part, gpointer user_data)

Cargando…
Cancelar
Guardar