--- netapplet-1.0.8.orig/src/netapplet.c
+++ netapplet-1.0.8/src/netapplet.c
@@ -5,7 +5,7 @@
*
* Licensed under the GNU GPL v2. See COPYING
*/
-
+#define _GNU_SOURCE
#include <config.h>
#include <stdio.h>
@@ -46,13 +46,14 @@
#define WIRELESS_ICON_2 "wireless-tower-2"
#define WIRELESS_ICON_3 "wireless-tower-3"
#define WIRELESS_ICON_4 "wireless-tower-4"
-#define DISCONNECT_ICON "stock_calc-cancel"
+#define DISCONNECT_ICON "stock_calc-cancel" // should be stock_calc-cancel
#define BROKEN_ICON "stock_calc-cancel"
-#define UNKNOWN_ICON "stock_unknown"
+#define UNKNOWN_ICON "stock_unknown" // shoulb be stock_unknown
#define GLADE_APPLET GLADEDIR "/netapplet.glade"
#define YAST2_ARGV { "/opt/kde3/bin/kdesu", "-n", "/sbin/yast2", "lan", NULL }
+#define NET_ADMIN_ARGV { "network-admin", NULL }
typedef struct {
char *interface; /* interface name, e.g. eth0 */
@@ -977,10 +978,18 @@
configure_activate_cb (GtkMenuItem *mi G_GNUC_UNUSED,
gpointer user_data G_GNUC_UNUSED)
{
- char *argv[] = YAST2_ARGV;
GError *err = NULL;
+ char *argv_suse[] = YAST2_ARGV;
+ char *argv_debian[] = NET_ADMIN_ARGV;
+ char **argv;
- if (!g_spawn_async (NULL, argv, NULL, 0, NULL, NULL, NULL, &err)) {
+ if (strcmp (get_platform (), DEBIAN_PLATFORM_NAME) == 0) {
+ argv=argv_debian;
+ } else {
+ argv=argv_suse;
+ }
+
+ if (!g_spawn_async (NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, &err)) {
GtkWidget *dialog;
dialog = gtk_message_dialog_new_with_markup (
@@ -1424,11 +1433,14 @@
for (iter = &args[2]; *iter != NULL; iter += 3) {
Accesspoint *ap;
+ printf("Got %s %s %s\n",*iter, *(iter+1), *(iter+2));
+
ap = g_new (Accesspoint, 1);
ap->essid = g_strdup (*iter);
ap->strength = g_ascii_strtod (*(iter + 1), NULL);
ap->is_encrypted = strtol (*(iter + 2), NULL, 10);
+
if (netapplet->active_ap != NULL &&
strcmp (netapplet->active_ap->essid, ap->essid) == 0)
new_active = ap;