Commit Graph

211582 Commits

Author SHA1 Message Date
tron
40d1cacf4a Postfix 2.8.11 was imported. 2012-06-09 12:39:53 +00:00
tron
03f0339393 Resolve conflicts from last import. 2012-06-09 11:32:19 +00:00
tron
b26355a362 Import Postfix 2.8.11. Changes since version 2.8.8:
- The "change header" milter request could replace the wrong header. A long
  header name could match a shorter one, because a length check was done on
  the wrong string. Reported by Vladimir Vassiliev.
- Core dump when postlog emitted the "usage" message, caused by an extraneous
  null assignment. Reported by Kant (fnord.hammer).
- These releases add support to turn off the TLSv1.1 and TLSv1.2 protocols.
  Introduced with OpenSSL version 1.0.1, these protocols are known to cause
  inter-operability problems, for example with some hotmail services.
  The radical workaround is to temporarily turn off problematic protocols
  globally:

	/etc/postfix/main.cf:
	    smtp_tls_protocols = !SSLv2, !TLSv1.1, !TLSv1.2
	    smtp_tls_mandatory_protocols = !SSLv2, !TLSv1.1, !TLSv1.2

	    smtpd_tls_protocols = !SSLv2, !TLSv1.1, !TLSv1.2
	    smtpd_tls_mandatory_protocols = !SSLv2, !TLSv1.1, !TLSv1.2

  However, it may be better to temporarily turn off problematic protocols for
  broken sites only:

	/etc/postfix/main.cf:
	    smtp_tls_policy_maps = hash:/etc/postfix/tls_policy

	/etc/postfix/tls_policy:
	    example.com         may protocols=!SSLv2:!TLSv1.1:!TLSv1.2

  Notes:

  Note the use of ":" instead of comma or space. Also, note that there is NO
  space around the "=" in "protocols=".

  The smtp_tls_policy_maps lookup key must match the "next-hop" destination
  that is given to the Postfix SMTP client. If you override the next-hop
  destination with transport_maps, relayhost, sender_dependent_relayhost_maps,
  or otherwise, you need to specify the same destination for the
  smtp_tls_policy_maps lookup key.
- OpenSSL related (all supported Postfix versions).
  Some people have reported program crashes when the OpenSSL library was
  updated while Postfix was accessing the Postfix TLS session cache. To avoid
  this, the Postfix TLS session cache ID now includes the OpenSSL library
  version number. This cache ID is not shared via the network.
- The OpenSSL workaround introduced with the previous stable and legacy
  releases did not compile with older gcc compilers. These compilers can't
  handle #ifdef inside a macro invocation (NOT: definition).
- To avoid repeated warnings from postscreen(8) with "connect to
  private/dnsblog service: Connection refused" on FreeBSD, the dnsblog(8)
  daemon now uses the single_server program driver instead of the multi_server
  driver. This one-line code change has no performance impact for other
  systems, and eliminates a high-frequency accept() race on a shared socket
  that appears to cause trouble on FreeBSD. The same single_server program
  driver has proven itself for many years in smtpd(8). Problem reported by
  Sahil Tandon.
- Laptop-friendly support (all supported Postfix versions). A little-known
  secret is that Postfix has always had support to avoid unnecessary disk
  spin-up for MTIME updates, by doing s/fifo/unix/ in master.cf (this is
  currently not supported on Solaris systems). However, two minor fixes are
  needed to make this bullet-proof.
- In laptop-friendly mode, the "postqueue -f" and "sendmail -q" commands did
  not wait until their requests had reached the pickup and qmgr servers before
  closing their UNIX-domain request sockets.
- In laptop-friendly mode, the unused postkick command waited for more than
  a minute because the event_drain() function was comparing bitmasks
  incorrectly on systems with kqueue(2), epoll(2) or /dev/poll support.
2012-06-09 11:26:39 +00:00
martin
4988efdfdc Add missing terminfo 2012-06-09 09:22:21 +00:00
wiz
700d2dc09a Drop trailing whitespace. 2012-06-09 08:22:14 +00:00
mlelstv
b416153514 autodiscover wedges 2012-06-09 06:20:45 +00:00
mlelstv
d1c48dff5a Close file descriptor passed into the kernel on success.
Fix locking of file handle. More cleanup on error paths.
Keep track of CCBs, so they cannot be used after a session ends.
Handle CCB timeouts even when the connection is terminated.
Compute firstdata, firstimmed correctly.
2012-06-09 06:19:58 +00:00
christos
d7fc161785 mention RLIMIT_NTHR 2012-06-09 02:57:11 +00:00
christos
847d309682 Remove debugging. 2012-06-09 02:55:32 +00:00
christos
8af1ed165c support RLIMIT_NTHR 2012-06-09 02:50:43 +00:00
christos
426530cc5c support RLIMIT_NTHR. 2012-06-09 02:49:48 +00:00
christos
679d94d80d document kern.maxlwp and kern.uidinfo.* 2012-06-09 02:47:18 +00:00
christos
4b9b559fe8 describe RLIMIT_NTHR 2012-06-09 02:36:25 +00:00
christos
0461089547 Add a new resource to limit the number of lwps per user, RLIMIT_NTHR. There
is a global sysctl kern.maxlwp to control this, which is by default 2048.
The first lwp of each process or kernel threads are not counted against the
limit. To show the current resource usage per user, I added a new sysctl
that dumps the uidinfo structure fields.
2012-06-09 02:31:14 +00:00
matt
e7841c4a22 Compute softintr mask correctly. 2012-06-08 23:35:23 +00:00
gdt
7f453cf715 Simply use the ifa_addr pointer, rather than taking its address.
Resolves failure to match addresses in SIOC[GD]LIFADDR calls.
Diagnosis and fix is due to Mark Keaton of BBN.
2012-06-08 15:01:51 +00:00
jdf
e68bb1b900 Change name of author from Nudleman to Nudelman.
See less(1) or http://en.wikipedia.org/wiki/Less_(Unix) for reference.
Patch provided by Bug Hunting
2012-06-08 12:39:42 +00:00
abs
7d974f9a82 ANSI prototypes 2012-06-08 11:13:33 +00:00
martin
fcbf6c86a2 If we build several kernel (variants) within the same build directory, bad
things may happen in a parallel build - especially with rules like the
automatic size adjustment for SYMTAB_SPACE, see long standing failure of
evbarm on the build cluster.
Easy fix: .WAIT for each config to complete, before going on with the
next. Low impact, only minor loss of paralellism, and only in cases where
needed.
2012-06-08 08:56:45 +00:00
martin
4df6c44b48 Henning Petersen in PR lib/46561: cosmetic change: avoid self assignement. 2012-06-08 07:54:14 +00:00
dsl
8ec6b592a7 Fix type of variable passed to sysctl (int -> bool). 2012-06-08 07:53:41 +00:00
martin
5d7ba3d813 Henning Petersen in PR lib/46560: fix memory leak in error path 2012-06-08 07:49:42 +00:00
martin
b0ac20cc38 Degrade all intermediate failures due to memory/resource shortage to
"skip" instead of "fail" - only if we get through to the real meat, we
can tell wether mlockall/mincore work or not.
2012-06-08 07:18:58 +00:00
rkujawa
c0da2f8bbc Regen configs. 2012-06-07 23:32:47 +00:00
rkujawa
661b5de9c5 Enable empb in GENERIC, fix build, rearrange files.amiga. 2012-06-07 23:30:52 +00:00
mlelstv
c6cfd0f5c9 Use the label's packname to create wedge names instead of the classic
device names. Fall back to classic device names when the label has an
empty name or the default name 'fictitious'.
2012-06-07 16:15:31 +00:00
sborrill
469cc9aebf Fix problem where devices with ID 0 were skipped as invalid as it didn't
distinguish between numerical zero and invalid numeric string.
2012-06-07 14:05:13 +00:00
martin
fd9e5c02e3 Revert previous - instead of guessing the amount of needed memory locked
limits (often way too high) and skipping the test case if in doubt,
raise the limits as far as we can, and fix a few places in the test where
we could run into the limits and either skip or fail with a reasonable
message.
2012-06-07 09:59:51 +00:00
macallan
aec4f24986 fix same thinko as in previous commit, in have_pending_intr_p() 2012-06-07 04:37:09 +00:00
macallan
3add50773b look at the right cpu_softints bits in pic_do_pending_int()
so we call the right softint handlers
2012-06-07 02:39:22 +00:00
agc
cdb443ca36 Fix a typo 2012-06-07 01:01:12 +00:00
kiyohara
51eeb5bd58 Fix can't assign IPv6 address. Valiable error resets to 0, if error == ENETRESET in aumac_ioctl(). 2012-06-07 00:19:29 +00:00
rkujawa
023a713015 mention empb(4). 2012-06-06 23:59:17 +00:00
rmind
e75fa0930a Few fixes for Xen:
- cpu_load_pmap: use atomic kcpuset(9) operations; fixes rare crashes.
- Add kcpuset_copybits(9) and replace xen_kcpuset2bits().  Avoids incorrect
  ncpu problem in early boot.  Also, micro-optimises xen_mcast_invlpg() and
  xen_mcast_tlbflush() routines.

Tested by chs@.
2012-06-06 22:22:41 +00:00
martin
c1004a7836 Add a basic test for infocmp - this would have cought todays terminfo
lossage (PR lib/46553).
2012-06-06 21:23:10 +00:00
skrll
3d01a076bd Provide generic a[24]x bus_space methods (aNx is normal access, offset
multipled by N).

Use the generic method and delete the other versions.

Discussed with matt@
2012-06-06 20:21:43 +00:00
joerg
2f2f99b48a Relax consistency to make it possible to match valid entries. 2012-06-06 13:36:58 +00:00
martin
ba2b54cf0d Henning Petersen in PR kern/46552: include cosmetics 2012-06-06 11:20:21 +00:00
matt
a9e4a2ff57 Make sure va_end is used even when errors are encountered. 2012-06-06 05:10:54 +00:00
christos
c7a09b1276 rcsid, warns 2012-06-06 00:34:32 +00:00
christos
92dd06985f WARNS=4 2012-06-06 00:33:45 +00:00
wiz
aa7b8d55e1 Sort sections; remove trailing whitespace. 2012-06-06 00:28:02 +00:00
christos
1a812b26a7 add colorbars 2012-06-06 00:16:01 +00:00
christos
5f2f756c3f new colorbars program from Nathanial Sloss 2012-06-06 00:13:36 +00:00
jym
57d7988f76 Now that pool_cache_invalidate() is synchronous and can handle per-CPU
caches, merge together pool_drain_start() and pool_drain_end() into

bool pool_drain(struct pool **ppp);

"bool" value indicates whether reclaiming was fully done (true) or not (false)
"ppp" will contain a pointer to the pool that was drained (optional).

See http://mail-index.netbsd.org/tech-kern/2012/06/04/msg013287.html
2012-06-05 22:51:47 +00:00
rmind
288782db86 npf_state_tcp: add an assert; fix some comments while here. 2012-06-05 22:46:54 +00:00
jym
ca40366292 As pool reclaiming is unlikely to happen at interrupt or softint
context, re-enable the portion of code that allows invalidation of CPU-bound
pool caches.

Two reasons:
- CPU cached objects being invalidated, the probability of fetching an
obsolete object from the pool_cache(9) is greatly reduced. This speeds up
pool_cache_get() quite a bit as it does not have to keep destroying objects
until it finds an updated one when an invalidation is in progress.

- for situations where we have to ensure that no obsolete object remains
after a state transition (canonical example: pmap mappings between Xen VM
restoration), invalidating all pool_cache(9) is the safest way to go.

As it uses xcall(9) to broadcast the execution of pool_cache_transfer(),
pool_cache_invalidate() cannot be called from interrupt or softint context
(scheduling a xcall(9) can put a LWP to sleep).

pool_cache_xcall() => pool_cache_transfer() to reflect its use.

Invalidation being a costly process (1000s objects may be destroyed),
all places where pool_cache_invalidate() may be called from
interrupt/softint context will now get caught by the proper KASSERT(), and
fixed. Ping me when you see one.

Tested under i386 and amd64 by running ATF suite within 64MiB HVM
domains (tried triggering pgdaemon a few times).

No objection on tech-kern@.

XXX a similar fix has to be pulled up to NetBSD-6, but with a more
conservative approach.

See http://mail-index.netbsd.org/tech-kern/2012/05/29/msg013245.html
2012-06-05 22:28:11 +00:00
rmind
533522e2c8 Add hash_list_size() and simplify slightly. 2012-06-05 20:51:36 +00:00
riastradh
6ebd147b51 Attribute the `Consequences, Schmonsequences...' quote to Daffy Duck. 2012-06-05 19:35:44 +00:00
christos
a480a96956 Open and write to ttys using non-blocking I/O to prevent DoS when hardware
or software flow control prevents tty writes or when the tty line is too
slow to respond.
2012-06-05 19:33:17 +00:00