Source: alsaplayer
Severity: important
Tags: patch
Please enabled hardened build flags through dpkg-buildflags.
Patch attached. (dpkg-buildflags abides "noopt" from DEB_BUILD_OPTIONS)
The hardened build flags exposed missing format strings, for
which I have attached two patches as well.
Cheers,
Moritz
-- System Information:
Debian Release: wheezy/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Kernel: Linux 3.1.0-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff -aur alsaplayer-0.99.80.orig/debian/rules alsaplayer-0.99.80/debian/rules
--- alsaplayer-0.99.80.orig/debian/rules 2012-01-03 22:17:25.000000000 +0100
+++ alsaplayer-0.99.80/debian/rules 2012-01-03 22:18:28.000000000 +0100
@@ -13,7 +13,10 @@
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
-CFLAGS = -Wall -g
+CFLAGS = `dpkg-buildflags --get CFLAGS`
+CFLAGS += -Wall
+LDFLAGS = `dpkg-buildflags --get LDFLAGS`
+CPPFLAGS = `dpkg-buildflags --get CPPFLAGS`
ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
CROSS= --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
@@ -21,16 +24,10 @@
CROSS= --build $(DEB_BUILD_GNU_TYPE)
endif
-ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
- CFLAGS += -O0
-else
- CFLAGS += -O2
-endif
-
configure-stamp: patch
dh_testdir
cd m4 && rm -f audiofile.m4 esd.m4 gtk.m4 libmikmod.m4 libtool.m4 ogg.m4 vorbis.m4
- CFLAGS="$(CFLAGS)" ./configure \
+ CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" ./configure \
$(CROSS) \
--prefix=/usr \
--mandir=\$${prefix}/share/man \
Nur in alsaplayer-0.99.80/debian: rules~.
diff -aur alsaplayer-0.99.80.orig/interface/gtk2/gtk_interface.cpp alsaplayer-0.99.80/interface/gtk2/gtk_interface.cpp
--- alsaplayer-0.99.80.orig/interface/gtk2/gtk_interface.cpp 2007-10-29 20:49:48.000000000 +0100
+++ alsaplayer-0.99.80/interface/gtk2/gtk_interface.cpp 2012-01-03 22:32:26.000000000 +0100
@@ -248,7 +248,7 @@
md = gtk_message_dialog_new(GTK_WINDOW(parent), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, _("Error !"));
- gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(md), message);
+ gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(md), "%s", message);
g_signal_connect(G_OBJECT(md), "delete-event", G_CALLBACK(ap_message_delete), NULL);
g_signal_connect(G_OBJECT(md), "response", G_CALLBACK(ap_message_delete), NULL);
@@ -262,7 +262,7 @@
md = gtk_message_dialog_new(GTK_WINDOW(parent), GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_WARNING, GTK_BUTTONS_CLOSE, _("Warning !"));
- gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(md), message);
+ gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(md), "%s", message);
g_signal_connect(G_OBJECT(md), "delete-event", G_CALLBACK(ap_message_delete), NULL);
g_signal_connect(G_OBJECT(md), "response", G_CALLBACK(ap_message_delete), NULL);
@@ -276,7 +276,7 @@
md = gtk_message_dialog_new(GTK_WINDOW(parent), (GtkDialogFlags) (GTK_DIALOG_MODAL|GTK_DIALOG_DESTROY_WITH_PARENT), GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, _("Excuse me !"));
- gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(md), message);
+ gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(md), "%s", message);
g_signal_connect(G_OBJECT(md), "delete-event", G_CALLBACK(ap_message_delete), NULL);
Nur in alsaplayer-0.99.80/interface/gtk2: gtk_interface.cpp~.
diff -aur alsaplayer-0.99.80.orig/libalsaplayer/message.c alsaplayer-0.99.80/libalsaplayer/message.c
--- alsaplayer-0.99.80.orig/libalsaplayer/message.c 2007-07-08 18:07:05.000000000 +0200
+++ alsaplayer-0.99.80/libalsaplayer/message.c 2012-01-03 22:37:12.000000000 +0100
@@ -381,7 +381,7 @@
pwd = getpwuid(geteuid());
- sprintf(username, pwd == NULL ? "anonymous" : pwd->pw_name);
+ sprintf(username, "%s", pwd == NULL ? "anonymous" : pwd->pw_name);
sprintf(test_path, "alsaplayer_%s_", username);
Nur in alsaplayer-0.99.80/libalsaplayer/: message.c~.