Bug 225567

Summary: mail/qpopper: does not compile with "--with-cyrus-sasl=/usr/local"; set depraceted and expiration_date
Product: Ports & Packages Reporter: ixew
Component: Individual Port(s)Assignee: freebsd-ports-bugs mailing list <ports-bugs>
Status: New ---    
Severity: Affects Only Me CC: bc979, w.schwarzenfeld
Priority: --- Flags: bugzilla: maintainer-feedback? (bc979)
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
svn-diff-qpopper
none
svn-diff-expiration none

Description ixew 2018-01-30 17:21:03 UTC
Dear maintainer of the mail/qpopper port:

Since the handbook recommends security/cyrus-sasl2 as the means for SMTP (sendmail) authentication I tried the same with mail/qpopper by adding "--with-cyrus-sasl=/usr/local" to the Makefile CONFIGURE_ARGS.

Unfortunately the port then does not compile, see below.
Is this an upstream bug or something to do with FreeBSD 11.1?
Is this the reason why this option is not offered via FreeBSD port "make config"?

It's nice to have the same authentication method in all mail operations.

Thanks in advance, Enoch.


--

In file included from mime.c:68:
../popper/popper.h:693:25: error: field has incomplete type 'struct _pop_sasl'
    struct _pop_sasl    sasl;                   /* General place to put 
                        ^
../popper/popper.h:282:16: note: forward declaration of 'struct _pop_sasl'
typedef struct _pop_sasl            pop_sasl;           /* defined in pop_sasl.h */
               ^
mime.c:536:52: warning: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Wconstant-conversion]
  MemSet ( (char *) (mType->paramIndex), paramMax, kParamIndexUnused );
  ~~~~~~                                           ^~~~~~~~~~~~~~~~~
./mime.h:101:28: note: expanded from macro 'kParamIndexUnused'
#define kParamIndexUnused (255) /* don't change this */
                           ^~~
1 warning and 1 error generated.
*** [mime.o] Error code 1
Comment 1 bc979 2018-02-11 00:50:10 UTC
I had no idea there was a cyrus-sasl option.  However, it is in the code, but not in the configuration parameters.  In config.h is a CYRUS_SASL define that needs to be defined.  It is by default undefined.  That "should" resolve the problem.  You should be able to manually include the #define CYRUS_SASL 1 in the Makefile, but I suspect going through configure might be required.

You do need to consider that qpopper is not being maintained upstream much anymore.  You might want to switch over to dovecot.  Dovecot does not have bulletins which was why I used qpopper.  However, that need went away and I switched to dovecot.
Comment 2 Walter Schwarzenfeld freebsd_triage 2018-02-11 13:50:12 UTC
Created attachment 190511 [details]
svn-diff-qpopper

Please test this.  With the patch it builds fine. 
(If have not tested funcionallity).
Comment 3 bc979 2018-02-16 07:18:23 UTC
On FreeBSD 11.1 with base openssl it does not build properly.  There is an issue with openssl.  What system are you building it on, and what openssl are you using (base, port etc.)?
Comment 4 Walter Schwarzenfeld freebsd_triage 2018-02-16 11:18:13 UTC
Sorry, was 10.4 (I interrupted tests for some reasons) and after this I overlooked I have not tested on 
11.1.
Comment 5 Walter Schwarzenfeld freebsd_triage 2019-08-18 12:58:19 UTC
Created attachment 206657 [details]
svn-diff-expiration
Comment 6 Walter Schwarzenfeld freebsd_triage 2019-08-18 13:02:11 UTC
Btw, builds with openssl ports and libressl (cannot test openssl base).