Hi, I am trying to upgrade mail/courier-pythonfilter port to new version using Python 3. While it basically works, I found there is some problem accessing database from courier mail server. In log file I see
courierfilter[2875]: Error reading /usr/local/etc/courier/smtpaccess.dat This file exists, it is -rw-r--r-- 1 root courier 131072 May 26 13:30 smtpaccess.dat Pythonfilter author wrote me it probably means there is no module for accessing it and suggested test $ python3 >>> import dbm >>> dbm.open('/usr/local/etc/courier/smtpaccess.dat', 'r') This gives an error: Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/local/lib/python3.7/dbm/__init__.py", line 88, in open raise error[0]("db type could not be determined") dbm.error: db type could not be determined With some tests I found a way to display file contents: # dbmmanage /usr/local/etc/courier/smtpaccess.dat view 127.0.0.1:allow,RELAYCLIENT :0000:0000:0000:0000:0000:0000:0000:0001:allow,RELAYCLIENT 10:allow,RELAYCLIENT 192.168:allow,RELAYCLIENT or # db_dump185-5.3 -p /usr/local/etc/courier/smtpaccess.dat format=print type=hash h_ffactor=65536 db_lorder=1234 db_pagesize=32768 HEADER=END 127.0.0.1 allow,RELAYCLIENT :0000:0000:0000:0000:0000:0000:0000:0001 allow,RELAYCLIENT 10 allow,RELAYCLIENT 192.168 allow,RELAYCLIENT First one uses binary installed with apache web server, second one uses binary from db5 package. One more test: # file /usr/local/etc/courier/smtpaccess.dat /usr/local/etc/courier/smtpaccess.dat: Berkeley DB 1.85 (Hash, version 2, native byte-order) Could anybody offer a hint? I found no Python package for db5, at least not with name like py-db5 or some such tricial. Regards, Milan _______________________________________________ freebsd-python@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-python To unsubscribe, send any mail to "freebsd-python-unsubscr...@freebsd.org"