libprelude/master: Move libpreludecpp-perl.i to perl subdirectory

[email protected] Sat, 16 Jan 2010 19:58:34 +0100 (CET)
Newsgroups gmane.comp.security.ids.prelude.cvs
Message-ID <[email protected]>
commit 0b18f29122de8795f1b1a2d826e6c4738220da9c
Author: Yoann Vandoorselaere <[email protected]>
Date:   Tue Jan 12 09:13:54 2010 +0100

    Move libpreludecpp-perl.i to perl subdirectory


========================================

 bindings/Makefile.am               |    4 +-
 bindings/libpreludecpp-perl.i      |  192 ------------------------------------
 bindings/libpreludecpp.i           |    2 +-
 bindings/perl/libpreludecpp-perl.i |  192 ++++++++++++++++++++++++++++++++++++
 4 files changed, 195 insertions(+), 195 deletions(-)

========================================

diff --git a/bindings/Makefile.am b/bindings/Makefile.am
index 9ecd368..270522d 100644
--- a/bindings/Makefile.am
+++ b/bindings/Makefile.am
@@ -1,6 +1,6 @@
 SUBDIRS = c++ low-level lua python ruby
 
-EXTRA_DIST = libpreludecpp.i libpreludecpp-perl.i perl/Makefile.PL.in
+EXTRA_DIST = libpreludecpp.i perl/libpreludecpp-perl.i perl/Makefile.PL.in
 
 CLEANFILES = perl/pm_to_blib perl/PreludeEasy.o perl/blib python/build
 DISTCLEANFILES=perl/PreludeEasy.cxx
@@ -25,7 +25,7 @@ perl: perl-build
 perl-makefile:
 	cd perl && LANG="" DESTDIR=$(DESTDIR) LIBDIR=$(libdir) $(PERL) Makefile.PL @PERL_EXTRA_PARAMS@ CC="$(CXX)"
 
-perl/PreludeEasy.cxx: $(top_srcdir)/bindings/c++/include/*.hxx libpreludecpp.i libpreludecpp-perl.i
+perl/PreludeEasy.cxx: $(top_srcdir)/bindings/c++/include/*.hxx libpreludecpp.i perl/libpreludecpp-perl.i
 if HAVE_SWIG
 	$(SWIG) -c++ -I$(top_srcdir)/bindings -I$(top_srcdir)/bindings/c++/include -I$(top_srcdir)/src/include -I$(top_srcdir)/src/libprelude-error -perl5 -o $@ libpreludecpp.i
 endif
diff --git a/bindings/libpreludecpp-perl.i b/bindings/libpreludecpp-perl.i
deleted file mode 100644
index 2b7488c..0000000
--- a/bindings/libpreludecpp-perl.i
+++ /dev/null
@@ -1,192 +0,0 @@
-# Exception map
-%typemap(throws) Prelude::PreludeError %{
-        SWIG_exception(SWIG_RuntimeError, $1.what());
-%};
-
-
-# Conversion not allowed
-%ignore *::operator =;
-%ignore *::operator int() const;
-%ignore *::operator long() const;
-%ignore *::operator int32_t() const;
-%ignore *::operator uint32_t() const;
-%ignore *::operator int64_t() const;
-%ignore *::operator uint64_t() const;
-%ignore *::operator float() const;
-%ignore *::operator double() const;
-%ignore *::operator Prelude::IDMEFTime() const;
-%ignore *::operator const std::string() const;
-%ignore *::operator const char *() const;
-
-
-%header %{
-#define TARGET_LANGUAGE_OUTPUT_TYPE SV **
-int IDMEFValue_to_SWIG(const IDMEFValue &result, TARGET_LANGUAGE_OUTPUT_TYPE ret);
-%}
-
-%fragment("IDMEFValueList_to_SWIG", "header") {
-SV *IDMEFValueList_to_SWIG(const Prelude::IDMEFValue &value)
-{
-        int j = 0, ret;
-        std::vector<Prelude::IDMEFValue> result = value;
-        std::vector<Prelude::IDMEFValue>::const_iterator i;
-
-        AV *myav;
-        SV *svret, **svs = new SV*[result.size()];
-
-        for ( i = result.begin(); i != result.end(); i++ ) {
-                ret = IDMEFValue_to_SWIG(*i, &svs[j++]);
-                if ( ret < 0 )
-                        return NULL;
-        }
-
-        myav = av_make(result.size(), svs);
-        delete[] svs;
-
-        svret = newRV_noinc((SV*) myav);
-        sv_2mortal(svret);
-
-        return svret;
-}
-}
-
-/* tell squid not to cast void * value */
-%typemap(in) void *nocast_p {
-        $1 = $input;
-}
-
-%fragment("TransitionFunc", "header") {
-static SV *__prelude_log_func;
-static gl_thread_t __initial_thread;
-
-
-static void _cb_perl_log(int level, const char *str)
-{
-        if ( (gl_thread_t) gl_thread_self() != __initial_thread )
-                return;
-
-        dSP;
-        ENTER;
-        SAVETMPS;
-
-        PUSHMARK(SP);
-        XPUSHs(SWIG_From_int(level));
-        XPUSHs(SWIG_FromCharPtr(str));
-        PUTBACK;
-
-        perl_call_sv(__prelude_log_func, G_VOID);
-
-        FREETMPS;
-        LEAVE;
-}
-
-
-static int _cb_perl_write(prelude_msgbuf_t *fd, prelude_msg_t *msg)
-{
-        int ret;
-        PerlIO *io = (PerlIO *) prelude_msgbuf_get_data(fd);
-
-        ret = PerlIO_write(io, (const char *) prelude_msg_get_message_data(msg), prelude_msg_get_len(msg));
-        if ( ret != prelude_msg_get_len(msg) )
-                return prelude_error_from_errno(errno);
-
-        prelude_msg_recycle(msg);
-
-        return 0;
-}
-
-
-static ssize_t _cb_perl_read(prelude_io_t *fd, void *buf, size_t size)
-{
-        int ret;
-        PerlIO *io = (PerlIO *) prelude_io_get_fdptr(fd);
-
-        ret = PerlIO_read(io, buf, size);
-        if ( ret < 0 )
-                ret = prelude_error_from_errno(errno);
-
-        else if ( ret == 0 )
-                ret = prelude_error(PRELUDE_ERROR_EOF);
-
-        return ret;
-}
-};
-
-%typemap(in, fragment="TransitionFunc") void (*log_cb)(int level, const char *log) {
-        if ( __prelude_log_func )
-                SvREFCNT_dec(__prelude_log_func);
-
-        __prelude_log_func = $input;
-        SvREFCNT_inc($input);
-
-        $1 = _cb_perl_log;
-};
-
-%extend Prelude::IDMEF {
-        void Write(void *nocast_p) {
-                PerlIO *io = IoIFP(sv_2io((SV *) nocast_p));
-                self->_genericWrite(_cb_perl_write, io);
-        }
-
-        void Read(void *nocast_p) {
-                PerlIO *io = IoIFP(sv_2io((SV *) nocast_p));
-                self->_genericRead(_cb_perl_read, io);
-        }
-}
-
-
-%typemap(out, fragment="IDMEFValue_to_SWIG") Prelude::IDMEFValue {
-        int ret;
-
-        if ( $1.IsNull() ) {
-                SvREFCNT_inc (& PL_sv_undef);
-                $result = &PL_sv_undef;
-        } else {
-                SV *mysv;
-
-                ret = IDMEFValue_to_SWIG($1, &mysv);
-                if ( ret < 0 ) {
-                        std::stringstream s;
-                        s << "IDMEFValue typemap does not handle value of type '" << idmef_value_type_to_string($1.GetType()) << "'";
-                        SWIG_exception_fail(SWIG_ValueError, s.str().c_str());
-                }
-
-                $result = mysv;
-        }
-
-        argvi++;
-};
-
-
-%init {
-        STRLEN len;
-        char **argv;
-        int j, argc = 1, ret;
-        AV *pargv = get_av("ARGV", FALSE);
-
-        __initial_thread = (gl_thread_t) gl_thread_self();
-
-        ret = av_len(pargv);
-        if ( ret >= 0 )
-                argc += ret + 1;
-
-        if ( argc + 1 < 0 )
-                throw PreludeError("Invalide argc length");
-
-        argv = (char **) malloc((argc + 1) * sizeof(char *));
-        if ( ! argv )
-                throw PreludeError("Allocation failure");
-
-        argv[0] = SvPV(get_sv("0", FALSE), len);
-
-        for ( j = 0; j < ret + 1; j++ )
-                argv[j + 1] = SvPV(*av_fetch(pargv, j, FALSE), len);
-
-        argv[j + 1] = NULL;
-
-        ret = prelude_init(&argc, argv);
-        if ( ret < 0 ) {
-                free(argv);
-                throw PreludeError(ret);
-        }
-}
diff --git a/bindings/libpreludecpp.i b/bindings/libpreludecpp.i
index eb315c9..80ea5fb 100644
--- a/bindings/libpreludecpp.i
+++ b/bindings/libpreludecpp.i
@@ -46,7 +46,7 @@ typedef signed int prelude_error_t;
 
 
 #ifdef SWIGPERL
-%include libpreludecpp-perl.i
+%include perl/libpreludecpp-perl.i
 #endif
 
 #ifdef SWIGPYTHON
diff --git a/bindings/perl/libpreludecpp-perl.i b/bindings/perl/libpreludecpp-perl.i
new file mode 100644
index 0000000..2b7488c
--- /dev/null
+++ b/bindings/perl/libpreludecpp-perl.i
@@ -0,0 +1,192 @@
+# Exception map
+%typemap(throws) Prelude::PreludeError %{
+        SWIG_exception(SWIG_RuntimeError, $1.what());
+%};
+
+
+# Conversion not allowed
+%ignore *::operator =;
+%ignore *::operator int() const;
+%ignore *::operator long() const;
+%ignore *::operator int32_t() const;
+%ignore *::operator uint32_t() const;
+%ignore *::operator int64_t() const;
+%ignore *::operator uint64_t() const;
+%ignore *::operator float() const;
+%ignore *::operator double() const;
+%ignore *::operator Prelude::IDMEFTime() const;
+%ignore *::operator const std::string() const;
+%ignore *::operator const char *() const;
+
+
+%header %{
+#define TARGET_LANGUAGE_OUTPUT_TYPE SV **
+int IDMEFValue_to_SWIG(const IDMEFValue &result, TARGET_LANGUAGE_OUTPUT_TYPE ret);
+%}
+
+%fragment("IDMEFValueList_to_SWIG", "header") {
+SV *IDMEFValueList_to_SWIG(const Prelude::IDMEFValue &value)
+{
+        int j = 0, ret;
+        std::vector<Prelude::IDMEFValue> result = value;
+        std::vector<Prelude::IDMEFValue>::const_iterator i;
+
+        AV *myav;
+        SV *svret, **svs = new SV*[result.size()];
+
+        for ( i = result.begin(); i != result.end(); i++ ) {
+                ret = IDMEFValue_to_SWIG(*i, &svs[j++]);
+                if ( ret < 0 )
+                        return NULL;
+        }
+
+        myav = av_make(result.size(), svs);
+        delete[] svs;
+
+        svret = newRV_noinc((SV*) myav);
+        sv_2mortal(svret);
+
+        return svret;
+}
+}
+
+/* tell squid not to cast void * value */
+%typemap(in) void *nocast_p {
+        $1 = $input;
+}
+
+%fragment("TransitionFunc", "header") {
+static SV *__prelude_log_func;
+static gl_thread_t __initial_thread;
+
+
+static void _cb_perl_log(int level, const char *str)
+{
+        if ( (gl_thread_t) gl_thread_self() != __initial_thread )
+                return;
+
+        dSP;
+        ENTER;
+        SAVETMPS;
+
+        PUSHMARK(SP);
+        XPUSHs(SWIG_From_int(level));
+        XPUSHs(SWIG_FromCharPtr(str));
+        PUTBACK;
+
+        perl_call_sv(__prelude_log_func, G_VOID);
+
+        FREETMPS;
+        LEAVE;
+}
+
+
+static int _cb_perl_write(prelude_msgbuf_t *fd, prelude_msg_t *msg)
+{
+        int ret;
+        PerlIO *io = (PerlIO *) prelude_msgbuf_get_data(fd);
+
+        ret = PerlIO_write(io, (const char *) prelude_msg_get_message_data(msg), prelude_msg_get_len(msg));
+        if ( ret != prelude_msg_get_len(msg) )
+                return prelude_error_from_errno(errno);
+
+        prelude_msg_recycle(msg);
+
+        return 0;
+}
+
+
+static ssize_t _cb_perl_read(prelude_io_t *fd, void *buf, size_t size)
+{
+        int ret;
+        PerlIO *io = (PerlIO *) prelude_io_get_fdptr(fd);
+
+        ret = PerlIO_read(io, buf, size);
+        if ( ret < 0 )
+                ret = prelude_error_from_errno(errno);
+
+        else if ( ret == 0 )
+                ret = prelude_error(PRELUDE_ERROR_EOF);
+
+        return ret;
+}
+};
+
+%typemap(in, fragment="TransitionFunc") void (*log_cb)(int level, const char *log) {
+        if ( __prelude_log_func )
+                SvREFCNT_dec(__prelude_log_func);
+
+        __prelude_log_func = $input;
+        SvREFCNT_inc($input);
+
+        $1 = _cb_perl_log;
+};
+
+%extend Prelude::IDMEF {
+        void Write(void *nocast_p) {
+                PerlIO *io = IoIFP(sv_2io((SV *) nocast_p));
+                self->_genericWrite(_cb_perl_write, io);
+        }
+
+        void Read(void *nocast_p) {
+                PerlIO *io = IoIFP(sv_2io((SV *) nocast_p));
+                self->_genericRead(_cb_perl_read, io);
+        }
+}
+
+
+%typemap(out, fragment="IDMEFValue_to_SWIG") Prelude::IDMEFValue {
+        int ret;
+
+        if ( $1.IsNull() ) {
+                SvREFCNT_inc (& PL_sv_undef);
+                $result = &PL_sv_undef;
+        } else {
+                SV *mysv;
+
+                ret = IDMEFValue_to_SWIG($1, &mysv);
+                if ( ret < 0 ) {
+                        std::stringstream s;
+                        s << "IDMEFValue typemap does not handle value of type '" << idmef_value_type_to_string($1.GetType()) << "'";
+                        SWIG_exception_fail(SWIG_ValueError, s.str().c_str());
+                }
+
+                $result = mysv;
+        }
+
+        argvi++;
+};
+
+
+%init {
+        STRLEN len;
+        char **argv;
+        int j, argc = 1, ret;
+        AV *pargv = get_av("ARGV", FALSE);
+
+        __initial_thread = (gl_thread_t) gl_thread_self();
+
+        ret = av_len(pargv);
+        if ( ret >= 0 )
+                argc += ret + 1;
+
+        if ( argc + 1 < 0 )
+                throw PreludeError("Invalide argc length");
+
+        argv = (char **) malloc((argc + 1) * sizeof(char *));
+        if ( ! argv )
+                throw PreludeError("Allocation failure");
+
+        argv[0] = SvPV(get_sv("0", FALSE), len);
+
+        for ( j = 0; j < ret + 1; j++ )
+                argv[j + 1] = SvPV(*av_fetch(pargv, j, FALSE), len);
+
+        argv[j + 1] = NULL;
+
+        ret = prelude_init(&argc, argv);
+        if ( ret < 0 ) {
+                free(argv);
+                throw PreludeError(ret);
+        }
+}
_______________________________________________
Prelude-cvslog site list
[email protected]
http://lists.prelude-ids.org/mailman/listinfo/prelude-cvslog