There are a couple of new sfcb.cfg properties: * sslDhParamsFilePath supports the use of an external Diffie Hellman (DH) parameters file, and sslEcDhCurveName allows the user to set the "curve name" for Elliptic Curve Diffie Hellman (ECDH) key generation. These options can be used with openssl cipher suites supporting "ephemeral" Diffie Hellman (DHE) key exchange algorithms. Ephemeral key exchange enhances security by decoupling the private key used to generate the session key, from the private key associated with the server certificate. This provides "forward secrecy" while maintaining a key exchange algorithm compatible with a conventional RSA-based server certificate. See the .cfg file comments for more info. * SFCB_LABELPROCS Perhaps the most fun new feature is SFCB_LABELPROCS. This will label each SFCB process by adding some identifying information to the cmdline so that it appears in 'ps' output. This provides an easy way to identify each running SFCB process without having to rely on the "sfcb-ps.sh" or "sfcbproc" utilities. This really enhances visibility and is a great troubleshooting tool. Further, when using the ps command's -T or H options, you can see a labeled view with thread-level granularity, which is something you can't really do with "sfcb-ps.sh" or "sfcbproc". (Individual threads are not labeled per se; that is, each thread of a process has the same label. But you can easily see which threads belong to which process, and you can see the individual thread ids for each.) For example, before starting sfcb: $ export SFCB_LABELPROCS=100 Get a view of running sfcb processes: $ watch 'ps -efT H | grep sfcb[d]' Thanks to all who contributed to this release, especially Chris who fixed up the SFCC issues and Klaus Kampf who made a big contribution to LABELPROCS. New features for 1.4.8 For new features: There is new config property * enableSslCipherServerPref which allows a fine adjustment in the selection of cipher suite on the connection, by enforcing the server's order of preference instead of the client's (as is the case by default). In general, the selection of cipher suite is determined by the openssl library based on the "cipher list" provided to the client and the server. SFCB's cipher list is set using the "sslCiphers" config property. Remember, you can use the openssl "s_client" tool to check the actual cipher used on the connection, for a given configuration at client and server. See the .cfg file comments for more info. There a a couple of new properties to control the behavior of the indication sender: * indicationCurlUseExpect100 and * indicationCurlHonorRedirect. This will have little or no impact for most environments but users should be aware we shut off curl's use of the HTTP Expect:100-continue by default. This eliminates a short delay on indication send that is not desirable unless Expect:100-continue behavior is really being used. For those who do rely on this behavior it can be reenabled with indicationCurlUseExpect100. It can be useful in conjunction with HTTP redirect, for example, which can now be enabled via the indicationCurlHonorRedirect property. See https://sourceforge.net/p/sblim/sfcb-tix/101/ for more info. On the aforementioned improvements: SFCB tix #94 is an attempt to reduce the likelihood of shutdown hang due to an inter-thread signal being missed, as can happen if shutdown occurs under particularly gnarly conditions. #95 is a tweak that tends to prevent a (benign but) annoying core dump at the end of shutdown. #89 improves providerDvr's handling and recovery when providers crash, making a req handler less likely to hang. And #96 is an attempt to also not hang a req handler when there is a request outstanding at shutdown, which can in fact hang the whole shutdown. Because these changes reduce but do not entirely eliminate the possibility of a req handler hang, it is determined we ultimately need some sort of configurable req handler timeout. This is under development but will have to wait until the next release! Watch this space for updates: https://sourceforge.net/p/sblim/sfcb-tix/97/. Thanks to Klaus from Novell for goals/assists on all of the new shutdown patches! And thanks to the others who contributed to this release.