menu-cache/menu-cache-CVE-2017-8933.patch

30 lines
1.4 KiB
Diff

diff -up menu-cache-1.0.1/libmenu-cache/menu-cache.c.than menu-cache-1.0.1/libmenu-cache/menu-cache.c
--- menu-cache-1.0.1/libmenu-cache/menu-cache.c.than 2017-05-16 10:13:56.948205062 +0200
+++ menu-cache-1.0.1/libmenu-cache/menu-cache.c 2017-05-16 10:20:10.018120833 +0200
@@ -1522,8 +1522,13 @@ static void get_socket_name( char* buf,
if(*p)
*p = '\0';
}
+#if GLIB_CHECK_VERSION(2, 28, 0)
+ g_snprintf( buf, len, "%s/menu-cached-%s", g_get_user_runtime_dir(),
+ dpy ? dpy : ":0" );
+#else
g_snprintf( buf, len, "%s/.menu-cached-%s-%s", g_get_tmp_dir(),
dpy ? dpy : ":0", g_get_user_name() );
+#endif
g_free(dpy);
}
diff -up menu-cache-1.0.1/menu-cache-daemon/menu-cached.c.than menu-cache-1.0.1/menu-cache-daemon/menu-cached.c
--- menu-cache-1.0.1/menu-cache-daemon/menu-cached.c.than 2017-05-16 10:20:20.881710708 +0200
+++ menu-cache-1.0.1/menu-cache-daemon/menu-cached.c 2017-05-16 10:24:27.959382969 +0200
@@ -446,6 +446,9 @@ static void get_socket_name( char* buf,
if(*p)
*p = '\0';
}
+ /* NOTE: this socket name is incompatible with versions > 1.0.2,
+ although this function is never used since 0.7.0 but
+ libmenu-cache always requests exact socket name instead */
g_snprintf( buf, len, "%s/.menu-cached-%s-%s", g_get_tmp_dir(),
dpy ? dpy : ":0", g_get_user_name() );
g_free(dpy);