Commit b749aacbbb5ad45cda6be8605ad4a4f9105f9b32
1 parent
c3a6a256
Exists in
master
and in
5 other branches
Adding SSL trace option
Fixing trace window segfault.
Showing
5 changed files
with
40 additions
and
75 deletions
Show diff stats
pw3270.cbp
| @@ -56,11 +56,6 @@ | @@ -56,11 +56,6 @@ | ||
| 56 | <Unit filename="android/Makefile" /> | 56 | <Unit filename="android/Makefile" /> |
| 57 | <Unit filename="android/jni/Android.mk" /> | 57 | <Unit filename="android/jni/Android.mk" /> |
| 58 | <Unit filename="android/jni/globals.h" /> | 58 | <Unit filename="android/jni/globals.h" /> |
| 59 | - <Unit filename="android/jni/main.cpp" /> | ||
| 60 | - <Unit filename="android/jni/misc.cpp" /> | ||
| 61 | - <Unit filename="android/jni/text.cpp" /> | ||
| 62 | - <Unit filename="android/src/br/com/bb/pw3270/PW3270Activity.java" /> | ||
| 63 | - <Unit filename="android/src/br/com/bb/pw3270/lib3270.java" /> | ||
| 64 | <Unit filename="autogen.sh" /> | 59 | <Unit filename="autogen.sh" /> |
| 65 | <Unit filename="configure.ac" /> | 60 | <Unit filename="configure.ac" /> |
| 66 | <Unit filename="man/man1/pw3270.1" /> | 61 | <Unit filename="man/man1/pw3270.1" /> |
| @@ -101,26 +96,6 @@ | @@ -101,26 +96,6 @@ | ||
| 101 | <Option target="Debug" /> | 96 | <Option target="Debug" /> |
| 102 | <Option target="Release" /> | 97 | <Option target="Release" /> |
| 103 | </Unit> | 98 | </Unit> |
| 104 | - <Unit filename="src/java/sample/bbsample.java"> | ||
| 105 | - <Option target="Debug" /> | ||
| 106 | - <Option target="Release" /> | ||
| 107 | - </Unit> | ||
| 108 | - <Unit filename="src/java/sample/efglobe.java"> | ||
| 109 | - <Option target="Debug" /> | ||
| 110 | - <Option target="Release" /> | ||
| 111 | - </Unit> | ||
| 112 | - <Unit filename="src/java/sample/popup.java"> | ||
| 113 | - <Option target="Debug" /> | ||
| 114 | - <Option target="Release" /> | ||
| 115 | - </Unit> | ||
| 116 | - <Unit filename="src/java/terminal.java"> | ||
| 117 | - <Option target="Debug" /> | ||
| 118 | - <Option target="Release" /> | ||
| 119 | - </Unit> | ||
| 120 | - <Unit filename="src/java/testprogram.java"> | ||
| 121 | - <Option target="Debug" /> | ||
| 122 | - <Option target="Release" /> | ||
| 123 | - </Unit> | ||
| 124 | <Unit filename="src/lib3270/3270ds.h" /> | 99 | <Unit filename="src/lib3270/3270ds.h" /> |
| 125 | <Unit filename="src/lib3270/Makefile.in" /> | 100 | <Unit filename="src/lib3270/Makefile.in" /> |
| 126 | <Unit filename="src/lib3270/ansic.h" /> | 101 | <Unit filename="src/lib3270/ansic.h" /> |
| @@ -170,20 +145,13 @@ | @@ -170,20 +145,13 @@ | ||
| 170 | <Unit filename="src/libpw3270cpp/session.cc" /> | 145 | <Unit filename="src/libpw3270cpp/session.cc" /> |
| 171 | <Unit filename="src/libpw3270cpp/testprogram.cc" /> | 146 | <Unit filename="src/libpw3270cpp/testprogram.cc" /> |
| 172 | <Unit filename="src/loffice/Makefile.in" /> | 147 | <Unit filename="src/loffice/Makefile.in" /> |
| 173 | - <Unit filename="src/loffice/connect.cc" /> | ||
| 174 | <Unit filename="src/loffice/description.txt" /> | 148 | <Unit filename="src/loffice/description.txt" /> |
| 175 | <Unit filename="src/loffice/description.xml" /> | 149 | <Unit filename="src/loffice/description.xml" /> |
| 176 | <Unit filename="src/loffice/description.xml.in" /> | 150 | <Unit filename="src/loffice/description.xml.in" /> |
| 177 | - <Unit filename="src/loffice/get.cc" /> | ||
| 178 | <Unit filename="src/loffice/globals.hpp" /> | 151 | <Unit filename="src/loffice/globals.hpp" /> |
| 179 | - <Unit filename="src/loffice/info.cc" /> | ||
| 180 | - <Unit filename="src/loffice/init.cc" /> | ||
| 181 | <Unit filename="src/loffice/manifest.xml" /> | 152 | <Unit filename="src/loffice/manifest.xml" /> |
| 182 | <Unit filename="src/loffice/manifest.xml.in" /> | 153 | <Unit filename="src/loffice/manifest.xml.in" /> |
| 183 | <Unit filename="src/loffice/pw3270.idl" /> | 154 | <Unit filename="src/loffice/pw3270.idl" /> |
| 184 | - <Unit filename="src/loffice/service.cc" /> | ||
| 185 | - <Unit filename="src/loffice/set.cc" /> | ||
| 186 | - <Unit filename="src/loffice/testprogram.cc" /> | ||
| 187 | <Unit filename="src/oxt/Makefile.in" /> | 155 | <Unit filename="src/oxt/Makefile.in" /> |
| 188 | <Unit filename="src/oxt/description.txt" /> | 156 | <Unit filename="src/oxt/description.txt" /> |
| 189 | <Unit filename="src/oxt/description.xml.in" /> | 157 | <Unit filename="src/oxt/description.xml.in" /> |
| @@ -191,14 +159,9 @@ | @@ -191,14 +159,9 @@ | ||
| 191 | <Unit filename="src/oxt/manifest.xml.in" /> | 159 | <Unit filename="src/oxt/manifest.xml.in" /> |
| 192 | <Unit filename="src/oxt/pw3270.idl" /> | 160 | <Unit filename="src/oxt/pw3270.idl" /> |
| 193 | <Unit filename="src/php/Makefile.in" /> | 161 | <Unit filename="src/php/Makefile.in" /> |
| 194 | - <Unit filename="src/php/get.cc" /> | ||
| 195 | - <Unit filename="src/php/init.cc" /> | ||
| 196 | - <Unit filename="src/php/main.cc" /> | ||
| 197 | - <Unit filename="src/php/misc.cc" /> | ||
| 198 | <Unit filename="src/php/php.ini" /> | 162 | <Unit filename="src/php/php.ini" /> |
| 199 | <Unit filename="src/php/php3270.h" /> | 163 | <Unit filename="src/php/php3270.h" /> |
| 200 | <Unit filename="src/php/sample.php" /> | 164 | <Unit filename="src/php/sample.php" /> |
| 201 | - <Unit filename="src/php/set.cc" /> | ||
| 202 | <Unit filename="src/plugins/dbus3270/Makefile.in" /> | 165 | <Unit filename="src/plugins/dbus3270/Makefile.in" /> |
| 203 | <Unit filename="src/plugins/dbus3270/daemon.c"> | 166 | <Unit filename="src/plugins/dbus3270/daemon.c"> |
| 204 | <Option compilerVar="CC" /> | 167 | <Option compilerVar="CC" /> |
| @@ -342,41 +305,8 @@ | @@ -342,41 +305,8 @@ | ||
| 342 | <Unit filename="src/pw3270/v3270/private.h" /> | 305 | <Unit filename="src/pw3270/v3270/private.h" /> |
| 343 | <Unit filename="src/pw3270/v3270/sources.mak" /> | 306 | <Unit filename="src/pw3270/v3270/sources.mak" /> |
| 344 | <Unit filename="src/pw3270/v3270ft/Makefile.in" /> | 307 | <Unit filename="src/pw3270/v3270ft/Makefile.in" /> |
| 345 | - <Unit filename="src/pw3270/v3270ft/filelist.c"> | ||
| 346 | - <Option compilerVar="CC" /> | ||
| 347 | - </Unit> | ||
| 348 | <Unit filename="src/pw3270/v3270ft/genmarshal" /> | 308 | <Unit filename="src/pw3270/v3270ft/genmarshal" /> |
| 349 | - <Unit filename="src/pw3270/v3270ft/get.c"> | ||
| 350 | - <Option compilerVar="CC" /> | ||
| 351 | - </Unit> | ||
| 352 | - <Unit filename="src/pw3270/v3270ft/load.c"> | ||
| 353 | - <Option compilerVar="CC" /> | ||
| 354 | - </Unit> | ||
| 355 | - <Unit filename="src/pw3270/v3270ft/misc.c"> | ||
| 356 | - <Option compilerVar="CC" /> | ||
| 357 | - </Unit> | ||
| 358 | <Unit filename="src/pw3270/v3270ft/private.h" /> | 309 | <Unit filename="src/pw3270/v3270ft/private.h" /> |
| 359 | - <Unit filename="src/pw3270/v3270ft/save.c"> | ||
| 360 | - <Option compilerVar="CC" /> | ||
| 361 | - </Unit> | ||
| 362 | - <Unit filename="src/pw3270/v3270ft/select.c"> | ||
| 363 | - <Option compilerVar="CC" /> | ||
| 364 | - </Unit> | ||
| 365 | - <Unit filename="src/pw3270/v3270ft/set.c"> | ||
| 366 | - <Option compilerVar="CC" /> | ||
| 367 | - </Unit> | ||
| 368 | - <Unit filename="src/pw3270/v3270ft/tables.c"> | ||
| 369 | - <Option compilerVar="CC" /> | ||
| 370 | - </Unit> | ||
| 371 | - <Unit filename="src/pw3270/v3270ft/transfer.c"> | ||
| 372 | - <Option compilerVar="CC" /> | ||
| 373 | - </Unit> | ||
| 374 | - <Unit filename="src/pw3270/v3270ft/v3270ft.c"> | ||
| 375 | - <Option compilerVar="CC" /> | ||
| 376 | - </Unit> | ||
| 377 | - <Unit filename="src/pw3270/v3270ft/v3270ftprogress.c"> | ||
| 378 | - <Option compilerVar="CC" /> | ||
| 379 | - </Unit> | ||
| 380 | <Unit filename="src/pw3270/window.c"> | 310 | <Unit filename="src/pw3270/window.c"> |
| 381 | <Option compilerVar="CC" /> | 311 | <Option compilerVar="CC" /> |
| 382 | </Unit> | 312 | </Unit> |
src/pw3270/actions.c
| @@ -363,6 +363,8 @@ static void lib3270_toggle_action(GtkToggleAction *action,GtkWidget *widget) | @@ -363,6 +363,8 @@ static void lib3270_toggle_action(GtkToggleAction *action,GtkWidget *widget) | ||
| 363 | { | 363 | { |
| 364 | LIB3270_TOGGLE toggle = (LIB3270_TOGGLE) GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action),"toggle_id")); | 364 | LIB3270_TOGGLE toggle = (LIB3270_TOGGLE) GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action),"toggle_id")); |
| 365 | 365 | ||
| 366 | + trace("Action %s toggled on widget %p (id=%d)\n",gtk_action_get_name(GTK_ACTION(action)),widget,(int) toggle); | ||
| 367 | + | ||
| 366 | lib3270_trace_event(v3270_get_session(widget),"Action %s toggled on widget %p (id=%d)\n",gtk_action_get_name(GTK_ACTION(action)),widget,(int) toggle); | 368 | lib3270_trace_event(v3270_get_session(widget),"Action %s toggled on widget %p (id=%d)\n",gtk_action_get_name(GTK_ACTION(action)),widget,(int) toggle); |
| 367 | 369 | ||
| 368 | if(toggle == TOGGLE_GDKDEBUG) | 370 | if(toggle == TOGGLE_GDKDEBUG) |
| @@ -438,6 +440,8 @@ static void action_set_toggle(GtkAction *action, GtkWidget *widget) | @@ -438,6 +440,8 @@ static void action_set_toggle(GtkAction *action, GtkWidget *widget) | ||
| 438 | { | 440 | { |
| 439 | LIB3270_TOGGLE id = (LIB3270_TOGGLE) GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action),"toggle_id")); | 441 | LIB3270_TOGGLE id = (LIB3270_TOGGLE) GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action),"toggle_id")); |
| 440 | 442 | ||
| 443 | + trace("Action %s activated on widget %p toggle=%d\n",gtk_action_get_name(action),widget,id); | ||
| 444 | + | ||
| 441 | lib3270_trace_event(v3270_get_session(widget),"Action %s activated on widget %p toggle=%d\n",gtk_action_get_name(action),widget,id); | 445 | lib3270_trace_event(v3270_get_session(widget),"Action %s activated on widget %p toggle=%d\n",gtk_action_get_name(action),widget,id); |
| 442 | lib3270_set_toggle(v3270_get_session(widget),id,1); | 446 | lib3270_set_toggle(v3270_get_session(widget),id,1); |
| 443 | } | 447 | } |
| @@ -445,6 +449,9 @@ static void action_set_toggle(GtkAction *action, GtkWidget *widget) | @@ -445,6 +449,9 @@ static void action_set_toggle(GtkAction *action, GtkWidget *widget) | ||
| 445 | static void action_reset_toggle(GtkAction *action, GtkWidget *widget) | 449 | static void action_reset_toggle(GtkAction *action, GtkWidget *widget) |
| 446 | { | 450 | { |
| 447 | LIB3270_TOGGLE id = (LIB3270_TOGGLE) GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action),"toggle_id")); | 451 | LIB3270_TOGGLE id = (LIB3270_TOGGLE) GPOINTER_TO_INT(g_object_get_data(G_OBJECT(action),"toggle_id")); |
| 452 | + | ||
| 453 | + trace("Action %s activated on widget %p toggle=%d\n",gtk_action_get_name(action),widget,id); | ||
| 454 | + | ||
| 448 | lib3270_trace_event(v3270_get_session(widget),"Action %s activated on widget %p toggle=%d\n",gtk_action_get_name(action),widget,id); | 455 | lib3270_trace_event(v3270_get_session(widget),"Action %s activated on widget %p toggle=%d\n",gtk_action_get_name(action),widget,id); |
| 449 | lib3270_set_toggle(v3270_get_session(widget),id,0); | 456 | lib3270_set_toggle(v3270_get_session(widget),id,0); |
| 450 | } | 457 | } |
src/pw3270/tools.c
| @@ -136,6 +136,8 @@ LIB3270_EXPORT gboolean pw3270_set_toggle_by_name(GtkWidget *widget, const gchar | @@ -136,6 +136,8 @@ LIB3270_EXPORT gboolean pw3270_set_toggle_by_name(GtkWidget *widget, const gchar | ||
| 136 | H3270 * hSession = pw3270_get_session(widget); | 136 | H3270 * hSession = pw3270_get_session(widget); |
| 137 | LIB3270_TOGGLE id = lib3270_get_toggle_id(name); | 137 | LIB3270_TOGGLE id = lib3270_get_toggle_id(name); |
| 138 | 138 | ||
| 139 | + trace("%s(%s) id=%u",__FUNCTION__,name,id); | ||
| 140 | + | ||
| 139 | if(!hSession || id == (LIB3270_TOGGLE) -1) | 141 | if(!hSession || id == (LIB3270_TOGGLE) -1) |
| 140 | return FALSE; | 142 | return FALSE; |
| 141 | 143 |
src/pw3270/window.c
| @@ -257,13 +257,36 @@ | @@ -257,13 +257,36 @@ | ||
| 257 | lib3270_set_toggle(hSession,LIB3270_TOGGLE_NETWORK_TRACE,0); | 257 | lib3270_set_toggle(hSession,LIB3270_TOGGLE_NETWORK_TRACE,0); |
| 258 | } | 258 | } |
| 259 | 259 | ||
| 260 | + struct trace_data | ||
| 261 | + { | ||
| 262 | + H3270 * hSession; | ||
| 263 | + gchar * text; | ||
| 264 | + }; | ||
| 260 | 265 | ||
| 261 | - static void trace_window(G_GNUC_UNUSED H3270 *hSession, G_GNUC_UNUSED void * userdata, const char *fmt, va_list args) | 266 | + static gboolean bg_trace_window(struct trace_data *data) |
| 262 | { | 267 | { |
| 263 | - GtkWidget * widget = v3270_trace_new_from_session(hSession); | 268 | + GtkWidget * widget = v3270_trace_new_from_session(data->hSession,data->text); |
| 269 | + | ||
| 264 | v3270_trace_set_destroy_on_close(widget,TRUE); | 270 | v3270_trace_set_destroy_on_close(widget,TRUE); |
| 265 | - g_signal_connect(widget, "destroy", G_CALLBACK(trace_window_destroy), hSession); | ||
| 266 | - gtk_widget_show(widget); | 271 | + |
| 272 | + g_signal_connect(widget, "destroy", G_CALLBACK(trace_window_destroy), data->hSession); | ||
| 273 | + | ||
| 274 | + gtk_widget_show_all(widget); | ||
| 275 | + | ||
| 276 | + g_free(data->text); | ||
| 277 | + | ||
| 278 | + return FALSE; | ||
| 279 | + } | ||
| 280 | + | ||
| 281 | + static void trace_window(G_GNUC_UNUSED H3270 *hSession, G_GNUC_UNUSED void * userdata, const char *fmt, va_list args) | ||
| 282 | + { | ||
| 283 | + struct trace_data * data = g_new0(struct trace_data,1); | ||
| 284 | + | ||
| 285 | + data->hSession = hSession; | ||
| 286 | + data->text = g_strdup_vprintf(fmt,args); | ||
| 287 | + | ||
| 288 | + g_idle_add_full(G_PRIORITY_DEFAULT_IDLE,(GSourceFunc) bg_trace_window, data, g_free); | ||
| 289 | + | ||
| 267 | } | 290 | } |
| 268 | 291 | ||
| 269 | GtkWidget * pw3270_new(const gchar *host, const gchar *systype, unsigned short colors) | 292 | GtkWidget * pw3270_new(const gchar *host, const gchar *systype, unsigned short colors) |
| @@ -292,7 +315,7 @@ | @@ -292,7 +315,7 @@ | ||
| 292 | if(*ptr) | 315 | if(*ptr) |
| 293 | { | 316 | { |
| 294 | pw3270_set_url(widget,ptr); | 317 | pw3270_set_url(widget,ptr); |
| 295 | - connct = pw3270_get_toggle(widget,LIB3270_TOGGLE_CONNECT_ON_STARTUP) ? TRUE : FALSE; | 318 | +// connct = pw3270_get_toggle(widget,LIB3270_TOGGLE_CONNECT_ON_STARTUP) ? TRUE : FALSE; |
| 296 | } | 319 | } |
| 297 | g_free(ptr); | 320 | g_free(ptr); |
| 298 | } | 321 | } |
| @@ -318,8 +341,10 @@ | @@ -318,8 +341,10 @@ | ||
| 318 | 341 | ||
| 319 | v3270_set_scaled_fonts(GTK_PW3270(widget)->terminal,get_boolean_from_config("terminal","sfonts",FALSE)); | 342 | v3270_set_scaled_fonts(GTK_PW3270(widget)->terminal,get_boolean_from_config("terminal","sfonts",FALSE)); |
| 320 | 343 | ||
| 344 | + /* | ||
| 321 | if(connct) | 345 | if(connct) |
| 322 | pw3270_connect(widget); | 346 | pw3270_connect(widget); |
| 347 | + */ | ||
| 323 | 348 | ||
| 324 | return widget; | 349 | return widget; |
| 325 | } | 350 | } |
ui/98trace.xml
| @@ -37,6 +37,7 @@ | @@ -37,6 +37,7 @@ | ||
| 37 | <menuitem action='toggle' id='screentrace' label='Trace screen contents' /> | 37 | <menuitem action='toggle' id='screentrace' label='Trace screen contents' /> |
| 38 | <menuitem action='toggle' id='nettrace' label='Trace network data flow' /> | 38 | <menuitem action='toggle' id='nettrace' label='Trace network data flow' /> |
| 39 | <menuitem action='toggle' id='eventtrace' label='Trace user interface events' /> | 39 | <menuitem action='toggle' id='eventtrace' label='Trace user interface events' /> |
| 40 | + <menuitem action='toggle' id='ssltrace' label='Trace SSL negotiation' /> | ||
| 40 | </menu> | 41 | </menu> |
| 41 | <menuitem action='toggle' id='fieldattr' label='Field Delimiters' /> | 42 | <menuitem action='toggle' id='fieldattr' label='Field Delimiters' /> |
| 42 | </menu> | 43 | </menu> |