[dovecot/core] 6dcef1: lib: fix illumos build issue

GitHub noreply at github.com
Wed Jan 3 16:30:16 EET 2018


  Branch: refs/heads/master-2.2
  Home:   https://github.com/dovecot/core
  Commit: 6dcef125112096389982e380dd993a5e04d62aff
      https://github.com/dovecot/core/commit/6dcef125112096389982e380dd993a5e04d62aff
  Author: Josef 'Jeff' Sipek <jeff.sipek at dovecot.fi>
  Date:   2018-01-03 (Wed, 03 Jan 2018)

  Changed paths:
    M src/lib/net.c

  Log Message:
  -----------
  lib: fix illumos build issue

The recent performance improvements to the net_addr2ip() code broke
build on illumos which has a 's_addr' #define in netinit/in.h.


  Commit: fc23281527aa1a769e21376166abb748ac753d55
      https://github.com/dovecot/core/commit/fc23281527aa1a769e21376166abb748ac753d55
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-01-03 (Wed, 03 Jan 2018)

  Changed paths:
    M src/lib/printf-format-fix.c
    M src/lib/test-printf-format-fix.c

  Log Message:
  -----------
  lib: printf_format_fix*() - Be over-strict in what format strings are allowed

The checks could have been bypassed by some invalid format strings that were
handled differently by the printf_format_fix*() code and libc. For example
"%**%n" was passed through as ok, but glibc handled the %n in it.

Found by cPanel Security Team.


  Commit: 121a4d1a3b11c4d76257fa944f8477a4ff006373
      https://github.com/dovecot/core/commit/121a4d1a3b11c4d76257fa944f8477a4ff006373
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-01-03 (Wed, 03 Jan 2018)

  Changed paths:
    M src/lib/printf-format-fix.c
    M src/lib/test-printf-format-fix.c

  Log Message:
  -----------
  lib: printf_format_fix*() - Use the same 4 digits as maximum precision length

I forgot the precision can also be used to truncate strings, not just
specify the precision for floating point numbers. So it makes more sense
that the limit is the same as for minimum field width.


  Commit: 95628fc1a54d3b9f1d82d1801c58d08f8a48f2f6
      https://github.com/dovecot/core/commit/95628fc1a54d3b9f1d82d1801c58d08f8a48f2f6
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-01-03 (Wed, 03 Jan 2018)

  Changed paths:
    M src/lib/printf-format-fix.c

  Log Message:
  -----------
  lib: printf_format_fix*() - Move minimum field width check to its own function


  Commit: b384d4cd92232fbd593e00e1388d9c0ee990b7b2
      https://github.com/dovecot/core/commit/b384d4cd92232fbd593e00e1388d9c0ee990b7b2
  Author: Timo Sirainen <timo.sirainen at dovecot.fi>
  Date:   2018-01-03 (Wed, 03 Jan 2018)

  Changed paths:
    M src/lib/printf-format-fix.c
    M src/lib/test-printf-format-fix.c

  Log Message:
  -----------
  lib: printf_format_fix*() - Support '*' in precision

We're commonly using "%.*s"


Compare: https://github.com/dovecot/core/compare/ded24730b700...b384d4cd9223


More information about the dovecot-cvs mailing list