aboutsummaryrefslogtreecommitdiff
path: root/security/pinentry
diff options
context:
space:
mode:
authorWill Andrews <will@FreeBSD.org>2003-01-30 22:37:07 +0000
committerWill Andrews <will@FreeBSD.org>2003-01-30 22:37:07 +0000
commita79f0d9fb55c1325fd33335c16b9bda6532f0d66 (patch)
tree490040312901ec900d8e928255264fcc03666470 /security/pinentry
parente2c8af71c963acffb546dd0940d132e1fbb80a96 (diff)
downloadports-a79f0d9fb55c1325fd33335c16b9bda6532f0d66.tar.gz
ports-a79f0d9fb55c1325fd33335c16b9bda6532f0d66.zip
Notes
Diffstat (limited to 'security/pinentry')
-rw-r--r--security/pinentry/Makefile56
-rw-r--r--security/pinentry/distinfo3
-rw-r--r--security/pinentry/files/patch-Makefile.am11
-rw-r--r--security/pinentry/files/patch-assuan::assuan-handler.c27
-rw-r--r--security/pinentry/files/patch-assuan::assuan-socket-connect.c10
-rw-r--r--security/pinentry/files/patch-assuan::assuan-socket-server.c10
-rw-r--r--security/pinentry/files/patch-assuan::mkerrors10
-rw-r--r--security/pinentry/files/patch-common::maperrors.c10
-rw-r--r--security/pinentry/files/patch-configure.ac57
-rw-r--r--security/pinentry/files/patch-curses::Makefile.am12
-rw-r--r--security/pinentry/files/patch-gtk::Makefile.am11
-rw-r--r--security/pinentry/files/patch-pinentry::pinentry.c13
-rw-r--r--security/pinentry/files/patch-qt::Makefile.am13
-rw-r--r--security/pinentry/files/patch-qt::main.cpp15
-rw-r--r--security/pinentry/files/patch-qt::pinentrycontroller.cpp11
-rw-r--r--security/pinentry/files/patch-secmem::secmem.c10
-rw-r--r--security/pinentry/pkg-comment1
-rw-r--r--security/pinentry/pkg-descr6
-rw-r--r--security/pinentry/pkg-plist6
19 files changed, 292 insertions, 0 deletions
diff --git a/security/pinentry/Makefile b/security/pinentry/Makefile
new file mode 100644
index 000000000000..4bba97a95676
--- /dev/null
+++ b/security/pinentry/Makefile
@@ -0,0 +1,56 @@
+# New ports collection makefile for: pinentry
+# Date created: 29 Jan 2003
+# Whom: michaelnottebrock@gmx.net
+#
+# $FreeBSD$
+#
+
+PORTNAME= pinentry
+PORTVERSION= 0.6.7
+CATEGORIES= security
+MASTER_SITES= ftp://ftp.gnupg.org/gcrypt/pinentry/ \
+ http://tigress.com/lofi/
+DISTFILES= ${PORTNAME}-${PORTVERSION}.tar.gz \
+ common.tar.gz \
+ jnlib.tar.gz
+
+MAINTAINER= michaelnottebrock@gmx.net
+
+BUILD_DEPENDS= autoconf:${PORTSDIR}/devel/autoconf \
+ automake:${PORTSDIR}/devel/automake
+LIB_DEPENDS= gcrypt.6:${PORTSDIR}/security/libgcrypt \
+ gnugetopt.1:${PORTSDIR}/devel/libgnugetopt \
+ ksba.7:${PORTSDIR}/security/libksba
+
+WANT_GTK= yes
+USE_LIBTOOL= yes
+USE_GMAKE= yes
+INSTALLS_SHLIB= yes
+USE_REINPLACE= yes
+CFLAGS+= -I${LOCALBASE}/include -L${LOCALBASE}/lib
+LDFLAGS+= -L${LOCALBASE}/lib
+CPPFLAGS+= -I${LOCALBASE}/include
+CONFIGURE_ENV+= CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CPPFLAGS="${CPPFLAGS}"
+CONFIGURE_ARGS+=--with-included-gettext=no
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_QT)
+#USE_QT_VER= 3
+BROKEN= The QT pinentry-helper is currently non-functional
+.endif
+
+.if defined(HAVE_GTK)
+USE_GTK= yes
+.endif
+
+post-extract:
+ ${MV} ${WRKDIR}/common ${WRKSRC}
+ ${MV} ${WRKDIR}/jnlib ${WRKSRC}
+
+pre-configure:
+ ${REINPLACE_CMD} -e "s@-lpthread@${PTHREAD_LIBS}@g" \
+ ${WRKSRC}/acinclude.m4 ${WRKSRC}/aclocal.m4 ${WRKSRC}/configure
+ cd ${WRKSRC}; ./autogen.sh
+
+.include <bsd.port.post.mk>
diff --git a/security/pinentry/distinfo b/security/pinentry/distinfo
new file mode 100644
index 000000000000..7e4289b719a7
--- /dev/null
+++ b/security/pinentry/distinfo
@@ -0,0 +1,3 @@
+MD5 (pinentry-0.6.7.tar.gz) = d1fd852644571ab7edf6c01f51078210
+MD5 (common.tar.gz) = 4f5171946f83dfe64761344d7e86af05
+MD5 (jnlib.tar.gz) = 9e8d48da4e6f8db94da64d444f4b3687
diff --git a/security/pinentry/files/patch-Makefile.am b/security/pinentry/files/patch-Makefile.am
new file mode 100644
index 000000000000..1d5529d8cea6
--- /dev/null
+++ b/security/pinentry/files/patch-Makefile.am
@@ -0,0 +1,11 @@
+--- Makefile.am.orig Thu Jan 30 07:49:00 2003
++++ Makefile.am Thu Jan 30 07:50:41 2003
+@@ -39,7 +39,7 @@
+ pinentry_qt =
+ endif
+
+-SUBDIRS = assuan secmem pinentry ${pinentry_curses} \
++SUBDIRS = jnlib assuan common secmem pinentry ${pinentry_curses} \
+ ${pinentry_gtk} ${pinentry_qt} doc
+
+ signed-dist: $(distdir).tar.gz.sig
diff --git a/security/pinentry/files/patch-assuan::assuan-handler.c b/security/pinentry/files/patch-assuan::assuan-handler.c
new file mode 100644
index 000000000000..3c73877a6b13
--- /dev/null
+++ b/security/pinentry/files/patch-assuan::assuan-handler.c
@@ -0,0 +1,27 @@
+--- assuan/assuan-handler.c.orig Thu Jan 30 07:58:09 2003
++++ assuan/assuan-handler.c Thu Jan 30 07:58:27 2003
+@@ -29,6 +29,24 @@
+ #define digitp(a) ((a) >= '0' && (a) <= '9')
+
+
++#if !HAVE_FOPENCOOKIE
++/* Provide structure for our dummy replacement function. Usually this
++ is defined in ../common/util.h but assuan should be self
++ contained. */
++/* Fixme: Remove fopencoookie :-(( */
++typedef struct
++{
++ ssize_t (*read)(void*,char*,size_t);
++ ssize_t (*write)(void*,const char*,size_t);
++ int (*seek)(void*,off_t*,int);
++ int (*close)(void*);
++} _IO_cookie_io_functions_t;
++typedef _IO_cookie_io_functions_t cookie_io_functions_t;
++FILE *fopencookie (void *cookie, const char *opentype,
++ cookie_io_functions_t funclist);
++#endif /*!HAVE_FOPENCOOKIE*/
++
++
+ static int
+ dummy_handler (ASSUAN_CONTEXT ctx, char *line)
+ {
diff --git a/security/pinentry/files/patch-assuan::assuan-socket-connect.c b/security/pinentry/files/patch-assuan::assuan-socket-connect.c
new file mode 100644
index 000000000000..74acc38ea626
--- /dev/null
+++ b/security/pinentry/files/patch-assuan::assuan-socket-connect.c
@@ -0,0 +1,10 @@
+--- assuan/assuan-socket-connect.c.orig Wed Jan 29 15:30:12 2003
++++ assuan/assuan-socket-connect.c Wed Jan 29 15:30:28 2003
+@@ -23,6 +23,7 @@
+ #include <stddef.h>
+ #include <stdio.h>
+ #include <errno.h>
++#include <sys/types.h>
+ #include <sys/socket.h>
+ #include <sys/un.h>
+ #include <unistd.h>
diff --git a/security/pinentry/files/patch-assuan::assuan-socket-server.c b/security/pinentry/files/patch-assuan::assuan-socket-server.c
new file mode 100644
index 000000000000..af8a39751c34
--- /dev/null
+++ b/security/pinentry/files/patch-assuan::assuan-socket-server.c
@@ -0,0 +1,10 @@
+--- assuan/assuan-socket-server.c.orig Wed Jan 29 15:27:13 2003
++++ assuan/assuan-socket-server.c Wed Jan 29 15:27:38 2003
+@@ -22,6 +22,7 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <errno.h>
++#include <sys/types.h>
+ #include <sys/socket.h>
+ #include <sys/un.h>
+ #include <unistd.h>
diff --git a/security/pinentry/files/patch-assuan::mkerrors b/security/pinentry/files/patch-assuan::mkerrors
new file mode 100644
index 000000000000..f5d45193a0d6
--- /dev/null
+++ b/security/pinentry/files/patch-assuan::mkerrors
@@ -0,0 +1,10 @@
+--- assuan/mkerrors.orig Thu Jan 30 07:49:26 2003
++++ assuan/mkerrors Thu Jan 30 07:50:41 2003
+@@ -68,4 +68,5 @@
+ return s;
+ }
+
+-EOF
+\ No newline at end of file
++EOF
++
diff --git a/security/pinentry/files/patch-common::maperrors.c b/security/pinentry/files/patch-common::maperrors.c
new file mode 100644
index 000000000000..3e49c27521da
--- /dev/null
+++ b/security/pinentry/files/patch-common::maperrors.c
@@ -0,0 +1,10 @@
+--- common/maperror.c.orig Thu Jan 30 08:00:00 2003
++++ common/maperror.c Thu Jan 30 08:00:15 2003
+@@ -210,7 +210,6 @@
+ case GNUPG_Certificate_Expired:
+ rc = ASSUAN_Bad_Certificate;
+ break;
+- case GNUPG_Bad_Certificate_Chain: rc = ASSUAN_Bad_Certificate_Chain; break;
+ case GNUPG_Missing_Certificate: rc = ASSUAN_Missing_Certificate; break;
+ case GNUPG_No_Data: rc = ASSUAN_No_Data_Available; break;
+ case GNUPG_Bad_Signature: rc = ASSUAN_Bad_Signature; break;
diff --git a/security/pinentry/files/patch-configure.ac b/security/pinentry/files/patch-configure.ac
new file mode 100644
index 000000000000..ad535e7cacf3
--- /dev/null
+++ b/security/pinentry/files/patch-configure.ac
@@ -0,0 +1,57 @@
+--- configure.ac.orig Thu Jan 30 07:49:12 2003
++++ configure.ac Thu Jan 30 07:50:41 2003
+@@ -59,14 +59,6 @@
+ AC_CHECK_FUNCS(seteuid stpcpy)
+ GNUPG_CHECK_MLOCK
+
+-dnl Checks for libassuan.
+-AC_CHECK_FUNCS(fopencookie,,[
+- AC_MSG_ERROR([[
+-***
+-*** fopencookie(3) is needed to build this package.
+-*** We will provide an replacement in a later release.
+-***]])])
+-
+ dnl Checks for libsecmem.
+ GNUPG_CHECK_TYPEDEF(byte, HAVE_BYTE_TYPEDEF)
+ GNUPG_CHECK_TYPEDEF(ulong, HAVE_ULONG_TYPEDEF)
+@@ -217,9 +209,39 @@
+ dnl dnl End of checks for Qt pinentry.
+ dnl fi
+
++# Checks for typedefs, structures, and compiler characteristics.
++AC_C_CONST
++AC_C_INLINE
++AC_TYPE_SIZE_T
++AC_TYPE_SIGNAL
++AC_DECL_SYS_SIGLIST
++
++GNUPG_CHECK_TYPEDEF(byte, HAVE_BYTE_TYPEDEF)
++GNUPG_CHECK_TYPEDEF(ushort, HAVE_USHORT_TYPEDEF)
++GNUPG_CHECK_TYPEDEF(ulong, HAVE_ULONG_TYPEDEF)
++
++GNUPG_SYS_SO_PEERCRED
++
++# Checks for library functions.
++
++# These are needed by libjnlib - fixme: we should have a macros for them
++AC_CHECK_FUNCS(memicmp stpcpy strlwr strtoul memmove stricmp strtol)
++AC_CHECK_FUNCS(getrusage setrlimit stat setlocale)
++AC_CHECK_FUNCS(flockfile funlockfile)
++
++AC_CHECK_FUNCS(sigaction sigprocmask)
++
++AC_REPLACE_FUNCS(vasprintf)
++AC_REPLACE_FUNCS(fopencookie)
++# FIXME: Print a warning when fopencookie is not available.
++AC_REPLACE_FUNCS(mkdtemp)
++AC_REPLACE_FUNCS(fseeko ftello)
++AC_REPLACE_FUNCS(isascii)
+
+ AC_CONFIG_FILES([
++jnlib/Makefile
+ assuan/Makefile
++common/Makefile
+ secmem/Makefile
+ pinentry/Makefile
+ curses/Makefile
diff --git a/security/pinentry/files/patch-curses::Makefile.am b/security/pinentry/files/patch-curses::Makefile.am
new file mode 100644
index 000000000000..42222522344b
--- /dev/null
+++ b/security/pinentry/files/patch-curses::Makefile.am
@@ -0,0 +1,12 @@
+--- curses/Makefile.am.orig Thu Jan 30 07:49:42 2003
++++ curses/Makefile.am Thu Jan 30 07:50:41 2003
+@@ -23,7 +23,7 @@
+
+ AM_CPPFLAGS = $(NCURSES_INCLUDE) -I$(top_srcdir)/pinentry
+ LDADD = ../pinentry/libpinentry.a ../pinentry/libpinentry-curses.a \
+- ../assuan/libassuan.a ../secmem/libsecmem.a \
+- $(LIBCAP) $(LIBCURSES) $(LIBICONV)
++ ../assuan/libassuan.a ../secmem/libsecmem.a ../common/libcommon.a \
++ $(LIBCAP) $(LIBCURSES) $(LIBICONV) -lgnugetopt
+
+ pinentry_curses_SOURCES = pinentry-curses.c
diff --git a/security/pinentry/files/patch-gtk::Makefile.am b/security/pinentry/files/patch-gtk::Makefile.am
new file mode 100644
index 000000000000..8d7b22ebbcf7
--- /dev/null
+++ b/security/pinentry/files/patch-gtk::Makefile.am
@@ -0,0 +1,11 @@
+--- gtk/Makefile.am.orig Thu Jan 30 07:49:55 2003
++++ gtk/Makefile.am Thu Jan 30 07:50:41 2003
+@@ -32,7 +32,7 @@
+ AM_CPPFLAGS = $(GLIB_CFLAGS) $(GTK_CFLAGS) $(ncurses_include) \
+ -I$(top_srcdir)/secmem -I$(top_srcdir)/pinentry
+ LDADD = ../pinentry/libpinentry.a ../assuan/libassuan.a ../secmem/libsecmem.a \
+- $(LIBCAP) $(GTK_LIBS) $(libcurses)
++ ../common/libcommon.a $(LIBCAP) $(GTK_LIBS) $(libcurses) -lgnugetopt
+
+ pinentry_gtk_SOURCES = pinentry-gtk.c \
+ gtksecentry.c gtksecentry.h
diff --git a/security/pinentry/files/patch-pinentry::pinentry.c b/security/pinentry/files/patch-pinentry::pinentry.c
new file mode 100644
index 000000000000..7eb174ed98c7
--- /dev/null
+++ b/security/pinentry/files/patch-pinentry::pinentry.c
@@ -0,0 +1,13 @@
+--- pinentry/pinentry.c.orig Thu Jan 30 08:36:45 2003
++++ pinentry/pinentry.c Thu Jan 30 08:37:10 2003
+@@ -22,6 +22,10 @@
+ #include <config.h>
+ #endif
+
++#ifdef _GETOPT_H
++#undef _GETOPT_H
++#endif
++
+ #include <errno.h>
+ #include <stdlib.h>
+ #include <string.h>
diff --git a/security/pinentry/files/patch-qt::Makefile.am b/security/pinentry/files/patch-qt::Makefile.am
new file mode 100644
index 000000000000..fd0629c05073
--- /dev/null
+++ b/security/pinentry/files/patch-qt::Makefile.am
@@ -0,0 +1,13 @@
+--- qt/Makefile.am.orig Thu Jan 30 07:50:05 2003
++++ qt/Makefile.am Thu Jan 30 07:50:41 2003
+@@ -33,8 +33,8 @@
+ AM_CPPFLAGS = -I$(top_srcdir)/assuan -I$(top_srcdir)/secmem $(QT_INCLUDES) $(ncurses_include)
+ AM_CXXFLAGS = $(QT_CXXFLAGS)
+ pinentry_qt_LDADD = $(top_builddir)/assuan/libassuan.a \
+- $(top_builddir)/secmem/libsecmem.a $(LIBCAP) \
+- $(QT_LIBS) $(libcurses)
++ $(top_builddir)/secmem/libsecmem.a $(top_builddir)/common/libcommon.a \
++ $(LIBCAP) $(QT_LIBS) $(libcurses) -lgnugetopt
+ pinentry_qt_LDFLAGS = $(QT_LDFLAGS)
+
+ pinentry_qt_SOURCES = pinentrydialog.h pinentrydialog.cpp \
diff --git a/security/pinentry/files/patch-qt::main.cpp b/security/pinentry/files/patch-qt::main.cpp
new file mode 100644
index 000000000000..be62eb2ae09f
--- /dev/null
+++ b/security/pinentry/files/patch-qt::main.cpp
@@ -0,0 +1,15 @@
+--- qt/main.cpp.orig Thu Jan 30 09:25:31 2003
++++ qt/main.cpp Thu Jan 30 09:26:10 2003
+@@ -157,6 +157,12 @@
+ #ifdef FALLBACK_CURSES
+ if( pinentry_have_display (argc, argv) ) {
+ #endif
++ // Work around non-standard handling of DISPLAY
++ for( int i = 1; i < argc; ++i ) {
++ if( !strcmp( "--display", argv[i] ) ) {
++ argv[i] = "-display";
++ }
++ }
+ return qt_main( argc, argv );
+ #ifdef FALLBACK_CURSES
+ } else {
diff --git a/security/pinentry/files/patch-qt::pinentrycontroller.cpp b/security/pinentry/files/patch-qt::pinentrycontroller.cpp
new file mode 100644
index 000000000000..db9614385560
--- /dev/null
+++ b/security/pinentry/files/patch-qt::pinentrycontroller.cpp
@@ -0,0 +1,11 @@
+--- qt/pinentrycontroller.cpp.orig Thu Jan 30 09:25:51 2003
++++ qt/pinentrycontroller.cpp Thu Jan 30 09:26:15 2003
+@@ -56,6 +56,8 @@
+
+ assuan_set_malloc_hooks( secmem_malloc, secmem_realloc, secmem_free );
+ int rc = assuan_init_pipe_server( &_ctx, fds );
++ assuan_set_log_stream (_ctx, stderr);
++
+ if( rc ) {
+ qDebug(assuan_strerror( static_cast<AssuanError>(rc) ));
+ exit(-1);
diff --git a/security/pinentry/files/patch-secmem::secmem.c b/security/pinentry/files/patch-secmem::secmem.c
new file mode 100644
index 000000000000..c6736cc695aa
--- /dev/null
+++ b/security/pinentry/files/patch-secmem::secmem.c
@@ -0,0 +1,10 @@
+--- secmem/secmem.c.orig Thu Jan 30 07:50:34 2003
++++ secmem/secmem.c Thu Jan 30 07:50:41 2003
+@@ -42,6 +42,7 @@
+ #else /* ORIGINAL_GPG_VERSION */
+
+ #include <sys/types.h>
++#include "../jnlib/types.h"
+
+ typedef union {
+ int a;
diff --git a/security/pinentry/pkg-comment b/security/pinentry/pkg-comment
new file mode 100644
index 000000000000..2fe3f13455b1
--- /dev/null
+++ b/security/pinentry/pkg-comment
@@ -0,0 +1 @@
+A collection of simple PIN or passphrase entry dialogs
diff --git a/security/pinentry/pkg-descr b/security/pinentry/pkg-descr
new file mode 100644
index 000000000000..64fb071e8165
--- /dev/null
+++ b/security/pinentry/pkg-descr
@@ -0,0 +1,6 @@
+This is a collection of simple PIN or passphrase entry dialogs which
+utilize the Assuan protocol as described by the aegypten project.
+
+WWW: http://www.gnupg.org/aegypten
+
+michaelnottebrock@gmx.net
diff --git a/security/pinentry/pkg-plist b/security/pinentry/pkg-plist
new file mode 100644
index 000000000000..d698934d4a72
--- /dev/null
+++ b/security/pinentry/pkg-plist
@@ -0,0 +1,6 @@
+bin/pinentry-curses
+bin/pinentry-gtk
+%%WITH_QT%%bin/pinentry-qt
+@unexec install-info --delete %D/info/pinentry.info %D/info/dir
+info/pinentry.info
+@exec install-info %D/info/pinentry.info %D/info/dir