Index: src/OFHTTPServer.h ================================================================== --- src/OFHTTPServer.h +++ src/OFHTTPServer.h @@ -91,12 +91,15 @@ */ @property OF_NULLABLE_PROPERTY (assign) id delegate; /*! * The server name the server presents to clients. + * + * Setting it to `nil` means no `Server` header will be sent, unless one is + * specified in the response headers. */ -@property (copy) OFString *name; +@property OF_NULLABLE_PROPERTY (copy) OFString *name; /*! * @brief Creates a new HTTP server. * * @return A new HTTP server Index: src/OFHTTPServer.m ================================================================== --- src/OFHTTPServer.m +++ src/OFHTTPServer.m @@ -223,13 +223,17 @@ [headers setObject: date forKey: @"Date"]; } - if ([headers objectForKey: @"Server"] == nil) - [headers setObject: [_server name] - forKey: @"Server"]; + if ([headers objectForKey: @"Server"] == nil) { + OFString *name = [_server name]; + + if (name != nil) + [headers setObject: name + forKey: @"Server"]; + } keyEnumerator = [headers keyEnumerator]; valueEnumerator = [headers objectEnumerator]; while ((key = [keyEnumerator nextObject]) != nil && (value = [valueEnumerator nextObject]) != nil)