* configure.ac: Make the check for funopen fail with just a
authorWerner Koch <wk@gnupg.org>
Wed, 18 Feb 2004 18:05:38 +0000 (18:05 +0000)
committerWerner Koch <wk@gnupg.org>
Wed, 18 Feb 2004 18:05:38 +0000 (18:05 +0000)
warning.

* assuan-handler.c (assuan_get_data_fp): Fail with ENOSYS if we
can't implement this.

ChangeLog
assuan/ChangeLog
assuan/assuan-handler.c
configure.ac

index 30f8749..021a2df 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2004-02-18  Werner Koch  <wk@gnupg.org>
+
+       * configure.ac: Make the check for funopen fail with just a
+       warning.
+
 2004-02-11  Werner Koch  <wk@gnupg.org>
 
        * autogen.sh (check_version): Removed bashism and simplified.
index 8a25927..fc1a18c 100644 (file)
@@ -1,3 +1,8 @@
+2004-02-18  Werner Koch  <wk@gnupg.org>
+
+       * assuan-handler.c (assuan_get_data_fp): Fail with ENOSYS if we
+       can't implement this.
+
 2004-02-13  Werner Koch  <wk@gnupg.org>
 
        * assuan-domain-connect.c: Removed the unneeded alloca.h
index f8b85db..da519d5 100644 (file)
@@ -605,6 +605,7 @@ assuan_get_active_fds (ASSUAN_CONTEXT ctx, int what,
 FILE *
 assuan_get_data_fp (ASSUAN_CONTEXT ctx)
 {
+#if defined (HAVE_FOPENCOOKIE) || defined (HAVE_FUNOPEN)
   if (ctx->outbound.data.fp)
     return ctx->outbound.data.fp;
   
@@ -614,6 +615,10 @@ assuan_get_data_fp (ASSUAN_CONTEXT ctx)
                                   0, _assuan_cookie_write_flush);
   ctx->outbound.data.error = 0;
   return ctx->outbound.data.fp;
+#else
+  errno = ENOSYS;
+  return NULL;
+#endif
 }
 
 
index 1755a30..163fa4a 100644 (file)
@@ -277,23 +277,28 @@ AM_CONDITIONAL(RUN_GPGSM_TESTS,
 # FIXME: Only build if supported.
 AM_CONDITIONAL(BUILD_ASSUAN, test "$GPGSM" != "no")
 
-if test "$GPGSM" != "no"; then
-  AC_CHECK_FUNCS(funopen)
-  if test $ac_cv_func_funopen != yes; then
+
+# The assuan code uses funopen but it will also build without it.  So
+# test for it.  Frankly, this is not required in gpgme, but thats the
+# way we handle it in libassuan.
+AC_CHECK_FUNCS(funopen)
+if test $ac_cv_func_funopen != yes; then
     # No funopen but we can implement that in terms of fopencookie.
     AC_CHECK_FUNCS(fopencookie)
     if test $ac_cv_func_fopencookie = yes; then
         AC_LIBOBJ([funopen])
     else
-        AC_MSG_ERROR([No implementation of fopencookie or funopen available])
+        AC_MSG_WARN([
+***
+*** No implementation of fopencookie or funopen available
+***])
     fi
-  fi
-
-  AC_REPLACE_FUNCS(isascii)
-  AC_REPLACE_FUNCS(putc_unlocked)
-  AC_REPLACE_FUNCS(memrchr)
 fi
 
+AC_REPLACE_FUNCS(isascii)
+AC_REPLACE_FUNCS(putc_unlocked)
+AC_REPLACE_FUNCS(memrchr)
+
 
 AM_CONDITIONAL(BUILD_COMPLUS, test "$component_system" = "COM+")