Re: How to create user accounts and mail addresses through CURL instead of Site Administration ?
by Shashikanth Komandoor
Thank you Mark for you response in time.
On Tue, Aug 11, 2020 at 9:40 AM Mark Sapiro <mark(a)msapiro.net> wrote:
> On 8/10/20 11:18 AM, Shashikanth Komandoor wrote:
> > I am currently automating a few things using the CURL commands but
> only
> > postorius related as of now. Now I have a requirement.
> >
> > I need to create a lot many users and their mapping email ids through
> > Site Administration almost daily. But it is becoming to do the same
> through
> > Graphical Interface.
> >
> > So, I just want to know the CURL commands that can be used to create
> the
> > user accounts and email ids mapped to user accounts.
>
> The accounts you are talking about are Django accounts. You cannot
> create these via CURL to the Mailman core REST API.
>
> You might find
> <https://www.django-rest-framework.org/tutorial/quickstart/> of interest.
>
> --
> Mark Sapiro <mark(a)msapiro.net> The highway is for gamblers,
> San Francisco Bay Area, California better use your sense - B. Dylan
> _______________________________________________
> Mailman-users mailing list -- mailman-users(a)mailman3.org
> To unsubscribe send an email to mailman-users-leave(a)mailman3.org
> https://lists.mailman3.org/mailman3/lists/mailman-users.mailman3.org/
>
--
Thanks & Regards,
Shashi Kanth.K
9052671936
5 years, 6 months
Re: Moderation not working?
by Mark Sapiro
On 11/24/20 12:30 PM, peter(a)chubb.wattle.id.au wrote:
>
> Hi Folks,
> Running a shiny new instance of mailman3, as per the Debian package
> (version 3.2.2) but the moderation doesn't seem to work. WE got
> hit by a heap of spammers overnight, even though the 'hold for
> moderation' bit is set for non-members (and now for members too).
If the action for member posts was accept ot default processing at the
time, perhaps the spam spoofed a member address in one of From:,
Reply-To:, Sender: or the envelope sender,
> Emails seem just to get straight through.
Even now with both member and non-member actions set to hold?
> Any advice on how to debug this? Would upgrading to a later version
> using pip help?
An upgrade probably won't help. This should work in your version.
For one of the mail's, check all 4 addresses, From:, Reply-To:, Sender:
and the envelope sender (available in the MTA logs). Note that Reply-To:
and/or Sender: may have been modified by the list.
Then see if any of those addresses matches a member or a non-member and
what the specific moderation action is for that address. Also check the
list's accept_these_nonmembers which is probably not exposed in your
version of Postorius but which you can see via `mailman shell`.
--
Mark Sapiro <mark(a)msapiro.net> The highway is for gamblers,
San Francisco Bay Area, California better use your sense - B. Dylan
5 years, 3 months
Re: Add an extra option for "Delivery status" for users?
by Stephen J. Turnbull
Mark Sapiro writes:
> On 11/19/25 12:50 PM, Thomas Ward via Mailman-users wrote:
> > We have a unique case where we have a user we want to disable for mail
> > receiving, etc. for the reason "Disabled by IT Security Team" but I
> > don't even know if it's possible to add a delivery status that is that
> > custom.
> At a minimum, you would need to add that choice to the
> DeliveryStatus(Enum) in mailman/interfaces/member.py and the choice and
> its description to the DELIVERY_STATUS_CHOICES tuples in
> postorius/forms/fields.py. I don't know offhand if that would be
> sufficient, or if more would be required.
In postorius/views/user.py, you also need to add it to
`UserPreferencesView,delivery_status_disabled_fields`. Otherwise users
will be able to reenable from a security disable.
In Mailman core, it's not absolutely necessary, but I think you should
handle it the same as `by_moderator` in mailman/commands/cli_members.py,
mailman/commands/cli_addmembers.py, and mailman/commands/cli_syncmembers.py.
The mention of `by_moderator` in mailman/utilities/importer.py is irrelevant
since the new `by_security` (or whatever you call it) doesn't exist in
Mailman 2.
In mailmanclient, you *may* want to update docstrings in
mailmanclient/asynclient.py and mailmanclient/restobjects/mailinglist.py.
--
GNU Mailman consultant (installation, migration, customization)
Sirius Open Source https://www.siriusopensource.com/
Software systems consulting in Europe, North America, and Japan
3 months, 2 weeks
Re: sqlite3 Database "read only" error on mailman_sync job
by Ugnius
Thank You. This is very valuable information. According documentation I understood that "runserver" should run on some internal port and uwsgi just works like proxy connects to the same as runserver port and serves content to apachi. Because when I was playing with the setup without "runserver" Web interface didn't work.
Yes, I have stopped "runserver" and page still works fine. :) This didn't solve me database RO issue, but this information was important. Thank You. I am thinking what to do now... Maybe to recreate database (make initiation once again). It could take 2-3 hours. I did not noticed option to export/import lists setting. Or to try find solution how to make sqlite3 multiple writable.
SQLite version 3.16.2 2017-01-06 16:32:41
Enter ".help" for usage hints.
BR
Ugnius
> On 5 Sep 2019, at 23:31, Abhilash Raj <maxking(a)asynchronous.in> wrote:
>
>> On Thu, Sep 5, 2019, at 1:15 PM, Ugnius wrote:
>>
>> I do not know... In the setup example settings was something like process number = 2. But I understand at least 1 uwsgi and 1 run server should run?
>
> No, only uwsgi needs to run. It is fine if there are two of those, since it probably forks to have 2 worker process. There shouldn't be any "python manage.py runserver" processes running at all, it is meant only for testing purposes.
>
> The doc mentions that it is "development" server[1][2].
>
> [1]: # Run the Django's "development" server at localhost:8000
> [2]: http://docs.mailman3.org/en/latest/prodsetup.html#setting-up-django-project
>
> Perhaps it should be more descriptive about what does it mean.
>
>>
>>> On 5 Sep 2019, at 23:08, Abhilash Raj <maxking(a)asynchronous.in> wrote:
>>> 6644 ? S 0:12 /usr/bin/uwsgi --master --ini /opt/home/uwsgi.ini
>>> 6645 ? S 0:00 /usr/bin/python3 /opt/home/manage.py runserver 0:8015
>>> 6653 ? Sl 636:28 /usr/bin/python3 /opt/home/manage.py runserver 0:8015
>>> 6656 ? Sl 0:27 /usr/bin/uwsgi --master --ini /opt/home/uwsgi.ini
>>>
>>> This fishy, why do you have both uwsgi and "python manage.py runserver" running?
>>>
>>> You only need one of those, since they both do the exact same thing. Please remove
>>> whatever is running the "python manage.py runserver" part and only use uwsgi.
>>>
>>>> On Thu, Sep 5, 2019, at 1:02 PM, Ugnius S wrote:
>>>> Thank You, Abhilash, to helping. I have checked the processes, but also I have read, that sqlite3 can run in multi writing mode.
>>>> May mailman processes are next:
>>>>
>>>> 6644 ? S 0:12 /usr/bin/uwsgi --master --ini /opt/home/uwsgi.ini
>>>> 6645 ? S 0:00 /usr/bin/python3 /opt/home/manage.py runserver 0:8015
>>>> 6653 ? Sl 636:28 /usr/bin/python3 /opt/home/manage.py runserver 0:8015
>>>> 6656 ? Sl 0:27 /usr/bin/uwsgi --master --ini /opt/home/uwsgi.ini
>>>> 6643 ? S 0:00 /usr/bin/python3 /usr/bin/master -C /opt/home/mailman.cfg
>>>> 659 ? S 0:46 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=in:0:1
>>>> 6660 ? S 0:42 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=nntp:0:1
>>>> 6661 ? S 0:42 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=digest:0:1
>>>> 6662 ? S 0:48 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=pipeline:0:1
>>>> 6663 ? S 0:44 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=archive:0:1
>>>> 6664 ? S 0:41 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=command:0:1
>>>> 6665 ? S 0:01 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=retry:0:1
>>>> 6666 ? S 0:45 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=virgin:0:1
>>>> 6667 ? Sl 0:16 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=lmtp:0:1
>>>> 6668 ? Sl 1:30 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=rest:0:1
>>>> 6669 ? S 0:42 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=bounces:0:1
>>>> 6670 ? S 0:49 /usr/bin/python3 /usr/bin/runner -C /opt/home/mailman.cfg --runner=out:0:1
>>>>
>>>> Looks like there are no double. Nothing more is running.
>>>>
>>>> 2019-09-05, kt, 03:16 Abhilash Raj <maxking(a)asynchronous.in> rašė:
>>>>
>>>>> On Wed, Sep 4, 2019, at 2:05 PM, Ugnius S wrote:
>>>>>
>>>>> I have installed using documentation. My linux distribution version has no full package available. I have installed step by step:
>>>>> $ sudo pip3 install mailman
>>>>> $ sudo pip3 install postorius
>>>>> $ sudo pip3 install hyperkitty
>>>>> $ sudo pip3 install mailman-hyperkitty
>>>>> And of course all mandatory components... Everything without errors, I can drop db files and I can download mailman-suite again and start from empty page again. But it will not guarantee that DB will not become READ ONLY again. Here should be logic. No developing support here?
>>>>
>>>> Could you be running two separate processes such that the database is locked by one and so other finds it as READ Only? When you find a read only database, can you check if it is open in some other process?
>>>>
>>>>>
>>>>>
>>>>>
>>>>> 2019-09-03, an, 19:36 Abhilash Raj <maxking(a)asynchronous.in> rašė:
>>>>>
>>>>>
>>>>> On Sun, Sep 1, 2019, at 3:22 AM,ugniusviln(a)gmail.com wrote:
>>>>> > Hi. All the project installation is under the same user / path and
>>>>> > it works. Archiving working as well, (just one remark: no matter what
>>>>> > to set in postorius, hyperkitty shows list as public)
>>>>> > I have found work around - it is possible to change list as private in
>>>>> > "admin" page.
>>>>> > I started to get issues with runjobs after I have created couple of
>>>>> > new lists with "no archive" option.
>>>>>
>>>>> How did you install all these components. It seems there the installation is broken in weird ways.
>>>>>
>>>>> >
>>>>> > If as owner user from project home I run:
>>>>> >
>>>>> > django-admin mailman_sync
>>>>> >
>>>>> > Traceback (most recent call last):
>>>>> > File
>>>>> > "/home/user/.local/lib/python3.5/site-packages/django/db/backends/utils.py",
>>>>> > line 84, in _execute
>>>>> > return self.cursor.execute(sql, params)
>>>>> > File
>>>>> > "/home/user/.local/lib/python3.5/site-packages/django/db/backends/sqlite3/base.py",
>>>>> > line 383, in execute
>>>>> > return Database.Cursor.execute(self, query, params)
>>>>> > sqlite3.OperationalError: attempt to write a readonly database
>>>>> >
>>>>> > "django-admin runjob sync_mailman " - makes read only errors as well.
>>>>> > "django-admin runjob new_lists_from_mailman"
>>>>> > django.db.utils.OperationalError: attempt to write a readonly database
>>>>> > END TRACEBACK
>>>>> >
>>>>> > I did not find information how to fix this. It was worked without errors
>>>>> > before.
>>>>> > I noticed, that if I stop mailman, "django-admin mailman_sync" starts
>>>>> > to work.
>>>>> > If I start "mailman start", then "django-admin mailman_sync" failing
>>>>> > again.
>>>>> > I did not check other jobs, but I think what is related to database,
>>>>> > will get errors.
>>>>> > Seems mailman locking the database. It is not a file permissions issue.
>>>>> > Mailman db location is: /project_directory/var/data/mailman.db
>>>>> >
>>>>> > if to rename /project_directory/var/data/mailman.db to something,
>>>>> > mailman creates database file size 0, django-admin runjobs start
>>>>> > working, but of course postorius stops working. I did it for testing.
>>>>> > I have returned this database file back, postorius started to work
>>>>> > again, but django-admin runjobs does not work, error: "database read
>>>>> > only".
>>>>> > Please help me how to fix this issue.
>>>>> > _______________________________________________
>>>>> > Mailman-users mailing list -- mailman-users(a)mailman3.org
>>>>> > To unsubscribe send an email to mailman-users-leave(a)mailman3.org
>>>>> > https://lists.mailman3.org/mailman3/lists/mailman-users.mailman3.org/
>>>>> >
>>>>>
>>>>> --
>>>>> thanks,
>>>>> Abhilash Raj (maxking)
>>>>
>>>> --
>>>> thanks,
>>>> Abhilash Raj (maxking)
>>>>
>>>>
>>>
>>> --
>>> thanks,
>>> Abhilash Raj (maxking)
>>>
>>>
>
> --
> thanks,
> Abhilash Raj (maxking)
>
>
6 years, 6 months
Re: How to best disable message decoration for all lists defined for a domain
by Abhilash Raj
On Mon, Mar 18, 2019, at 2:27 PM, Ralph Seichter wrote:
> Hello list.
>
> I have read [1] and [2], but I am not quite sure what the recommended
> method is to completely disable message headers/footers and subject
> modifications for *all* lists tied to a specific domain. Being new to
> Mailman 3, I was actually surprised that there are no configuration
> switches in the Web UI's settings for mailing lists that allow me to get
> rid of unwanted message decorations.
Yes, you are right and there aren't any ways to disable decorations. Can
you please open an issue on Gitlab?
As a workaround, you can set an empty domain level template for header
and footer and remove the subject prefix. There is an issue open on Postorius[1]
which doesn't allow empty templates, you need to add at least a blank space
to create a template, which should result in similar looking message.
[1]: https://gitlab.com/mailman/postorius/issues/331
>
> [1]
> https://mailman.readthedocs.io/en/latest/src/mailman/handlers/docs/decorate…
> [2]
> https://mailman.readthedocs.io/en/latest/build/lib/mailman/rest/docs/templa…
>
> Thanks for your input.
>
> -Ralph
> _______________________________________________
> Mailman-users mailing list -- mailman-users(a)mailman3.org
> To unsubscribe send an email to mailman-users-leave(a)mailman3.org
> https://lists.mailman3.org/mailman3/lists/mailman-users.mailman3.org/
>
--
thanks,
Abhilash Raj (maxking)
6 years, 11 months
Re: High memory usage
by Stephen J. Turnbull
Philip Colmer writes:
[Nothing about individual processes.] *Something* is using that
memory. ps(1) should help identify it when your alarm is triggered,
top(1) allows monitoring in realtime. For example, the information
about the size of archives is interesting only if HyperKitty is using
the memory. I guess it might be indicative of core usage since
there's an awful lot of traffic, but core won't be reading archives
into memory or anything like that, it doesn't even know or care where
the archives are. It only knows where on the Internet to send
messages so the archiver that lives there can add them. And I find it
hard to imagine why Postorius would be consuming memory.
> What is particularly curious for us is that we have four Mailman 3
> servers.
Are these servers identically configured, or nearly so? If so,
perhaps you can find "interesting" differences in memory usage across
them.
> Finally, and just FYI, we're using PostgreSQL for the database and
> Xapian for the indexing engine.
Either of those would be a weird cause. The point of an RDBMS is to
store data in mass storage, although I suppose it's possible to write
queries that would return huge quantites of data in memory. And the
indexer is not a long-running process, as far as I know. So it should
run, exit, and release memory. Again, if it's related to one of those
it should turn up in ps.
4 years
Re: Mass subscription and Delivery mode/status
by Odhiambo Washington
On Wed, May 14, 2025 at 10:48 AM Andreas Vetter <
andreas.vetter(a)uni-wuerzburg.de> wrote:
> Hello all,
> we run a venv installation of "mailman postorius django-mailman3 hyperkitty
> mailman-web".
> When I mass subscribe (pre-verified) a new mail address into a list, the
> Delivery mode appears as Regular in
> /mailman3/lists/somelist.example.com/members/member/
> That is what I expect.
>
> When I click on the new mail address from there, i.e.
> mailman3/lists/
> somelist.example.com/members/options/eimer@mail.org?role=member
> the Delivery status is ----- instead of Enabled
> and the Delivery mode is ----- instead of Regular.
> In fact, all yes/no radio buttons are unset.
> This is unexpected. What does ----- mean in that case? Is it unset and some
> default (from the list?) is used?
>
You are looking at the subscriber-level configs. The ----- means that the
list default settings are used.
> After thinking another round about it:
> Is the view
> mailman3/lists/
> somelist.example.com/members/options/eimer@mail.org?role=member
> only filled with values, when somebody (member, list owner or admin)
> actively
> set values and unfilled otherwise?
>
That's right.
--
Best regards,
Odhiambo WASHINGTON,
Nairobi,KE
+254 7 3200 0004/+254 7 2274 3223
In an Internet failure case, the #1 suspect is a constant: DNS.
"Oh, the cruft.", egrep -v '^$|^.*#' ¯\_(ツ)_/¯ :-)
[How to ask smart questions:
http://www.catb.org/~esr/faqs/smart-questions.html]
9 months, 3 weeks
Cannot locate manage.py
by Frank van den Heuvel
Hello,
While following https://docs.mailman3.org/en/latest/migration.html, I
want to execute:
python manage.py hyperkitty_import -l foo-list(a)example.com $var_prefix/archives/private/foo-list.mbox/foo-list.mbox
Of course edited with values for my list. But I already get stuck in not
being able to locate "manage.py".
When I run "locate manage.py", I get:
/opt/mailman/mm/venv/lib/python3.7/site-packages/django/conf/project_template/manage.py-tpl
/opt/mailman/mm/venv/lib/python3.7/site-packages/example_project/manage.py
/opt/mailman/mm/venv/lib/python3.7/site-packages/falcon/bench/dj/manage.py
Which one is the right one?
With kind regards and thanks for your work!
Frank van den Heuvel
BTW: This is a debian 10.2 with Mailman3:
Django Version: 2.2.9
Python Executable: /opt/mailman/mm/venv/bin/python
Python Version: 3.7.3
Python Path: ['/opt/mailman/mm', '/opt/mailman/mm/', '/opt/mailman/mm/bin', '/usr/lib/python37.zip', '/usr/lib/python3.7', '/usr/lib/python3.7/lib-dynload', '/opt/mailman/mm/venv/lib/python3.7/site-packages']
Server time: Tue, 21 Jan 2020 08:34:45 -0800
Installed Applications:
('hyperkitty',
'postorius',
'django_mailman3',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
'django_gravatar',
'compressor',
'haystack',
'django_extensions',
'django_q',
'allauth',
'allauth.account',
'allauth.socialaccount',
'allauth.socialaccount.providers.github',
'allauth.socialaccount.providers.gitlab',
'allauth.socialaccount.providers.google')
Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django.middleware.security.SecurityMiddleware',
'django_mailman3.middleware.TimezoneMiddleware',
'postorius.middleware.PostoriusMiddleware')
6 years, 1 month
Re: New messages not being archived
by Sarah H
The site is behind a proxy, yes. apache serves the client site redirecting 80 to 443 and serving SSL for the site then proxying to Nginx for postorius/hyperkitty at 8080. I've also tried going straight to 8080 bypassing the proxy internally using localhost or loopback to the same end result.
The log is mostly these three errors repeatedly with the same above wall of html between them, some of them end with (404) after the last html tag indicating url not found and browsing to them gives the same custom 404 page for postorius.
Jul 15 12:37:08 2021 (471314) HyperKitty failure on http://lists.client.org/hyperkitty/api/mailman/archive:
Jul 15 12:37:08 2021 (471314) Traceback (most recent call last):
File "/opt/mailman/venv/lib64/python3.6/site-packages/mailman_hyperkitty/__init__.py", line 154, in _archive_message
url = self._send_message(mlist, msg)
File "/opt/mailman/venv/lib64/python3.6/site-packages/mailman_hyperkitty/__init__.py", line 210, in _send_message
raise ValueError(result.text)
ValueError:
Jul 15 12:37:08 2021 (471314) Exception in the HyperKitty archiver:
I was able to find (about 5000 lines up in the log for a single post attempt... it's a bit excessive to print the html response every error) this when I dug through instead of tailing the last 500 lines.
[15/Jul/2021:12:37:06 -0700] "GET /3.1/addresses/sarah.h@email HTTP/1.1" 200 380 "-" "GNU Mailman REST client v3.3.2"
and at the start of the block:
[15/Jul/2021:12:37:03 -0700] "GET /3.1/lists/admin.lists.client.org/member/sarah.%40email HTTP/1.1" 200 516 "-" "GNU Mailman REST client v3.3.2"
Jul 15 12:37:05 2021 (471317) ACCEPT: <162637782380.3116.619498070458942231@sysname>
4 years, 7 months
Re: using SSH/TLS with external MTA
by Roland Giesler
On 2024/07/28 00:39, Mark Sapiro wrote:
> On 7/27/24 15:16, Roland Giesler via Mailman-users wrote:
>>
>> The server runs power-mailinabox, which uses Postfix indeed. All my
>> mail, and quite a few others' mail is sent from the using SMTP-Auth
>> on port 465. Actually, this message is sent via that server too. So
>> it's clear to me that MM3 is not authenticating for some reason.
>
> What do you see in Mailman's smtp.log and in the mail.log on the mail
> server?
The smtp log is in syslog...
Jul 28 12:48:19 mailman postfix/smtpd[63855]: connect from localhost[::1]
Jul 28 12:48:19 mailman postfix/smtpd[63855]: NOQUEUE: reject: RCPT from
localhost[::1]: 454 4.7.1 <roland(a)giesler.za.net>: Relay access denied;
from=<postorius(a)giesler.za.net> to=<roland(a)giesler.za.net> proto=ESMTP
helo=<mailman.fast.za.net>
Jul 28 12:48:19 mailman postfix/smtpd[63769]: lost connection after RSET
from localhost[::1]
Jul 28 12:48:19 mailman postfix/smtpd[63769]: disconnect from
localhost[::1] ehlo=1 mail=1 rcpt=0/1 rset=1 commands=3/4
Jul 28 12:48:19 mailman postfix/smtpd[63769]: connect from localhost[::1]
Jul 28 12:48:19 mailman postfix/smtpd[63769]: 4D0DE120A5B:
client=localhost[::1]
Jul 28 12:48:19 mailman postfix/cleanup[63291]: 4D0DE120A5B:
message-id=<172217089931.2150.9004701361968608890(a)mailman.fast.za.net>
Jul 28 12:48:19 mailman postfix/qmgr[330]: 4D0DE120A5B:
from=<root(a)giesler.za.net>, size=21782, nrcpt=1 (queue active)
Jul 28 12:48:19 mailman postfix/smtpd[63769]: disconnect from
localhost[::1] ehlo=1 mail=1 rcpt=1 data=1 quit=1 commands=5
Jul 28 12:48:19 mailman postfix/local[63575]: 4D0DE120A5B:
to=<root@localhost>, relay=local, delay=0.01, delays=0.01/0/0/0,
dsn=2.0.0, status=sent (delivered to mailbox)
Jul 28 12:48:19 mailman postfix/qmgr[330]: 4D0DE120A5B: removed
I think I see what's going on here. The mail is being sent from
postorius(a)giesler.za.net and there is no log entry on
box2.gtahardware.co.za that shows this logon attempt. So it seems it's
not going to that server, but rather to the local postfix.
A mail was sent to root on the localhost with the following content:
Return-Path: <root(a)giesler.za.net>
X-Original-To: root@localhost
Delivered-To: root@localhost
Received: from mailman.fast.za.net (localhost [IPv6:::1])
by mailman.localdomain (Postfix) with ESMTP id 2174A120A5B
for <root@localhost>; Sun, 28 Jul 2024 13:11:03 +0000 (UTC)
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Subject: [Django] ERROR (EXTERNAL IP): Internal Server Error:
/accounts/login/
From: root(a)giesler.za.net
To: root@localhost
Date: Sun, 28 Jul 2024 13:11:03 -0000
Message-ID: <172217226313.2150.10895652368679013629(a)mailman.fast.za.net>
Internal Server Error: /accounts/login/
SMTPRecipientsRefused at /accounts/login/
{'roland(a)giesler.za.net': (454, b'4.7.1 <roland(a)giesler.za.net>: Relay acce=
ss denied')}
Request Method: POST
Request URL: http://192.168.161.103/accounts/login/
Django Version: 3.2.12
Python Executable: /usr/bin/uwsgi-core
Python Version: 3.10.12
Python Path: ['.', '', '/usr/lib/python310.zip', '/usr/lib/python3.10', '/u=
sr/lib/python3.10/lib-dynload', '/usr/local/lib/python3.10/dist-packages', =
'/usr/lib/python3/dist-packages', '/usr/lib/python3.10/dist-packages']
Server time: Sun, 28 Jul 2024 15:11:03 +0200
Installed Applications:
('hyperkitty',
'postorius',
'django_mailman3',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
'django_gravatar',
'compressor',
'haystack',
'django_extensions',
'django_q',
'allauth',
'allauth.account',
'allauth.socialaccount',
'django_mailman3.lib.auth.fedora')
Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django.middleware.security.SecurityMiddleware',
'django_mailman3.middleware.TimezoneMiddleware',
'postorius.middleware.PostoriusMiddleware')
Traceback (most recent call last):
File
"/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line
47, in inner
response =3D get_response(request)
File "/usr/lib/python3/dist-packages/django/core/handlers/base.py",
line 181, in _get_response
response =3D wrapped_callback(request, *callback_args,
**callback_kwargs)
File "/usr/lib/python3/dist-packages/django/views/generic/base.py",
line 70, in view
return self.dispatch(request, *args, **kwargs)
File "/usr/lib/python3/dist-packages/django/utils/decorators.py",
line 43, in _wrapper
return bound_method(*args, **kwargs)
File
"/usr/lib/python3/dist-packages/django/views/decorators/debug.py", line
89, in sensitive_post_parameters_wrapper
return view(request, *args, **kwargs)
File "/usr/lib/python3/dist-packages/allauth/account/views.py", line
146, in dispatch
return super(LoginView, self).dispatch(request, *args, **kwargs)
File "/usr/lib/python3/dist-packages/allauth/account/views.py", line
74, in dispatch
response =3D super(RedirectAuthenticatedUserMixin, self).dispatch(
File "/usr/lib/python3/dist-packages/django/views/generic/base.py",
line 98, in dispatch
return handler(request, *args, **kwargs)
File "/usr/lib/python3/dist-packages/allauth/account/views.py", line
102, in post
response =3D self.form_valid(form)
File "/usr/lib/python3/dist-packages/allauth/account/views.py", line
159, in form_valid
return form.login(self.request, redirect_url=3Dsuccess_url)
File "/usr/lib/python3/dist-packages/allauth/account/forms.py", line
196, in login
ret =3D perform_login(
File "/usr/lib/python3/dist-packages/allauth/account/utils.py", line
175, in perform_login
send_email_confirmation(request, user, signup=3Dsignup, email=3Demail)
File "/usr/lib/python3/dist-packages/allauth/account/utils.py", line
346, in send_email_confirmation
email_address.send_confirmation(request, signup=3Dsignup)
File "/usr/lib/python3/dist-packages/allauth/account/models.py", line
62, in send_confirmation
confirmation.send(request, signup=3Dsignup)
File "/usr/lib/python3/dist-packages/allauth/account/models.py", line
169, in send
get_adapter(request).send_confirmation_mail(request, self, signup)
File "/usr/lib/python3/dist-packages/allauth/account/adapter.py",
line 464, in send_confirmation_mail
self.send_mail(email_template,
emailconfirmation.email_address.email, ctx)
File "/usr/lib/python3/dist-packages/allauth/account/adapter.py",
line 136, in send_mail
msg.send()
File "/usr/lib/python3/dist-packages/django/core/mail/message.py",
line 284, in send
return self.get_connection(fail_silently).send_messages([self])
File
"/usr/lib/python3/dist-packages/django/core/mail/backends/smtp.py", line
109, in send_messages
sent =3D self._send(message)
File
"/usr/lib/python3/dist-packages/django/core/mail/backends/smtp.py", line
125, in _send
self.connection.sendmail(from_email, recipients,
message.as_bytes(linesep=3D'\r\n'))
File "/usr/lib/python3.10/smtplib.py", line 901, in sendmail
raise SMTPRecipientsRefused(senderrs)
Exception Type: SMTPRecipientsRefused at /accounts/login/
Exception Value: {'roland(a)giesler.za.net': (454, b'4.7.1
<roland(a)giesler.za.net>: Relay access denied')}
Request information:
USER: AnonymousUser
GET: No GET data
POST:
csrfmiddlewaretoken =3D
'41gp97hhfO2FhiEzOFLf1c5P3WLxk5TZvOgF0Qske6zI3EHtk8YK3w6wlEhLQAVS'
login =3D 'roland(a)giesler.za.net'
password =3D '********************'
next =3D '/postorius/lists/'
FILES: No FILES data
COOKIES:
csrftoken =3D
'aW8mw1heNIcuQ1YTMwnWMzi9DMaDFES6BJ8CnKshM0JxCn1NiZArOTjQVuGRb9UZ'
META:
CONTENT_LENGTH =3D '164'
CONTENT_TYPE =3D 'application/x-www-form-urlencoded'
CSRF_COOKIE =3D
'aW8mw1heNIcuQ1YTMwnWMzi9DMaDFES6BJ8CnKshM0JxCn1NiZArOTjQVuGRb9UZ'
DOCUMENT_ROOT =3D '/usr/share/nginx/html'
HTTP_ACCEPT =3D
'text/html,application/xhtml+xml,application/xml;q=3D0.9,image/avif,image/webp,image/apng,*/*;q=3D0.8'
HTTP_ACCEPT_ENCODING =3D 'gzip, deflate'
HTTP_ACCEPT_LANGUAGE =3D 'en-GB,en'
HTTP_CACHE_CONTROL =3D 'max-age=3D0'
HTTP_CONNECTION =3D 'keep-alive'
HTTP_CONTENT_LENGTH =3D '164'
HTTP_CONTENT_TYPE =3D 'application/x-www-form-urlencoded'
HTTP_COOKIE =3D
'csrftoken=3DaW8mw1heNIcuQ1YTMwnWMzi9DMaDFES6BJ8CnKshM0JxCn1NiZArOTjQVuGRb9UZ'
HTTP_HOST =3D '192.168.161.103'
HTTP_ORIGIN =3D 'http://192.168.161.103'
HTTP_REFERER =3D
'http://192.168.161.103/accounts/login/?next=3D/postorius/lists/'
HTTP_SEC_GPC =3D '1'
HTTP_UPGRADE_INSECURE_REQUESTS =3D '1'
HTTP_USER_AGENT =3D 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36
(KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36'
PATH_INFO =3D '/accounts/login/'
QUERY_STRING =3D ''
REMOTE_ADDR =3D '192.168.131.150'
REMOTE_PORT =3D '60098'
REQUEST_METHOD =3D 'POST'
REQUEST_SCHEME =3D 'http'
REQUEST_URI =3D '/accounts/login/'
SCRIPT_NAME =3D ''
SERVER_NAME =3D ''
SERVER_PORT =3D '80'
SERVER_PROTOCOL =3D 'HTTP/1.1'
uwsgi.core =3D 1
uwsgi.node =3D b'mailman'
uwsgi.version =3D b'2.0.20-debian'
wsgi.errors =3D <_io.TextIOWrapper name=3D2 mode=3D'w'
encoding=3D'ANSI_X3.4-1968'>
wsgi.file_wrapper =3D <built-in function uwsgi_sendfile>
wsgi.input =3D <uwsgi._Input object at 0x7facb44bd530>
wsgi.multiprocess =3D False
wsgi.multithread =3D True
wsgi.run_once =3D False
wsgi.url_scheme =3D 'http'
wsgi.version =3D '(1, 0)'
Settings:
Using settings module settings
ABSOLUTE_URL_OVERRIDES =3D {}
ACCOUNT_AUTHENTICATION_METHOD =3D 'username_email'
ACCOUNT_DEFAULT_HTTP_PROTOCOL =3D 'https'
ACCOUNT_EMAIL_REQUIRED =3D True
ACCOUNT_EMAIL_VERIFICATION =3D 'mandatory'
ACCOUNT_UNIQUE_EMAIL =3D True
ADMINS =3D "(('Mailman Suite Admin', 'root@localhost'),)"
ALLOWED_HOSTS =3D ['*']
APPEND_SLASH =3D True
AUTHENTICATION_BACKENDS =3D
"('django.contrib.auth.backends.ModelBackend',
'allauth.account.auth_backends.AuthenticationBackend')"
AUTH_PASSWORD_VALIDATORS =3D '********************'
AUTH_USER_MODEL =3D 'auth.User'
BASE_DIR =3D '/usr/share/mailman3-web'
CACHES =3D {'default': {'BACKEND':
'django.core.cache.backends.locmem.LocMemCache'}}
CACHE_MIDDLEWARE_ALIAS =3D 'default'
CACHE_MIDDLEWARE_KEY_PREFIX =3D '********************'
CACHE_MIDDLEWARE_SECONDS =3D 600
COMPRESSORS =3D {'css': 'compressor.css.CssCompressor', 'js':
'compressor.js.JsCompressor'}
COMPRESS_CACHEABLE_PRECOMPILERS =3D '()'
COMPRESS_CACHE_BACKEND =3D 'default'
COMPRESS_CACHE_KEY_FUNCTION =3D '********************'
COMPRESS_CLEAN_CSS_ARGUMENTS =3D ''
COMPRESS_CLEAN_CSS_BINARY =3D 'cleancss'
COMPRESS_CLOSURE_COMPILER_ARGUMENTS =3D ''
COMPRESS_CLOSURE_COMPILER_BINARY =3D 'java -jar compiler.jar'
COMPRESS_CSS_HASHING_METHOD =3D 'mtime'
COMPRESS_DATA_URI_MAX_SIZE =3D 1024
COMPRESS_DEBUG_TOGGLE =3D None
COMPRESS_ENABLED =3D True
COMPRESS_FILTERS =3D {'css':
['compressor.filters.css_default.CssAbsoluteFilter'], 'js':
['compressor.filters.jsmin.JSMinFilter']}
COMPRESS_JINJA2_GET_ENVIRONMENT =3D <function
CompressorConf.JINJA2_GET_ENVIRONMENT at 0x7facb6a52b00>
COMPRESS_MINT_DELAY =3D 30
COMPRESS_MTIME_DELAY =3D 10
COMPRESS_OFFLINE =3D True
COMPRESS_OFFLINE_CONTEXT =3D {'STATIC_URL': '/mailman3/static/'}
COMPRESS_OFFLINE_MANIFEST =3D 'manifest.json'
COMPRESS_OFFLINE_TIMEOUT =3D 31536000
COMPRESS_OUTPUT_DIR =3D 'CACHE'
COMPRESS_PARSER =3D 'compressor.parser.AutoSelectParser'
COMPRESS_PRECOMPILERS =3D '()'
COMPRESS_REBUILD_TIMEOUT =3D 2592000
COMPRESS_ROOT =3D '/var/lib/mailman3/web/static'
COMPRESS_STORAGE =3D 'compressor.storage.CompressorFileStorage'
COMPRESS_TEMPLATE_FILTER_CONTEXT =3D {'STATIC_URL': '/mailman3/static/'}
COMPRESS_URL =3D '/mailman3/static/'
COMPRESS_URL_PLACEHOLDER =3D '/__compressor_url_placeholder__/'
COMPRESS_VERBOSE =3D False
COMPRESS_YUGLIFY_BINARY =3D 'yuglify'
COMPRESS_YUGLIFY_CSS_ARGUMENTS =3D '--terminal'
COMPRESS_YUGLIFY_JS_ARGUMENTS =3D '--terminal'
COMPRESS_YUI_BINARY =3D 'java -jar yuicompressor.jar'
COMPRESS_YUI_CSS_ARGUMENTS =3D ''
COMPRESS_YUI_JS_ARGUMENTS =3D ''
CSRF_COOKIE_AGE =3D 31449600
CSRF_COOKIE_DOMAIN =3D None
CSRF_COOKIE_HTTPONLY =3D False
CSRF_COOKIE_NAME =3D 'csrftoken'
CSRF_COOKIE_PATH =3D '/'
CSRF_COOKIE_SAMESITE =3D 'Lax'
CSRF_COOKIE_SECURE =3D False
CSRF_FAILURE_VIEW =3D 'django.views.csrf.csrf_failure'
CSRF_HEADER_NAME =3D 'HTTP_X_CSRFTOKEN'
CSRF_TRUSTED_ORIGINS =3D []
CSRF_USE_SESSIONS =3D False
DATABASES =3D {'default': {'ENGINE': 'django.db.backends.mysql', 'NAME':
'mailman3web', 'USER': 'mailman3web', 'PASSWORD':
'********************', 'HOST': 'localhost', 'PORT': '', 'OPTIONS':
{'init_command': "SET sql_mode=3D'STRICT_TRANS_TABLES'"},
'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0,
'TIME_ZONE': None, 'TEST': {'CHARSET': None, 'COLLATION': None,
'MIGRATE': True, 'MIRROR': None, 'NAME': None}}}
DATABASE_ROUTERS =3D []
DATA_UPLOAD_MAX_MEMORY_SIZE =3D 2621440
DATA_UPLOAD_MAX_NUMBER_FIELDS =3D 1000
DATA_UPLOAD_MAX_NUMBER_FILES =3D 100
DATETIME_FORMAT =3D 'N j, Y, P'
DATETIME_INPUT_FORMATS =3D ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f',
'%Y-%m-%d %H:%M', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y
%H:%M', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M']
DATE_FORMAT =3D 'N j, Y'
DATE_INPUT_FORMATS =3D ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y',
'%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B
%Y', '%d %B, %Y']
DEBUG =3D False
DEBUG_PROPAGATE_EXCEPTIONS =3D False
DECIMAL_SEPARATOR =3D '.'
DEFAULT_AUTO_FIELD =3D 'django.db.models.AutoField'
DEFAULT_CHARSET =3D 'utf-8'
DEFAULT_EXCEPTION_REPORTER =3D 'django.views.debug.ExceptionReporter'
DEFAULT_EXCEPTION_REPORTER_FILTER =3D
'django.views.debug.SafeExceptionReporterFilter'
DEFAULT_FILE_STORAGE =3D 'django.core.files.storage.FileSystemStorage'
DEFAULT_FROM_EMAIL =3D 'postorius(a)giesler.za.net'
DEFAULT_HASHING_ALGORITHM =3D 'sha256'
DEFAULT_INDEX_TABLESPACE =3D ''
DEFAULT_TABLESPACE =3D ''
DISALLOWED_USER_AGENTS =3D []
EMAILNAME =3D 'giesler.za.net'
EMAIL_BACKEND =3D 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST =3D 'localhost'
EMAIL_HOST_PASSWORD =3D '********************'
EMAIL_HOST_USER =3D ''
EMAIL_PORT =3D 25
EMAIL_SSL_CERTFILE =3D None
EMAIL_SSL_KEYFILE =3D '********************'
EMAIL_SUBJECT_PREFIX =3D '[Django] '
EMAIL_TIMEOUT =3D None
EMAIL_USE_LOCALTIME =3D False
EMAIL_USE_SSL =3D False
EMAIL_USE_TLS =3D False
FILE_UPLOAD_DIRECTORY_PERMISSIONS =3D None
FILE_UPLOAD_HANDLERS =3D
['django.core.files.uploadhandler.MemoryFileUploadHandler',
'django.core.files.uploadhandler.TemporaryFileUploadHandler']
FILE_UPLOAD_MAX_MEMORY_SIZE =3D 2621440
FILE_UPLOAD_PERMISSIONS =3D 420
FILE_UPLOAD_TEMP_DIR =3D None
FILTER_VHOST =3D False
FIRST_DAY_OF_WEEK =3D 0
FIXTURE_DIRS =3D []
FORCE_SCRIPT_NAME =3D None
FORMAT_MODULE_PATH =3D None
FORM_RENDERER =3D 'django.forms.renderers.DjangoTemplates'
HAYSTACK_CONNECTIONS =3D {'default': {'ENGINE':
'haystack.backends.whoosh_backend.WhooshEngine', 'PATH':
'/var/lib/mailman3/web/fulltext_index'}}
HOSTNAME =3D 'localhost.local'
IGNORABLE_404_URLS =3D []
INSTALLED_APPS =3D "('hyperkitty', 'postorius', 'django_mailman3',
'django.contrib.admin', 'django.contrib.auth',
'django.contrib.contenttypes', 'django.contrib.sessions',
'django.contrib.sites', 'django.contrib.messages',
'django.contrib.staticfiles', 'rest_framework', 'django_gravatar',
'compressor', 'haystack', 'django_extensions', 'django_q', 'allauth',
'allauth.account', 'allauth.socialaccount',
'django_mailman3.lib.auth.fedora')"
INTERNAL_IPS =3D []
LANGUAGES =3D [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ar-dz',
'Algerian Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg',
'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'),
('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'),
('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el',
'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb',
'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar',
'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx',
'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve',
'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa',
'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'),
('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he',
'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper
Sorbian'), ('hu', 'Hungarian'), ('hy', 'Armenian'), ('ia',
'Interlingua'), ('id', 'Indonesian'), ('ig', 'Igbo'), ('io', 'Ido'),
('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka',
'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'),
('kn', 'Kannada'), ('ko', 'Korean'), ('ky', 'Kyrgyz'), ('lb',
'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk',
'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr',
'Marathi'), ('my', 'Burmese'), ('nb', 'Norwegian Bokm=C3=A5l'), ('ne',
'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os',
'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'),
('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru',
'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'),
('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'),
('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('tg', 'Tajik'),
('th', 'Thai'), ('tk', 'Turkmen'), ('tr', 'Turkish'), ('tt', 'Tatar'),
('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('uz', 'Uzbek'),
('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant',
'Traditional Chinese')]
LANGUAGES_BIDI =3D ['he', 'ar', 'ar-dz', 'fa', 'ur']
LANGUAGE_CODE =3D 'en-za'
LANGUAGE_COOKIE_AGE =3D None
LANGUAGE_COOKIE_DOMAIN =3D None
LANGUAGE_COOKIE_HTTPONLY =3D False
LANGUAGE_COOKIE_NAME =3D 'django_language'
LANGUAGE_COOKIE_PATH =3D '/'
LANGUAGE_COOKIE_SAMESITE =3D None
LANGUAGE_COOKIE_SECURE =3D False
LOCALE_PATHS =3D []
LOGGING =3D {'version': 1, 'disable_existing_loggers': False, 'filters':
{'require_debug_false': {'()': 'django.utils.log.RequireDebugFalse'}},
'handlers': {'mail_admins': {'level': 'ERROR', 'filters':
['require_debug_false'], 'class': 'django.utils.log.AdminEmailHandler'},
'file': {'level': 'INFO', 'class':
'logging.handlers.RotatingFileHandler', 'filename':
'/var/log/mailman3/web/mailman-web.log', 'formatter': 'verbose'},
'console': {'class': 'logging.StreamHandler', 'formatter': 'simple'}},
'loggers': {'django.request': {'handlers': ['mail_admins', 'file'],
'level': 'INFO', 'propagate': True}, 'django': {'handlers': ['file'],
'level': 'INFO', 'propagate': True}, 'hyperkitty': {'handlers':
['file'], 'level': 'INFO', 'propagate': True}, 'postorius': {'handlers':
['file'], 'level': 'INFO', 'propagate': True}}, 'formatters':
{'verbose': {'format': '%(levelname)s %(asctime)s %(process)d %(name)s
%(message)s'}, 'simple': {'format': '%(levelname)s %(message)s'}}}
LOGGING_CONFIG =3D 'logging.config.dictConfig'
LOGIN_REDIRECT_URL =3D 'list_index'
LOGIN_URL =3D 'account_login'
LOGOUT_REDIRECT_URL =3D None
LOGOUT_URL =3D 'account_logout'
MAILMAN_ARCHIVER_FROM =3D "('127.0.0.1', '::1')"
MAILMAN_ARCHIVER_KEY =3D '********************'
MAILMAN_REST_API_PASS =3D '********************'
MAILMAN_REST_API_URL =3D '********************'
MAILMAN_REST_API_USER =3D '********************'
MANAGERS =3D []
MEDIA_ROOT =3D ''
MEDIA_URL =3D '/'
MESSAGE_STORAGE =3D
'django.contrib.messages.storage.fallback.FallbackStorage'
MESSAGE_TAGS =3D {40: 'danger'}
MIDDLEWARE =3D "('django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django.middleware.security.SecurityMiddleware',
'django_mailman3.middleware.TimezoneMiddleware',
'postorius.middleware.PostoriusMiddleware')"
MIGRATION_MODULES =3D {}
MONTH_DAY_FORMAT =3D 'F j'
NUMBER_GROUPING =3D 0
PASSWORD_HASHERS =3D '********************'
PASSWORD_RESET_TIMEOUT =3D '********************'
PASSWORD_RESET_TIMEOUT_DAYS =3D '********************'
POSTORIUS_TEMPLATE_BASE_URL =3D 'http://localhost/mailman3/'
PREPEND_WWW =3D False
Q_CLUSTER =3D {'timeout': 300, 'save_limit': 100, 'orm': 'default',
'poll': 5}
ROOT_URLCONF =3D 'urls'
SECRET_KEY =3D '********************'
SECURE_BROWSER_XSS_FILTER =3D False
SECURE_CONTENT_TYPE_NOSNIFF =3D True
SECURE_HSTS_INCLUDE_SUBDOMAINS =3D False
SECURE_HSTS_PRELOAD =3D False
SECURE_HSTS_SECONDS =3D 0
SECURE_PROXY_SSL_HEADER =3D None
SECURE_REDIRECT_EXEMPT =3D []
SECURE_REFERRER_POLICY =3D 'same-origin'
SECURE_SSL_HOST =3D None
SECURE_SSL_REDIRECT =3D False
SERVER_EMAIL =3D 'root(a)giesler.za.net'
SESSION_CACHE_ALIAS =3D 'default'
SESSION_COOKIE_AGE =3D 1209600
SESSION_COOKIE_DOMAIN =3D None
SESSION_COOKIE_HTTPONLY =3D True
SESSION_COOKIE_NAME =3D 'sessionid'
SESSION_COOKIE_PATH =3D '/'
SESSION_COOKIE_SAMESITE =3D 'Lax'
SESSION_COOKIE_SECURE =3D False
SESSION_ENGINE =3D 'django.contrib.sessions.backends.db'
SESSION_EXPIRE_AT_BROWSER_CLOSE =3D False
SESSION_FILE_PATH =3D None
SESSION_SAVE_EVERY_REQUEST =3D False
SESSION_SERIALIZER =3D
'django.contrib.sessions.serializers.PickleSerializer'
SETTINGS_MODULE =3D 'settings'
SHORT_DATETIME_FORMAT =3D 'm/d/Y P'
SHORT_DATE_FORMAT =3D 'm/d/Y'
SIGNING_BACKEND =3D 'django.core.signing.TimestampSigner'
SILENCED_SYSTEM_CHECKS =3D []
SITE_ID =3D 1
SOCIALACCOUNT_PROVIDERS =3D {}
STATICFILES_DIRS =3D '()'
STATICFILES_FINDERS =3D
"('django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
'compressor.finders.CompressorFinder')"
STATICFILES_STORAGE =3D
'django.contrib.staticfiles.storage.StaticFilesStorage'
STATIC_ROOT =3D '/var/lib/mailman3/web/static'
STATIC_URL =3D '/mailman3/static/'
TEMPLATES =3D [{'BACKEND':
'django.template.backends.django.DjangoTemplates', 'DIRS': [],
'APP_DIRS': True, 'OPTIONS': {'context_processors':
['django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.template.context_processors.csrf',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
'django_mailman3.context_processors.common',
'hyperkitty.context_processors.common',
'postorius.context_processors.postorius']}}]
TEST_NON_SERIALIZED_APPS =3D []
TEST_RUNNER =3D 'django.test.runner.DiscoverRunner'
THOUSAND_SEPARATOR =3D ','
TIME_FORMAT =3D 'P'
TIME_INPUT_FORMATS =3D ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
TIME_ZONE =3D 'Africa/Johannesburg'
USE_I18N =3D True
USE_L10N =3D True
USE_THOUSAND_SEPARATOR =3D False
USE_TZ =3D True
USE_X_FORWARDED_HOST =3D True
USE_X_FORWARDED_PORT =3D False
WSGI_APPLICATION =3D 'wsgi.application'
X_FRAME_OPTIONS =3D 'DENY'
YEAR_MONTH_FORMAT =3D 'F Y'
1 year, 7 months