[GH-ISSUE #1657] SPF parser failure #1303

Closed
opened 2026-02-27 11:16:25 +03:00 by kerem · 0 comments
Owner

Originally created by @tonioo on GitHub (Jan 18, 2019).
Original GitHub issue: https://github.com/modoboa/modoboa/issues/1657

Parser can fail because of extra space characters.

 File "/srv/modoboa/instance/manage.py", line 25, in <module>
    execute_from_command_line(sys.argv)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/subcommand/base.py", line 53, in run_from_argv
    return super(SubcommandCommand, self).run_from_argv(argv)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 330, in execute
    output = self.handle(*args, **options)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/subcommand/base.py", line 86, in handle
    return command.run_from_argv(argv)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 330, in execute
    output = self.handle(*args, **options)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/modoboa/admin/management/commands/subcommands/_mx.py", line 275, in handle
    self.check_domain(domain, **options)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/modoboa/admin/management/commands/subcommands/_mx.py", line 210, in check_domain
    domain, "spf", ttl)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/modoboa/dnstools/models.py", line 37, in get_or_create_for_domain
    record.check_syntax(ttl)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/modoboa/dnstools/models.py", line 74, in check_syntax
    result = func(self.value)
  File "/srv/modoboa/env/local/lib/python2.7/site-packages/modoboa/dnstools/lib.py", line 173, in check_spf_syntax
    if part[0] in ["+", "-", "~", "?"]:
IndexError: string index out of range
Originally created by @tonioo on GitHub (Jan 18, 2019). Original GitHub issue: https://github.com/modoboa/modoboa/issues/1657 Parser can fail because of extra space characters. ```python File "/srv/modoboa/instance/manage.py", line 25, in <module> execute_from_command_line(sys.argv) File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 364, in execute_from_command_line utility.execute() File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 356, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "/srv/modoboa/env/local/lib/python2.7/site-packages/subcommand/base.py", line 53, in run_from_argv return super(SubcommandCommand, self).run_from_argv(argv) File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 283, in run_from_argv self.execute(*args, **cmd_options) File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 330, in execute output = self.handle(*args, **options) File "/srv/modoboa/env/local/lib/python2.7/site-packages/subcommand/base.py", line 86, in handle return command.run_from_argv(argv) File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 283, in run_from_argv self.execute(*args, **cmd_options) File "/srv/modoboa/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 330, in execute output = self.handle(*args, **options) File "/srv/modoboa/env/local/lib/python2.7/site-packages/modoboa/admin/management/commands/subcommands/_mx.py", line 275, in handle self.check_domain(domain, **options) File "/srv/modoboa/env/local/lib/python2.7/site-packages/modoboa/admin/management/commands/subcommands/_mx.py", line 210, in check_domain domain, "spf", ttl) File "/srv/modoboa/env/local/lib/python2.7/site-packages/modoboa/dnstools/models.py", line 37, in get_or_create_for_domain record.check_syntax(ttl) File "/srv/modoboa/env/local/lib/python2.7/site-packages/modoboa/dnstools/models.py", line 74, in check_syntax result = func(self.value) File "/srv/modoboa/env/local/lib/python2.7/site-packages/modoboa/dnstools/lib.py", line 173, in check_spf_syntax if part[0] in ["+", "-", "~", "?"]: IndexError: string index out of range ```
kerem 2026-02-27 11:16:25 +03:00
  • closed this issue
  • added the
    bug
    label
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/modoboa-modoboa#1303
No description provided.