Commit 249470f351d88b3a94212aedfa196a5756eb9347

Authored by Perry Werneck
1 parent d248d60b
Exists in master and in 1 other branch develop

Testing IPC plugin with valgrind.

Makefile.in 0 → 100644
... ... @@ -0,0 +1,48 @@
  1 +#
  2 +# "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
  3 +# (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
  4 +# aplicativos mainframe. Registro no INPI sob o nome G3270.
  5 +#
  6 +# Copyright (C) <2008> <Banco do Brasil S.A.>
  7 +#
  8 +# Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
  9 +# os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
  10 +# Free Software Foundation.
  11 +#
  12 +# Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
  13 +# GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
  14 +# A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
  15 +# obter mais detalhes.
  16 +#
  17 +# Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
  18 +# programa; se não, escreva para a Free Software Foundation, Inc., 59 Temple
  19 +# Place, Suite 330, Boston, MA, 02111-1307, USA
  20 +#
  21 +# Contatos:
  22 +#
  23 +# perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
  24 +# erico.mendonca@gmail.com (Erico Mascarenhas de Mendonça)
  25 +#
  26 +
  27 +#---[ Paths ]----------------------------------------------------------------------------
  28 +
  29 +
  30 +
  31 +#---[ Clean Targets ]--------------------------------------------------------------------
  32 +
  33 +clean: \
  34 +
  35 + @$(MAKE) -C client $@
  36 + @$(MAKE) -C server $@
  37 +
  38 +cleanDebug:
  39 +
  40 + @$(MAKE) -C client $@
  41 + @$(MAKE) -C server $@
  42 +
  43 +cleanRelease:
  44 +
  45 + @$(MAKE) -C client $@
  46 + @$(MAKE) -C server $@
  47 +
  48 +
... ...
configure.ac
... ... @@ -159,6 +159,7 @@ AC_PATH_TOOL([MSGCAT], [msgcat], [no])
159 159 AC_PATH_TOOL([MSGINIT], [msginit], [no])
160 160 AC_PATH_TOOL([MSGMERGE], [msgmerge], [no])
161 161 AC_PATH_TOOL([MSGFMT], [msgfmt], [no])
  162 +AC_PATH_TOOL([VALGRIND], [valgrind], [no])
162 163  
163 164 AC_SUBST(INTL_LIBS)
164 165  
... ...
server/Makefile.in
... ... @@ -59,6 +59,7 @@ XGETTEXT=@XGETTEXT@
59 59 MSGCAT=@MSGCAT@
60 60 WINDRES=@WINDRES@
61 61 AR=@AR@
  62 +VALGRIND=@VALGRIND@
62 63  
63 64 #---[ Paths ]----------------------------------------------------------------------------
64 65  
... ... @@ -124,6 +125,7 @@ $(OBJDBG)/%.o: \
124 125 $(CFLAGS) \
125 126 -Wall -Wextra -fstack-check \
126 127 -DDEBUG=1 \
  128 + -DPLUGIN_PATH=$(BINDBG) \
127 129 -o $@ -c $<
128 130  
129 131 $(OBJDBG)/%.o: \
... ... @@ -306,6 +308,23 @@ $(BINDBG)/$(MODULE_NAME)@DLLEXT@: \
306 308 run: \
307 309 run-plugin
308 310  
  311 +check-plugin: \
  312 + $(BINDBG)/$(MODULE_NAME)@DLLEXT@ \
  313 + $(BINDBG)/$(MODULE_NAME)@EXEEXT@
  314 +
  315 +ifeq ($(VALGRIND),no)
  316 +
  317 + @LD_LIBRARY_PATH=$(BINDBG) \
  318 + $(BINDBG)/$(MODULE_NAME)@EXEEXT@
  319 +
  320 +else
  321 + @touch valgrind.suppression
  322 +
  323 + @LD_LIBRARY_PATH=$(BINDBG) \
  324 + $(VALGRIND) --leak-check=full --track-origins=yes --gen-suppressions=all --suppressions=valgrind.suppression \
  325 + $(BINDBG)/$(MODULE_NAME)@EXEEXT@
  326 +endif
  327 +
309 328 run-plugin: \
310 329 $(BINDBG)/$(MODULE_NAME)@DLLEXT@ \
311 330 $(BINDBG)/$(MODULE_NAME)@EXEEXT@
... ...
server/pw3270-plugin-ipc.cbp
... ... @@ -8,9 +8,9 @@
8 8 <Option compiler="gcc" />
9 9 <Build>
10 10 <Target title="Debug">
11   - <Option output=".bin/Debug/ipc3270" prefix_auto="1" extension_auto="1" />
  11 + <Option output="../.bin/Debug/ipcserver" prefix_auto="1" extension_auto="1" />
12 12 <Option object_output=".obj/Debug/" />
13   - <Option type="1" />
  13 + <Option type="0" />
14 14 <Option compiler="gcc" />
15 15 <Compiler>
16 16 <Add option="-g" />
... ...
server/src/testprogram/testprogram.c
... ... @@ -43,9 +43,13 @@
43 43  
44 44 /*---[ Globals ]------------------------------------------------------------------------------------*/
45 45  
46   - const gchar * plugin_path = ".bin/Debug";
  46 + #ifdef _WIN32
  47 + const gchar * plugin_path = ".";
  48 + #else
  49 + const gchar * plugin_path = G_STRINGIFY(PLUGIN_PATH);
  50 + #endif // _WIN32
47 51 const gchar * session_name = "pw3270";
48   - const gchar * plugin_name = "ipc3270." G_MODULE_SUFFIX;
  52 + const gchar * plugin_name = "ipcserver." G_MODULE_SUFFIX;
49 53  
50 54 /*---[ Implement ]----------------------------------------------------------------------------------*/
51 55  
... ...
server/valgrind.suppression 0 → 100644
... ... @@ -0,0 +1,50 @@
  1 +{
  2 + libcrypt_FIPS_selftest
  3 + Memcheck:Cond
  4 + ...
  5 + fun:FIPS_selftest
  6 +}
  7 +
  8 +{
  9 + libcrypt_FIPS_mode_set
  10 + Memcheck:Cond
  11 + ...
  12 + fun:FIPS_mode_set
  13 +}
  14 +
  15 +{
  16 + <insert_a_suppression_name_here>
  17 + Memcheck:Cond
  18 + ...
  19 + fun:BIO_new_mem_buf
  20 +}
  21 +
  22 +
  23 +{
  24 + g_type_register_fundamental
  25 + Memcheck:Leak
  26 + ...
  27 + fun:g_type_register_fundamental
  28 +}
  29 +
  30 +{
  31 + g_type_create_instance
  32 + Memcheck:Leak
  33 + ...
  34 + fun:g_type_create_instance
  35 +}
  36 +
  37 +{
  38 + g_type_add_interface_static
  39 + Memcheck:Leak
  40 + ...
  41 + fun:g_type_add_interface_static
  42 +}
  43 +
  44 +{
  45 + g_application_register
  46 + Memcheck:Leak
  47 + ...
  48 + fun:g_application_register
  49 +}
  50 +
... ...