Okay, thanks! On Sat, Jun 27, 2015 at 4:05 PM, Eli Zaretskii wrote: > > From: lo2net > > Date: Sat, 27 Jun 2015 11:55:43 +0800 > > > > I've got a problem: when using (gnutls-negotiate :verify-error t) to > initialize a SSL/TLS > > connection , server has an expired certificate cause gnutls-boot signal > > an error "Invalid format operation %u", apparently it's not related to > > gnutls-error. So digging into the source > > code, here is the error signal: > > > > src/gnutls.c:1511 > > > > if (verify_error_all > > || !NILP (Fmember (QCgnutls_bootprop_trustfiles, > verify_error))) > > { > > emacs_gnutls_deinit (proc); > > error ("Certificate validation failed %s, verification code %u", > > c_hostname, peer_verification); > > } > > > > After checking elisp manual and source code, function Fformat(error call > > it to format string) does not > > support '%u', here should using '%d' instead. > > > > I made a simple patch for this: > > Thanks. I used %x instead of %d in the change I just pushed, because > the peer_verification value is actually a bitwise OR of the various > bits, so displaying it in hex will make its interpretation easier. > > With that, I'm marking this bug done. >