diff options
author | Rong-En Fan <rafan@FreeBSD.org> | 2008-09-23 14:19:30 +0000 |
---|---|---|
committer | Rong-En Fan <rafan@FreeBSD.org> | 2008-09-23 14:19:30 +0000 |
commit | 1ea7524a9eaf36169320ed3a8112902234bd4f32 (patch) | |
tree | 667fd1bd5e05fa77eeee156a0be872e388caa905 /security | |
parent | 8c35dc866367656a66e30396d2bd6743fc855863 (diff) | |
download | ports-1ea7524a9eaf36169320ed3a8112902234bd4f32.tar.gz ports-1ea7524a9eaf36169320ed3a8112902234bd4f32.zip |
Notes
Diffstat (limited to 'security')
-rw-r--r-- | security/pinentry/Makefile | 8 | ||||
-rw-r--r-- | security/pinentry/distinfo | 6 | ||||
-rw-r--r-- | security/pinentry/files/patch-curses-utf | 40 | ||||
-rw-r--r-- | security/pinentry/files/patch-glib.2.16 | 58 | ||||
-rw-r--r-- | security/pinentry/files/patch-gtk2-gmem | 145 | ||||
-rw-r--r-- | security/pinentry/files/patch-more_sec_mem | 11 |
6 files changed, 202 insertions, 66 deletions
diff --git a/security/pinentry/Makefile b/security/pinentry/Makefile index ddebce8dcb62..01d1ca2ab70e 100644 --- a/security/pinentry/Makefile +++ b/security/pinentry/Makefile @@ -6,8 +6,7 @@ # PORTNAME= pinentry -PORTVERSION= 0.7.3 -PORTREVISION= 2 +PORTVERSION= 0.7.5 CATEGORIES= security MASTER_SITES= ${MASTER_SITE_GNUPG} MASTER_SITE_SUBDIR= pinentry @@ -37,7 +36,6 @@ PLIST_SUB+= WITH_QT="" pre-configure: @${REINPLACE_CMD} -e "s@-lpthread@${PTHREAD_LIBS}@g" \ ${WRKSRC}/acinclude.m4 ${WRKSRC}/configure - .else CONFIGURE_ARGS+=--disable-pinentry-qt PLIST_SUB+= WITH_QT="@comment " @@ -46,7 +44,7 @@ PLIST_SUB+= WITH_QT="@comment " .if defined(PINENTRY_GTK) USE_GNOME+= gtk12 PLIST_SUB+= WITH_GTK="" -CONFIGURE_ENV+= CFLAGS=-I${LOCALBASE}/include +CONFIGURE_ENV+= CFLAGS=-I${LOCALBASE}/include LDFLAGS=-L${LOCALBASE}/lib .else CONFIGURE_ARGS+=--disable-pinentry-gtk PLIST_SUB+= WITH_GTK="@comment " @@ -55,7 +53,7 @@ PLIST_SUB+= WITH_GTK="@comment " .if defined(PINENTRY_GTK2) USE_GNOME+= gtk20 PLIST_SUB+= WITH_GTK2="" -CONFIGURE_ENV+= CFLAGS=-I${LOCALBASE}/include +CONFIGURE_ENV+= CFLAGS=-I${LOCALBASE}/include LDFLAGS=-L${LOCALBASE}/lib .else CONFIGURE_ARGS+=--disable-pinentry-gtk2 PLIST_SUB+= WITH_GTK2="@comment " diff --git a/security/pinentry/distinfo b/security/pinentry/distinfo index 58f2d2a1b422..ebb700e2080b 100644 --- a/security/pinentry/distinfo +++ b/security/pinentry/distinfo @@ -1,3 +1,3 @@ -MD5 (pinentry-0.7.3.tar.gz) = 59282278405a8264b39ea28678c78cf4 -SHA256 (pinentry-0.7.3.tar.gz) = df1d2c47d501031b4c995cee3e464e62578b8959559121a207a8046e2cd9a5bf -SIZE (pinentry-0.7.3.tar.gz) = 417000 +MD5 (pinentry-0.7.5.tar.gz) = ca492afbbb59cd19f1c875533f18b269 +SHA256 (pinentry-0.7.5.tar.gz) = cb269ac058793b2df343a12a65e3402abc4b68503e105b12e4ca903d8d8e3172 +SIZE (pinentry-0.7.5.tar.gz) = 422801 diff --git a/security/pinentry/files/patch-curses-utf b/security/pinentry/files/patch-curses-utf new file mode 100644 index 000000000000..9c11655966af --- /dev/null +++ b/security/pinentry/files/patch-curses-utf @@ -0,0 +1,40 @@ +--- m4/curses.m4.orig 2005-09-08 21:25:01.000000000 +0600 ++++ m4/curses.m4 2008-02-17 22:23:32.000000000 +0500 +@@ -28,7 +28,7 @@ + AC_ARG_ENABLE(ncurses, [ --disable-ncurses don't prefer -lncurses over -lcurses], + , enable_ncurses=yes) + if test "$enable_ncurses" = yes; then +- AC_CHECK_LIB(ncurses, initscr, LIBNCURSES="-lncurses") ++ AC_CHECK_LIB(ncurses, initscr, LIBNCURSES="-lncursesw") + if test "$LIBNCURSES"; then + # Use ncurses header files instead of the ordinary ones, if possible; + # is there a better way of doing this, that avoids looking in specific +--- pinentry/pinentry-curses.c.orig 2007-06-15 17:36:39.000000000 +0600 ++++ pinentry/pinentry-curses.c 2008-02-17 22:28:40.000000000 +0500 +@@ -587,6 +587,13 @@ + SCREEN *screen = 0; + int done = 0; + char *pin_utf8; ++ char *old_ctype = NULL; ++ ++ if (pinentry->lc_ctype) ++ { ++ old_ctype = strdup (setlocale (LC_CTYPE, NULL)); ++ setlocale (LC_CTYPE, pinentry->lc_ctype); ++ } + + /* Open the desired terminal if necessary. */ + if (tty_name) +@@ -739,6 +746,12 @@ + if (screen) + delscreen (screen); + ++ if (old_ctype) ++ { ++ setlocale (LC_CTYPE, old_ctype); ++ free(old_ctype); ++ } ++ + if (ttyfi) + fclose (ttyfi); + if (ttyfo) diff --git a/security/pinentry/files/patch-glib.2.16 b/security/pinentry/files/patch-glib.2.16 index ac7b6489b59e..e69de29bb2d1 100644 --- a/security/pinentry/files/patch-glib.2.16 +++ b/security/pinentry/files/patch-glib.2.16 @@ -1,58 +0,0 @@ ---- gtk+-2/gtksecentry.c- 2008-03-26 17:28:13.000000000 +0200 -+++ gtk+-2/gtksecentry.c 2008-03-26 17:32:51.000000000 +0200 -@@ -270,7 +270,7 @@ gboolean g_use_secure_mem = FALSE; - - - gpointer --g_malloc(gulong size) -+g_malloc(gsize size) - { - gpointer p; - -@@ -282,13 +282,13 @@ g_malloc(gulong size) - else - p = (gpointer) malloc(size); - if (!p) -- g_error("could not allocate %ld bytes", size); -+ g_error("could not allocate %zd bytes", size); - - return p; - } - - gpointer --g_malloc0(gulong size) -+g_malloc0(gsize size) - { - gpointer p; - -@@ -302,13 +302,13 @@ g_malloc0(gulong size) - } else - p = (gpointer) calloc(size, 1); - if (!p) -- g_error("could not allocate %ld bytes", size); -+ g_error("could not allocate %zd bytes", size); - - return p; - } - - gpointer --g_realloc(gpointer mem, gulong size) -+g_realloc(gpointer mem, gsize size) - { - gpointer p; - -@@ -3210,11 +3210,11 @@ static gint - get_cursor_time(GtkSecureEntry * entry) - { - GtkSettings *settings = gtk_widget_get_settings(GTK_WIDGET(entry)); -- gint time; -+ gint _time; - -- g_object_get(settings, "gtk-cursor-blink-time", &time, NULL); -+ g_object_get(settings, "gtk-cursor-blink-time", &_time, NULL); - -- return time; -+ return _time; - } - - static void diff --git a/security/pinentry/files/patch-gtk2-gmem b/security/pinentry/files/patch-gtk2-gmem new file mode 100644 index 000000000000..fb640e6ad836 --- /dev/null +++ b/security/pinentry/files/patch-gtk2-gmem @@ -0,0 +1,145 @@ +--- gtk+-2/gtksecentry.c.orig 2007-11-19 16:20:50.000000000 +0500 ++++ gtk+-2/gtksecentry.c 2008-04-26 22:52:13.000000000 +0600 +@@ -256,7 +256,7 @@ + + static GtkWidgetClass *parent_class = NULL; + +-gboolean g_use_secure_mem = FALSE; ++extern gboolean g_use_secure_mem; + + # define g_sec_new(type, count) \ + ((type *) g_sec_malloc ((unsigned) sizeof (type) * (count))) +@@ -269,85 +269,6 @@ + } while(0) + + +-gpointer +-g_malloc(gulong size) +-{ +- gpointer p; +- +- if (size == 0) +- return NULL; +- +- if (g_use_secure_mem) +- p = (gpointer) secmem_malloc(size); +- else +- p = (gpointer) malloc(size); +- if (!p) +- g_error("could not allocate %ld bytes", size); +- +- return p; +-} +- +-gpointer +-g_malloc0(gulong size) +-{ +- gpointer p; +- +- if (size == 0) +- return NULL; +- +- if (g_use_secure_mem) { +- p = (gpointer) secmem_malloc(size); +- if (p) +- memset(p, 0, size); +- } else +- p = (gpointer) calloc(size, 1); +- if (!p) +- g_error("could not allocate %ld bytes", size); +- +- return p; +-} +- +-gpointer +-g_realloc(gpointer mem, gulong size) +-{ +- gpointer p; +- +- if (size == 0) { +- g_free(mem); +- +- return NULL; +- } +- +- if (!mem) { +- if (g_use_secure_mem) +- p = (gpointer) secmem_malloc(size); +- else +- p = (gpointer) malloc(size); +- } else { +- if (g_use_secure_mem) { +- g_assert(m_is_secure(mem)); +- p = (gpointer) secmem_realloc(mem, size); +- } else +- p = (gpointer) realloc(mem, size); +- } +- +- if (!p) +- g_error("could not reallocate %lu bytes", (gulong) size); +- +- return p; +-} +- +-void +-g_free(gpointer mem) +-{ +- if (mem) { +- if (m_is_secure(mem)) +- secmem_free(mem); +- else +- free(mem); +- } +-} +- + GType + gtk_secure_entry_get_type(void) + { +--- gtk+-2/pinentry-gtk-2.c.orig 2007-11-19 16:44:07.000000000 +0500 ++++ gtk+-2/pinentry-gtk-2.c 2008-04-26 22:52:13.000000000 +0600 +@@ -39,6 +39,7 @@ + + #include "gtksecentry.h" + #include "pinentry.h" ++#include "memory.h" + + #ifdef FALLBACK_CURSES + #include "pinentry-curses.h" +@@ -469,12 +470,36 @@ + + pinentry_cmd_handler_t pinentry_cmd_handler = gtk_cmd_handler; + ++gboolean g_use_secure_mem = FALSE; ++ ++static gpointer ++_malloc(gsize size) { ++ return g_use_secure_mem ? secmem_malloc(size) : malloc(size); ++} ++ ++static gpointer ++_realloc(gpointer p, gsize size) { ++ return m_is_secure(p) ? secmem_realloc(p, size) : realloc(p, size); ++} ++ ++static void ++_free(gpointer p) { ++ m_is_secure(p) ? secmem_free(p) : free(p); ++} + + int + main (int argc, char *argv[]) + { + pinentry_init (PGMNAME); +- ++ ++ GMemVTable mem_vtable = { ++ _malloc, ++ _realloc, ++ _free ++ }; ++ ++ g_mem_set_vtable (&mem_vtable); ++ + #ifdef FALLBACK_CURSES + if (pinentry_have_display (argc, argv)) + gtk_init (&argc, &argv); diff --git a/security/pinentry/files/patch-more_sec_mem b/security/pinentry/files/patch-more_sec_mem new file mode 100644 index 000000000000..81fe8bebea74 --- /dev/null +++ b/security/pinentry/files/patch-more_sec_mem @@ -0,0 +1,11 @@ +--- secmem/secmem.c.orig 2007-07-03 05:49:48.000000000 +0600 ++++ secmem/secmem.c 2008-02-17 22:19:50.000000000 +0500 +@@ -85,7 +85,7 @@ + # define MAP_ANONYMOUS MAP_ANON + #endif + +-#define DEFAULT_POOLSIZE 16384 ++#define DEFAULT_POOLSIZE 16384*4 + + typedef struct memblock_struct MEMBLOCK; + struct memblock_struct { |