As Boulder is coded in Go and I didn’t find any Boulder-specific code to load a PEM file, I guess it “just” uses the Go routines for PEM handeling:
getLine results the first \r\n or \n delineated line from the given byte array. The line does not include trailing whitespace or the trailing new line bytes. The remainder of the byte array (also not including the new line bytes) is also returned and this will always be smaller than the original argument.
This would mean that Go, in contrast of RFC 7468, does not accept "
\r only" newlines. Fortunately, not many systems use
\r newlines, the first thing that comes close is “classic Mac OS” (pre-Mac OS X versions).