]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
changes to configure to support older c-client than the
authorMatt O'Gorman <mogorman@digium.com>
Thu, 17 Aug 2006 22:39:48 +0000 (22:39 +0000)
committerMatt O'Gorman <mogorman@digium.com>
Thu, 17 Aug 2006 22:39:48 +0000 (22:39 +0000)
2004 version.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40335 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_voicemail.c
configure.ac
doc/imapstorage.txt

index e3c67f7431e9217ca092a2d5fff92fe62cdb8878..9952d40944d00278b3d497e5c681a9c249feb893 100644 (file)
@@ -6470,10 +6470,13 @@ out:
        /* expunge message - use UID Expunge if supported on IMAP server*/
        ast_log(LOG_DEBUG, "*** Checking if we can expunge, deleted set to %d, expungeonhangup set to %d\n",deleted,expungeonhangup);
        if (vmu && deleted == 1 && expungeonhangup == 1)  {
+#ifdef HAVE_IMAP_TK2006
                if (LEVELUIDPLUS (vms.mailstream)) {
                        ast_log(LOG_DEBUG, "*** About to expunge messages using UID\n");
                        mail_expunge_full(vms.mailstream,NIL,EX_UID);
-               } else {
+               } else 
+#endif
+               {
                        ast_log(LOG_DEBUG, "*** About to expunge messages\n");
                        mail_expunge(vms.mailstream);
                }
index 83cf0242ae92995085d75580aa6c78c45bc058c2..d4559cdc4f11cdc152a493b85e6cf94f76a3579f 100644 (file)
@@ -348,8 +348,7 @@ if test "${USE_IMAP_TK}" != "no"; then
    LIBS="${LIBS} ${IMAP_TK_DIR}/c-client/c-client.a "`echo ${imap_ldflags}`
    AC_LINK_IFELSE(
        AC_LANG_PROGRAM(
-               [#include "c-client.h"],
-               [
+               [#include "c-client.h"
                void mm_searched (MAILSTREAM *stream,unsigned long number)
                {
                }
@@ -394,16 +393,71 @@ if test "${USE_IMAP_TK}" != "no"; then
                }
                void mm_fatal (char *string)
                {
-               }
-               int main()
-               {
+               }],
+               [
                MAILSTREAM *foo = mail_open(NULL, "", 0);
-               }
                ]
        ),
        [ac_cv_imap_tk="yes"],
        [ac_cv_imap_tk="no"]
    )
+   if test "${ac_cv_imap_tk}" = "yes"; then
+   AC_LINK_IFELSE(
+      AC_LANG_PROGRAM(
+         [#include "c-client.h"
+         void mm_searched (MAILSTREAM *stream,unsigned long number)
+         {
+         }
+         void mm_exists (MAILSTREAM *stream,unsigned long number)
+         {
+         }
+         void mm_expunged (MAILSTREAM *stream,unsigned long number)
+         {
+         }
+         void mm_flags (MAILSTREAM *stream,unsigned long number)
+         {
+         }
+         void mm_notify (MAILSTREAM *stream,char *string,long errflg)
+         {
+         }
+         void mm_list (MAILSTREAM *stream,int delimiter,char *mailbox,long attributes)
+         {
+         }
+         void mm_lsub (MAILSTREAM *stream,int delimiter,char *mailbox,long attributes)
+         {
+         }
+         void mm_status (MAILSTREAM *stream,char *mailbox,MAILSTATUS *status)
+         {
+         }
+         void mm_log (char *string,long errflg)
+         {
+         }
+         void mm_dlog (char *string)
+         {
+         }
+         void mm_login (NETMBX *mb,char *user,char *pwd,long trial)
+         {
+         }
+         void mm_critical (MAILSTREAM *stream)
+         {
+         }
+         void mm_nocritical (MAILSTREAM *stream)
+         {
+         }
+         long mm_diskerror (MAILSTREAM *stream,long errcode,long serious)
+         {
+         }
+         void mm_fatal (char *string)
+         {
+         }],
+         [
+         long check = mail_expunge_full(NULL, "", 0);
+         ]
+      ),
+      [ac_cv_imap_tk2006="yes"],
+      [ac_cv_imap_tk2006="no"]
+  )
+  fi
    CPPFLAGS="${saved_cppflags}"
    LIBS="${saved_libs}"
    if test "${ac_cv_imap_tk}" = "yes"; then
@@ -412,6 +466,9 @@ if test "${USE_IMAP_TK}" != "no"; then
       IMAP_TK_INCLUDE="-I${IMAP_TK_DIR}/c-client"
       PBX_IMAP_TK=1
       AC_DEFINE([HAVE_IMAP_TK], 1, [Define if your system has the UW IMAP Toolkit c-client library.])
+      if test "${ac_cv_imap_tk2006}" = "yes"; then
+         AC_DEFINE([HAVE_IMAP_TK2006], 1, [Define if your system has the UW IMAP Toolkit c-client library version 2006 or greater.])
+      fi
    elif test ! -z "${IMAP_TK_MANDATORY}"; then
       AC_MSG_RESULT(no) 
       AC_MSG_NOTICE(***)
index b71659b91cf3c843212901cb242bb5ff3eaeec3a..f1c1fea5d15f1363cfc92d022ddec21804be0e8e 100644 (file)
@@ -58,7 +58,9 @@ Configure with ./configure --with-imap=/usr/src/imap
 or where ever you built the University of Washington IMAP C-Client.
 Then make menuselect go to voicemail options and check the imap box
 then make, make install and asterisk will have imap storage support for 
-voicemail.
+voicemail. If you are using there 2004 version you will not have access to
+their mail_expunge_full function if you install the 2006 dev branch it will
+configure will detect and enable this for you.
 
 ---------------------
 Modify voicemail.conf