public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] dev/ulm:master commit in: patchsets/otpcalc/0.97/
@ 2015-12-13  8:03 Ulrich Müller
  0 siblings, 0 replies; 2+ messages in thread
From: Ulrich Müller @ 2015-12-13  8:03 UTC (permalink / raw
  To: gentoo-commits

commit:     9d37ff891f244eb042a906d35abdd0542314b968
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 12 10:51:29 2015 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Dec 12 10:51:29 2015 +0000
URL:        https://gitweb.gentoo.org/dev/ulm.git/commit/?id=9d37ff89

otpcalc: Add 08_all_extract.patch.

Port changes to the extract() function from the skey patchset,
fixing an out-of-bounds read.

Fix signedness of first function argument.

 patchsets/otpcalc/0.97/08_all_extract.patch | 39 +++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/patchsets/otpcalc/0.97/08_all_extract.patch b/patchsets/otpcalc/0.97/08_all_extract.patch
new file mode 100644
index 0000000..0f0cf41
--- /dev/null
+++ b/patchsets/otpcalc/0.97/08_all_extract.patch
@@ -0,0 +1,39 @@
+Port changes to the extract() function from the skey patchset,
+fixing an out-of-bounds read.
+
+Fix signedness of first function argument.
+
+--- otpCalc-0.97-orig/utility.c
++++ otpCalc-0.97/utility.c
+@@ -28,21 +28,21 @@
+ #include "utility.h"
+ 
+ 
+-static unsigned short extract(char *s, int start, int length)
++static unsigned short extract(unsigned char *s, int start, int length)
+ {
+ 
+-	unsigned char cl;
+-	unsigned char cc;
+-	unsigned char cr;
+ 	unsigned int x;
++	int end, i;
+ 
+ 
+-	cl = s[start / 8];
+-	cc = s[start / 8 + 1];
+-	cr = s[start / 8 + 2];
+-	x = ((int) (cl << 8 | cc) << 8 | cr);
+-	x = x >> (24 - (length + (start % 8)));
+-	x = (x & (0xffff >> (16 - length)));
++	end = start + length - 1;
++	x = 0;
++	for (i = start / 8; i <= end / 8; i++) {
++		x <<= 8;
++		x |= s[i];
++	}
++	x >>= 7 - end % 8;
++	x &= (1 << length) - 1;
+ 
+ 	return (unsigned short)x;
+ 


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] dev/ulm:master commit in: patchsets/otpcalc/0.97/
@ 2015-12-13  8:03 Ulrich Müller
  0 siblings, 0 replies; 2+ messages in thread
From: Ulrich Müller @ 2015-12-13  8:03 UTC (permalink / raw
  To: gentoo-commits

commit:     bdce23b192887d91d5214ce95cbcc1d2faf83113
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 12 10:28:42 2015 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Dec 12 10:28:42 2015 +0000
URL:        https://gitweb.gentoo.org/dev/ulm.git/commit/?id=bdce23b1

otpcalc-0.97: Import patches from gentoo repository.

 .../otpcalc/0.97/01_all_man-table-format.patch     |  35 +++
 patchsets/otpcalc/0.97/02_all_badindex.patch       |  13 +
 patchsets/otpcalc/0.97/03_all_crypto-proto.patch   |  13 +
 patchsets/otpcalc/0.97/04_all_gtk2-gentoo.patch    |  72 ++++++
 patchsets/otpcalc/0.97/05_all_skey-md5.patch       |  24 ++
 patchsets/otpcalc/0.97/06_all_sha1-byteorder.patch |  53 +++++
 patchsets/otpcalc/0.97/07_all_gtk-deprecated.patch | 261 +++++++++++++++++++++
 7 files changed, 471 insertions(+)

diff --git a/patchsets/otpcalc/0.97/01_all_man-table-format.patch b/patchsets/otpcalc/0.97/01_all_man-table-format.patch
new file mode 100644
index 0000000..31ec238
--- /dev/null
+++ b/patchsets/otpcalc/0.97/01_all_man-table-format.patch
@@ -0,0 +1,35 @@
+Make missing list appear in man page, bug 90900.
+
+--- otpCalc-0.97-orig/otpCalc.man
++++ otpCalc-0.97/otpCalc.man
+@@ -24,18 +24,20 @@
+ the Challenge input:
+ .IP
+ .TS
+-s/key		MD4
+-.br
+-otp-md4		MD4
+-.br
+-otp-md5		MD5
+-.br
+-otp-rmd160	RIPEMD-160
+-.br
+-otp-sha1		SHA1
+-.br
++allbox tab(#);
++cb l
++cb l
++cb l
++cb l
++cb l.
++s/key#MD4
++otp-md4#MD4
++otp-md5#MD5
++otp-rmd160#RIPEMD-160
++otp-sha1#SHA1
+ .TE
+ .LP
++.LP
+ In the absence of a prefix, the default hash, specified in the Settings menu,
+ is used.
+ .SH "SEE ALSO"

diff --git a/patchsets/otpcalc/0.97/02_all_badindex.patch b/patchsets/otpcalc/0.97/02_all_badindex.patch
new file mode 100644
index 0000000..53a32c4
--- /dev/null
+++ b/patchsets/otpcalc/0.97/02_all_badindex.patch
@@ -0,0 +1,13 @@
+Allocate enough elements for array of func ptrs, bug 123976.
+
+--- otpCalc-0.97.orig/callbacks.c
++++ otpCalc-0.97/callbacks.c
+@@ -81,7 +81,7 @@
+ void calculate(void)
+ {
+ 
+-	void (*hashes[4])();
++	void (*hashes[5])();
+ 
+ 	gchar *challenge, *passwd, *message, *response;
+ 	struct tokens *set;

diff --git a/patchsets/otpcalc/0.97/03_all_crypto-proto.patch b/patchsets/otpcalc/0.97/03_all_crypto-proto.patch
new file mode 100644
index 0000000..05ba89f
--- /dev/null
+++ b/patchsets/otpcalc/0.97/03_all_crypto-proto.patch
@@ -0,0 +1,13 @@
+Correct crypto prototypes, bug 123993.
+
+--- otpCalc-0.97.orig/crypto.h
++++ otpCalc-0.97/crypto.h
+@@ -1,4 +1,4 @@
+-void md4lite(char *, size_t);
+-void md5lite(char *, size_t);
+-void rmd160lite(char *, size_t);
+-void sha1lite(char *, size_t);
++void md4lite(char *message, unsigned int len);
++void md5lite(char *message, unsigned int len);
++void rmd160lite(char *message, unsigned int len);
++void sha1lite(char *message, unsigned int len);

diff --git a/patchsets/otpcalc/0.97/04_all_gtk2-gentoo.patch b/patchsets/otpcalc/0.97/04_all_gtk2-gentoo.patch
new file mode 100644
index 0000000..f781b73
--- /dev/null
+++ b/patchsets/otpcalc/0.97/04_all_gtk2-gentoo.patch
@@ -0,0 +1,72 @@
+Make it work with GTK+ 2.
+
+--- otpCalc-0.97-orig/Makefile.in
++++ otpCalc-0.97/Makefile.in
+@@ -3,8 +3,8 @@
+ 
+ CC = @CC@
+ DEFS = -DVERSION=\"$(VER)\" @DEFS@
+-CFLAGS = -s -O3 -Wall -pipe `gtk-config --cflags`
+-LIBS = `gtk-config --libs` @LIBS@
++CFLAGS = -s -O3 -Wall -pipe `pkg-config --cflags gtk+-2.0`
++LIBS = `pkg-config --libs gtk+-2.0` @LIBS@
+ 
+ prefix = @prefix@
+ exec_prefix = @exec_prefix@
+--- otpCalc-0.97-orig/callbacks.c
++++ otpCalc-0.97/callbacks.c
+@@ -236,7 +236,7 @@
+ }
+ 
+ 
+-void focus(GtkWidget *widget, gpointer data)
++gboolean focus(GtkWidget *widget, GdkEvent *event, gpointer data)
+ {
+ 
+ 	static GdkAtom targets;
+@@ -244,12 +244,12 @@
+ 
+ 
+ 	if (!autopaste)
+-		return;
++		return FALSE;
+ 
+ 	targets = gdk_atom_intern("STRING", FALSE);
+ 
+ 	gtk_selection_convert(widget, GDK_SELECTION_PRIMARY, targets,
+ 			      GDK_CURRENT_TIME);
+ 
+-
++	return FALSE;
+ }
+--- otpCalc-0.97-orig/gui.c
++++ otpCalc-0.97/gui.c
+@@ -29,7 +29,7 @@
+ GtkWidget *te_response;
+ 
+ unsigned short hash;
+-unsigned short newline = 1;
++unsigned short newline = 0;
+ unsigned short autopaste = 1;
+ 
+ int main(int argc, char *argv[])
+@@ -147,7 +147,7 @@
+ 
+ 	/* Setup the menu bar... */
+ 	mb_top = gtk_menu_bar_new();
+-	gtk_menu_bar_set_shadow_type(GTK_MENU_BAR(mb_top), GTK_SHADOW_NONE); 
++	/*gtk_menu_bar_set_shadow_type(GTK_MENU_BAR(mb_top), GTK_SHADOW_NONE);*/
+ 	gtk_table_attach(GTK_TABLE(ta_top), mb_top, 0, 3, 0, 1,
+ 			 (GtkAttachOptions)(GTK_FILL),
+ 			 (GtkAttachOptions)(0), 0, 0);
+--- otpCalc-0.97-orig/utility.c
++++ otpCalc-0.97/utility.c
+@@ -422,7 +422,7 @@
+ 			words[extract(message, 33, 11)],
+ 			words[extract(message, 44, 11)],
+ 			words[extract(message, 55, 11)],
+-			(newline == 1) ? "\n" : NULL);
++			(newline == 1) ? "\n" : "");
+ 
+ 	return response;
+ 

diff --git a/patchsets/otpcalc/0.97/05_all_skey-md5.patch b/patchsets/otpcalc/0.97/05_all_skey-md5.patch
new file mode 100644
index 0000000..39ab267
--- /dev/null
+++ b/patchsets/otpcalc/0.97/05_all_skey-md5.patch
@@ -0,0 +1,24 @@
+Change default s/key hash to MD5 (same as sys-auth/skey).
+
+--- otpCalc-0.97-orig/callbacks.c
++++ otpCalc-0.97/callbacks.c
+@@ -90,7 +90,7 @@
+ 	unsigned char results[9];
+ 
+ 
+-	hashes[SKEY] = md4lite;
++	hashes[SKEY] = md5lite;
+ 	hashes[MD4] = md4lite;
+ 	hashes[MD5] = md5lite;
+ 	hashes[RMD160] = rmd160lite;
+--- otpCalc-0.97-orig/otpCalc.man
++++ otpCalc-0.97/otpCalc.man
+@@ -30,7 +30,7 @@
+ cb l
+ cb l
+ cb l.
+-s/key#MD4
++s/key#MD5
+ otp-md4#MD4
+ otp-md5#MD5
+ otp-rmd160#RIPEMD-160

diff --git a/patchsets/otpcalc/0.97/06_all_sha1-byteorder.patch b/patchsets/otpcalc/0.97/06_all_sha1-byteorder.patch
new file mode 100644
index 0000000..906efe6
--- /dev/null
+++ b/patchsets/otpcalc/0.97/06_all_sha1-byteorder.patch
@@ -0,0 +1,53 @@
+Fix SHA1 byte-order issue for conformance with RFC 2289.
+
+--- otpCalc-0.97-orig/BUGS
++++ otpCalc-0.97/BUGS
+@@ -16,3 +16,7 @@
+ 
+ Thanks,
+ Anthony
++
++Note: Above-mentioned SHA1 issue is fixed in the Gentoo version.
++The output now agrees with RFC 2289 and with S/Key.
++ - Ulrich Mueller <ulm@gentoo.org>
+--- otpCalc-0.97-orig/crypto.c
++++ otpCalc-0.97/crypto.c
+@@ -199,6 +199,8 @@
+ 	for (i = 0; i < 4; i++)
+ 		digest[i] ^= digest[i+16];
+ 
+-	memcpy(message, digest, 8);
++	/* Fix byte order, as required by RFC 2289 Appendix A */
++	for (i = 0; i < 8; i++)
++		 message[i] = digest[i^3];
+ 
+ }
+--- otpCalc-0.97-orig/otpCalc.man
++++ otpCalc-0.97/otpCalc.man
+@@ -47,9 +47,6 @@
+ RFC 2289, RFC 1740
+ .SH "AUTHOR"
+ Anthony D. Urso <anthonyu@killa.net>.
+-.SH "BUGS"
+-SHA1 output differs from RFC2289; however, the output is consistant with
+-other implementations.
+ .SH "COPYRIGHT"
+ Copyright \(co 2001 Anthony D. Urso.
+ .br
+--- otpCalc-0.97-orig/sha1.h
++++ otpCalc-0.97/sha1.h
+@@ -1,3 +1,5 @@
++#include "config.h"
++
+ #ifndef  i386
+ typedef          long int int64;
+ typedef unsigned long int uint64;
+@@ -28,7 +30,7 @@
+ 
+ #define rol(value, bits) (((value) << (bits)) | ((value) >> (32 - (bits))))
+ 
+-#ifdef WORDS_BIGENDIAN
++#ifndef WORDS_BIGENDIAN
+ #define blk0(i) (block->l[i] = (rol(block->l[i],24)&0xFF00FF00) \
+     |(rol(block->l[i],8)&0x00FF00FF))
+ #else

diff --git a/patchsets/otpcalc/0.97/07_all_gtk-deprecated.patch b/patchsets/otpcalc/0.97/07_all_gtk-deprecated.patch
new file mode 100644
index 0000000..8366177
--- /dev/null
+++ b/patchsets/otpcalc/0.97/07_all_gtk-deprecated.patch
@@ -0,0 +1,261 @@
+Do not use deprecated GTK symbols.
+Use accessor functions for GTK struct members.
+
+--- otpCalc-0.97-orig/callbacks.c
++++ otpCalc-0.97/callbacks.c
+@@ -65,14 +65,16 @@
+ 
+ 	bu_about_close = gtk_button_new_with_label("Close");
+ 
+-	gtk_container_add(GTK_CONTAINER(GTK_DIALOG(di_about)->vbox),
++	gtk_container_add(GTK_CONTAINER(gtk_dialog_get_content_area(
++						GTK_DIALOG(di_about))),
+ 			  la_about);
+-	gtk_container_add(GTK_CONTAINER(GTK_DIALOG(di_about)->action_area),
++	gtk_container_add(GTK_CONTAINER(gtk_dialog_get_action_area(
++						GTK_DIALOG(di_about))),
+ 			  bu_about_close);
+ 
+-	gtk_signal_connect_object(GTK_OBJECT(bu_about_close), "clicked",
+-				  GTK_SIGNAL_FUNC(gtk_widget_destroy),
+-				  (gpointer)di_about);
++	g_signal_connect_swapped(G_OBJECT(bu_about_close), "clicked",
++				 G_CALLBACK(gtk_widget_destroy),
++				 (gpointer)di_about);
+ 
+ 	gtk_widget_show_all(di_about);
+ 
+@@ -176,10 +178,11 @@
+ 	);
+ 	gtk_misc_set_padding(GTK_MISC(la_netwarn), 10, 10);
+ 	gtk_label_set_line_wrap(GTK_LABEL(la_netwarn), TRUE);
+-	gtk_container_add(GTK_CONTAINER(GTK_DIALOG(di_netwarn)->vbox),
++	gtk_container_add(GTK_CONTAINER(gtk_dialog_get_content_area(
++						GTK_DIALOG(di_netwarn))),
+ 			  la_netwarn);
+ 
+-	aa_netwarn = GTK_DIALOG(di_netwarn)->action_area;
++	aa_netwarn = gtk_dialog_get_action_area(GTK_DIALOG(di_netwarn));
+ 
+ 	bu_netwarn_ok = gtk_button_new_with_label("Yes");
+ 	gtk_container_add(GTK_CONTAINER(aa_netwarn), bu_netwarn_ok);
+@@ -187,12 +190,12 @@
+ 	bu_netwarn_canc = gtk_button_new_with_label("No");
+ 	gtk_container_add(GTK_CONTAINER(aa_netwarn), bu_netwarn_canc);
+ 
+-	gtk_signal_connect_object(GTK_OBJECT(bu_netwarn_ok), "clicked",
+-				  GTK_SIGNAL_FUNC(gtk_widget_destroy),
+-				  (gpointer)di_netwarn);
++	g_signal_connect_swapped(G_OBJECT(bu_netwarn_ok), "clicked",
++				 G_CALLBACK(gtk_widget_destroy),
++				 (gpointer)di_netwarn);
+ 
+-	gtk_signal_connect_object(GTK_OBJECT(bu_netwarn_canc), "clicked",
+-				  GTK_SIGNAL_FUNC(gtk_main_quit), NULL);
++	g_signal_connect_swapped(G_OBJECT(bu_netwarn_canc), "clicked",
++				 G_CALLBACK(gtk_main_quit), NULL);
+ 
+ 	gtk_widget_show_all(di_netwarn);
+ 
+@@ -207,13 +210,13 @@
+ 	unsigned short parsed;
+ 
+ 
+-	if (selection->length < 1) 
++	if (gtk_selection_data_get_length(selection) < 1)
+ 		return;
+ 
+ 	set = g_malloc(sizeof(struct tokens));
+-	set->seed = g_malloc(selection->length);
++	set->seed = g_malloc(gtk_selection_data_get_length(selection));
+ 
+-	parsed = parse(selection->data, set);
++	parsed = parse(gtk_selection_data_get_data(selection), set);
+ 
+ 	g_free(set->seed);
+ 	g_free(set);
+@@ -221,7 +224,8 @@
+ 	if (!parsed)
+ 		return;
+ 
+-	gtk_entry_set_text(GTK_ENTRY(te_challenge), selection->data);
++	gtk_entry_set_text(GTK_ENTRY(te_challenge),
++			   gtk_selection_data_get_data(selection));
+ 
+ }
+ 
+--- otpCalc-0.97-orig/gui.c
++++ otpCalc-0.97/gui.c
+@@ -51,17 +51,17 @@
+ 	/* Setup the main window... */
+ 	wi_top = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ 	gtk_window_set_title(GTK_WINDOW(wi_top), "otpCalc");
+-	gtk_window_set_policy(GTK_WINDOW(wi_top), FALSE, FALSE, TRUE);
++	gtk_window_set_resizable(GTK_WINDOW(wi_top), FALSE);
+ 	gtk_window_set_wmclass(GTK_WINDOW(wi_top), "otpCalc", "Calc");
+ 
+-	gtk_signal_connect(GTK_OBJECT(wi_top), "delete_event",
+-			   GTK_SIGNAL_FUNC(gtk_main_quit), NULL);
++	g_signal_connect(G_OBJECT(wi_top), "delete_event",
++			 G_CALLBACK(gtk_main_quit), NULL);
+ 
+-	gtk_signal_connect(GTK_OBJECT(wi_top), "focus_in_event",
+-			   GTK_SIGNAL_FUNC(focus), NULL);
++	g_signal_connect(G_OBJECT(wi_top), "focus_in_event",
++			 G_CALLBACK(focus), NULL);
+ 
+-	gtk_signal_connect(GTK_OBJECT(wi_top), "selection_received",
+-			   GTK_SIGNAL_FUNC(selector), NULL);
++	g_signal_connect(G_OBJECT(wi_top), "selection_received",
++			 G_CALLBACK(selector), NULL);
+ 	/* Done. */
+ 
+ 
+@@ -82,9 +82,9 @@
+ 	/* Setup the file menu... */
+ 	me_file = gtk_menu_new();
+ 	mi_file_quit = gtk_menu_item_new_with_label("Quit");
+-	gtk_menu_append(GTK_MENU(me_file), mi_file_quit);
+-	gtk_signal_connect_object(GTK_OBJECT(mi_file_quit), "activate",
+-				  GTK_SIGNAL_FUNC(gtk_main_quit), NULL);
++	gtk_menu_shell_append(GTK_MENU_SHELL(me_file), mi_file_quit);
++	g_signal_connect_swapped(G_OBJECT(mi_file_quit), "activate",
++				 G_CALLBACK(gtk_main_quit), NULL);
+ 
+ 	gtk_widget_add_accelerator(mi_file_quit, "activate", accel_group, 0x071,
+ 				   GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
+@@ -97,40 +97,45 @@
+ 	me_sett = gtk_menu_new();
+ 
+ 	mi_sett_sha1 = gtk_radio_menu_item_new_with_label(hashes, "sha1");
+-	gtk_menu_append(GTK_MENU(me_sett), mi_sett_sha1);
+-	gtk_signal_connect_object(GTK_OBJECT(mi_sett_sha1), "activate",
+-				  GTK_SIGNAL_FUNC(sethash), (void *)SHA1);
+-	hashes = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(mi_sett_sha1));
++	gtk_menu_shell_append(GTK_MENU_SHELL(me_sett), mi_sett_sha1);
++	g_signal_connect_swapped(G_OBJECT(mi_sett_sha1), "activate",
++				 G_CALLBACK(sethash), (void *)SHA1);
++	hashes = gtk_radio_menu_item_get_group(
++		GTK_RADIO_MENU_ITEM(mi_sett_sha1));
+ 	gtk_widget_show(mi_sett_sha1);
+ 
+ 	mi_sett_rmd160 = gtk_radio_menu_item_new_with_label(hashes, "rmd160");
+-	gtk_menu_append(GTK_MENU(me_sett), mi_sett_rmd160);
+-	gtk_signal_connect_object(GTK_OBJECT(mi_sett_rmd160), "activate",
+-				  GTK_SIGNAL_FUNC(sethash), (void *)RMD160);
+-	hashes = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(mi_sett_rmd160));
++	gtk_menu_shell_append(GTK_MENU_SHELL(me_sett), mi_sett_rmd160);
++	g_signal_connect_swapped(G_OBJECT(mi_sett_rmd160), "activate",
++				 G_CALLBACK(sethash), (void *)RMD160);
++	hashes = gtk_radio_menu_item_get_group(
++		GTK_RADIO_MENU_ITEM(mi_sett_rmd160));
+ 	gtk_widget_show(mi_sett_rmd160);
+ 
+ 	mi_sett_md5 = gtk_radio_menu_item_new_with_label(hashes, "md5");
+-	gtk_menu_append(GTK_MENU(me_sett), mi_sett_md5);
+-	gtk_signal_connect_object(GTK_OBJECT(mi_sett_md5), "activate",
+-				  GTK_SIGNAL_FUNC(sethash), (void *)MD5);
+-	hashes = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(mi_sett_md5));
++	gtk_menu_shell_append(GTK_MENU_SHELL(me_sett), mi_sett_md5);
++	g_signal_connect_swapped(G_OBJECT(mi_sett_md5), "activate",
++				 G_CALLBACK(sethash), (void *)MD5);
++	hashes = gtk_radio_menu_item_get_group(
++		GTK_RADIO_MENU_ITEM(mi_sett_md5));
+ 	gtk_widget_show(mi_sett_md5);
+ 
+ 	gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mi_sett_md5), TRUE);
+ 
+ 	mi_sett_md4 = gtk_radio_menu_item_new_with_label(hashes, "md4");
+-	gtk_menu_append(GTK_MENU(me_sett), mi_sett_md4);
+-	gtk_signal_connect_object(GTK_OBJECT(mi_sett_md4), "activate",
+-				  GTK_SIGNAL_FUNC(sethash), (void *)MD4);
+-	hashes = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(mi_sett_md4));
++	gtk_menu_shell_append(GTK_MENU_SHELL(me_sett), mi_sett_md4);
++	g_signal_connect_swapped(G_OBJECT(mi_sett_md4), "activate",
++				 G_CALLBACK(sethash), (void *)MD4);
++	hashes = gtk_radio_menu_item_get_group(
++		GTK_RADIO_MENU_ITEM(mi_sett_md4));
+ 	gtk_widget_show(mi_sett_md4);
+ 
+ 	mi_sett_skey = gtk_radio_menu_item_new_with_label(hashes, "s/key");
+-	gtk_menu_append(GTK_MENU(me_sett), mi_sett_skey);
+-	gtk_signal_connect_object(GTK_OBJECT(mi_sett_skey), "activate",
+-				  GTK_SIGNAL_FUNC(sethash), (void *)SKEY);
+-	hashes = gtk_radio_menu_item_group(GTK_RADIO_MENU_ITEM(mi_sett_skey));
++	gtk_menu_shell_append(GTK_MENU_SHELL(me_sett), mi_sett_skey);
++	g_signal_connect_swapped(G_OBJECT(mi_sett_skey), "activate",
++				 G_CALLBACK(sethash), (void *)SKEY);
++	hashes = gtk_radio_menu_item_get_group(
++		GTK_RADIO_MENU_ITEM(mi_sett_skey));
+ 	gtk_widget_show(mi_sett_skey);
+ 	/* Done. */
+ 
+@@ -138,9 +143,9 @@
+ 	/* Setup the help menu... */
+ 	me_help = gtk_menu_new();
+ 	mi_help_about = gtk_menu_item_new_with_label("About...");
+-	gtk_menu_append(GTK_MENU(me_help), mi_help_about);
+-	gtk_signal_connect_object(GTK_OBJECT(mi_help_about), "activate",
+-				  GTK_SIGNAL_FUNC(about), NULL);
++	gtk_menu_shell_append(GTK_MENU_SHELL(me_help), mi_help_about);
++	g_signal_connect_swapped(G_OBJECT(mi_help_about), "activate",
++				 G_CALLBACK(about), NULL);
+ 	gtk_widget_show(mi_help_about);
+ 	/* Done. */
+ 
+@@ -156,18 +161,18 @@
+ 	mi_file = gtk_menu_item_new_with_label("File");
+ 	gtk_widget_show(mi_file);
+ 	gtk_menu_item_set_submenu(GTK_MENU_ITEM(mi_file), me_file);
+-	gtk_menu_bar_append(GTK_MENU_BAR(mb_top), mi_file);
++	gtk_menu_shell_append(GTK_MENU_SHELL(mb_top), mi_file);
+ 
+ 	mi_sett = gtk_menu_item_new_with_label("Settings");
+ 	gtk_widget_show(mi_sett);
+ 	gtk_menu_item_set_submenu(GTK_MENU_ITEM(mi_sett), me_sett);
+-	gtk_menu_bar_append(GTK_MENU_BAR(mb_top), mi_sett);
++	gtk_menu_shell_append(GTK_MENU_SHELL(mb_top), mi_sett);
+ 
+ 	mi_help = gtk_menu_item_new_with_label("Help");
+ 	gtk_widget_show(mi_help);
+ 	gtk_menu_item_set_submenu(GTK_MENU_ITEM(mi_help), me_help);
+-	gtk_menu_bar_append(GTK_MENU_BAR(mb_top), mi_help);
+-	gtk_menu_item_right_justify(GTK_MENU_ITEM(mi_help));
++	gtk_menu_shell_append(GTK_MENU_SHELL(mb_top), mi_help);
++	gtk_menu_item_set_right_justified(GTK_MENU_ITEM(mi_help), TRUE);
+ 	/* Done. */
+ 
+ 
+@@ -208,8 +213,8 @@
+ 			 (GtkAttachOptions)(0), 5, 0);
+ 	gtk_widget_show(bu_calc);
+ 
+-	gtk_signal_connect_object(GTK_OBJECT(bu_calc), "clicked",
+-				  GTK_SIGNAL_FUNC(calculate), NULL);
++	g_signal_connect_swapped(G_OBJECT(bu_calc), "clicked",
++				 G_CALLBACK(calculate), NULL);
+ 	/* Done. */
+ 
+ 
+@@ -221,8 +226,8 @@
+ 	gtk_entry_set_visibility(GTK_ENTRY(te_passwd), FALSE);
+ 	gtk_widget_show(te_passwd);
+ 
+-	gtk_signal_connect(GTK_OBJECT(te_passwd), "activate",
+-			   GTK_SIGNAL_FUNC(click), bu_calc);
++	g_signal_connect(G_OBJECT(te_passwd), "activate",
++			 G_CALLBACK(click), bu_calc);
+ 	/* Done. */
+ 
+ 
+@@ -234,8 +239,8 @@
+ 			 (GtkAttachOptions)(0), 5, 0);
+ 	gtk_widget_show(bu_clear);
+ 
+-	gtk_signal_connect(GTK_OBJECT(bu_clear), "clicked",
+-			   GTK_SIGNAL_FUNC(clear), NULL);
++	g_signal_connect(G_OBJECT(bu_clear), "clicked",
++			 G_CALLBACK(clear), NULL);
+ 	/* Done. */
+ 
+ 


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-12-13  8:03 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-12-13  8:03 [gentoo-commits] dev/ulm:master commit in: patchsets/otpcalc/0.97/ Ulrich Müller
  -- strict thread matches above, loose matches on Subject: below --
2015-12-13  8:03 Ulrich Müller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox