mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 13:32:45 +00:00 
			
		
		
		
	LibCore: Remove all remaining C prefix references
LibCore's GZip is also moved into the Core namespace with this change.
This commit is contained in:
		
							parent
							
								
									4a271430f8
								
							
						
					
					
						commit
						57f1c919df
					
				
					 17 changed files with 42 additions and 34 deletions
				
			
		|  | @ -31,7 +31,7 @@ The service is advised to set this flag using [`fcntl`(2)](../man2/fcntl.md) and | |||
| unset `SOCKET_TAKEOVER` from the environment in order not to confuse its | ||||
| children. | ||||
| 
 | ||||
| LibCore provides `CLocalServer::take_over_from_system_server()` method that | ||||
| LibCore provides `Core::LocalServer::take_over_from_system_server()` method that | ||||
| performs the service side of the socket takeover automatically. | ||||
| 
 | ||||
| If a service is configured as *lazy*, SystemServer will actually listen on the | ||||
|  |  | |||
|  | @ -31,7 +31,9 @@ | |||
| #include <limits.h> | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| bool CGzip::is_compressed(const ByteBuffer& data) | ||||
| namespace Core { | ||||
| 
 | ||||
| bool Gzip::is_compressed(const ByteBuffer& data) | ||||
| { | ||||
|     return data.size() > 2 && data[0] == 0x1F && data[1] == 0x8b; | ||||
| } | ||||
|  | @ -102,7 +104,7 @@ static Optional<ByteBuffer> get_gzip_payload(const ByteBuffer& data) | |||
|     return data.slice(current, new_size); | ||||
| } | ||||
| 
 | ||||
| Optional<ByteBuffer> CGzip::decompress(const ByteBuffer& data) | ||||
| Optional<ByteBuffer> Gzip::decompress(const ByteBuffer& data) | ||||
| { | ||||
|     ASSERT(is_compressed(data)); | ||||
| 
 | ||||
|  | @ -145,3 +147,5 @@ Optional<ByteBuffer> CGzip::decompress(const ByteBuffer& data) | |||
| 
 | ||||
|     return destination; | ||||
| } | ||||
| 
 | ||||
| } | ||||
|  |  | |||
|  | @ -28,8 +28,12 @@ | |||
| #include <AK/Optional.h> | ||||
| #include <AK/String.h> | ||||
| 
 | ||||
| class CGzip { | ||||
| namespace Core { | ||||
| 
 | ||||
| class Gzip { | ||||
| public: | ||||
|     static bool is_compressed(const ByteBuffer& data); | ||||
|     static Optional<ByteBuffer> decompress(const ByteBuffer& data); | ||||
| }; | ||||
| 
 | ||||
| } | ||||
|  |  | |||
|  | @ -38,26 +38,26 @@ namespace Core { | |||
| static ByteBuffer handle_content_encoding(const ByteBuffer& buf, const String& content_encoding) | ||||
| { | ||||
| #ifdef CHTTPJOB_DEBUG | ||||
|     dbg() << "CHttpJob::handle_content_encoding: buf has content_encoding = " << content_encoding; | ||||
|     dbg() << "HttpJob::handle_content_encoding: buf has content_encoding = " << content_encoding; | ||||
| #endif | ||||
| 
 | ||||
|     if (content_encoding == "gzip") { | ||||
|         if (!CGzip::is_compressed(buf)) { | ||||
|             dbg() << "CHttpJob::handle_content_encoding: buf is not gzip compressed!"; | ||||
|         if (!Gzip::is_compressed(buf)) { | ||||
|             dbg() << "HttpJob::handle_content_encoding: buf is not gzip compressed!"; | ||||
|         } | ||||
| 
 | ||||
| #ifdef CHTTPJOB_DEBUG | ||||
|         dbg() << "CHttpJob::handle_content_encoding: buf is gzip compressed!"; | ||||
|         dbg() << "HttpJob::handle_content_encoding: buf is gzip compressed!"; | ||||
| #endif | ||||
| 
 | ||||
|         auto uncompressed = CGzip::decompress(buf); | ||||
|         auto uncompressed = Gzip::decompress(buf); | ||||
|         if (!uncompressed.has_value()) { | ||||
|             dbg() << "CHttpJob::handle_content_encoding: Gzip::decompress() failed. Returning original buffer."; | ||||
|             dbg() << "HttpJob::handle_content_encoding: Gzip::decompress() failed. Returning original buffer."; | ||||
|             return buf; | ||||
|         } | ||||
| 
 | ||||
| #ifdef CHTTPJOB_DEBUG | ||||
|         dbg() << "CHttpJob::handle_content_encoding: Gzip::decompress() successful.\n" | ||||
|         dbg() << "HttpJob::handle_content_encoding: Gzip::decompress() successful.\n" | ||||
|               << "  Input size = " << buf.size() << "\n" | ||||
|               << "  Output size = " << uncompressed.value().size(); | ||||
| #endif | ||||
|  | @ -81,7 +81,7 @@ void HttpJob::on_socket_connected() | |||
| { | ||||
|     auto raw_request = m_request.to_raw_request(); | ||||
| #if 0 | ||||
|     dbg() << "CHttpJob: raw_request:"; | ||||
|     dbg() << "HttpJob: raw_request:"; | ||||
|     dbg() << String::copy(raw_request).characters(); | ||||
| #endif | ||||
| 
 | ||||
|  | @ -97,18 +97,18 @@ void HttpJob::on_socket_connected() | |||
|                 return; | ||||
|             auto line = m_socket->read_line(PAGE_SIZE); | ||||
|             if (line.is_null()) { | ||||
|                 fprintf(stderr, "CHttpJob: Expected HTTP status\n"); | ||||
|                 fprintf(stderr, "HttpJob: Expected HTTP status\n"); | ||||
|                 return deferred_invoke([this](auto&) { did_fail(NetworkJob::Error::TransmissionFailed); }); | ||||
|             } | ||||
|             auto parts = String::copy(line, Chomp).split(' '); | ||||
|             if (parts.size() < 3) { | ||||
|                 fprintf(stderr, "CHttpJob: Expected 3-part HTTP status, got '%s'\n", line.data()); | ||||
|                 fprintf(stderr, "HttpJob: Expected 3-part HTTP status, got '%s'\n", line.data()); | ||||
|                 return deferred_invoke([this](auto&) { did_fail(NetworkJob::Error::ProtocolFailed); }); | ||||
|             } | ||||
|             bool ok; | ||||
|             m_code = parts[1].to_uint(ok); | ||||
|             if (!ok) { | ||||
|                 fprintf(stderr, "CHttpJob: Expected numeric HTTP status\n"); | ||||
|                 fprintf(stderr, "HttpJob: Expected numeric HTTP status\n"); | ||||
|                 return deferred_invoke([this](auto&) { did_fail(NetworkJob::Error::ProtocolFailed); }); | ||||
|             } | ||||
|             m_state = State::InHeaders; | ||||
|  | @ -119,7 +119,7 @@ void HttpJob::on_socket_connected() | |||
|                 return; | ||||
|             auto line = m_socket->read_line(PAGE_SIZE); | ||||
|             if (line.is_null()) { | ||||
|                 fprintf(stderr, "CHttpJob: Expected HTTP header\n"); | ||||
|                 fprintf(stderr, "HttpJob: Expected HTTP header\n"); | ||||
|                 return did_fail(NetworkJob::Error::ProtocolFailed); | ||||
|             } | ||||
|             auto chomped_line = String::copy(line, Chomp); | ||||
|  | @ -129,18 +129,18 @@ void HttpJob::on_socket_connected() | |||
|             } | ||||
|             auto parts = chomped_line.split(':'); | ||||
|             if (parts.is_empty()) { | ||||
|                 fprintf(stderr, "CHttpJob: Expected HTTP header with key/value\n"); | ||||
|                 fprintf(stderr, "HttpJob: Expected HTTP header with key/value\n"); | ||||
|                 return deferred_invoke([this](auto&) { did_fail(NetworkJob::Error::ProtocolFailed); }); | ||||
|             } | ||||
|             auto name = parts[0]; | ||||
|             if (chomped_line.length() < name.length() + 2) { | ||||
|                 fprintf(stderr, "CHttpJob: Malformed HTTP header: '%s' (%zu)\n", chomped_line.characters(), chomped_line.length()); | ||||
|                 fprintf(stderr, "HttpJob: Malformed HTTP header: '%s' (%zu)\n", chomped_line.characters(), chomped_line.length()); | ||||
|                 return deferred_invoke([this](auto&) { did_fail(NetworkJob::Error::ProtocolFailed); }); | ||||
|             } | ||||
|             auto value = chomped_line.substring(name.length() + 2, chomped_line.length() - name.length() - 2); | ||||
|             m_headers.set(name, value); | ||||
| #ifdef CHTTPJOB_DEBUG | ||||
|             dbg() << "CHttpJob: [" << name << "] = '" << value << "'"; | ||||
|             dbg() << "HttpJob: [" << name << "] = '" << value << "'"; | ||||
| #endif | ||||
|             return; | ||||
|         } | ||||
|  | @ -192,7 +192,7 @@ void HttpJob::start() | |||
|     m_socket = TCPSocket::construct(this); | ||||
|     m_socket->on_connected = [this] { | ||||
| #ifdef CHTTPJOB_DEBUG | ||||
|         dbg() << "CHttpJob: on_connected callback"; | ||||
|         dbg() << "HttpJob: on_connected callback"; | ||||
| #endif | ||||
|         on_socket_connected(); | ||||
|     }; | ||||
|  |  | |||
|  | @ -104,7 +104,7 @@ ByteBuffer IODevice::read(size_t max_size) | |||
| 
 | ||||
| bool IODevice::can_read_from_fd() const | ||||
| { | ||||
|     // FIXME: Can we somehow remove this once CSocket is implemented using non-blocking sockets?
 | ||||
|     // FIXME: Can we somehow remove this once Core::Socket is implemented using non-blocking sockets?
 | ||||
|     fd_set rfds; | ||||
|     FD_ZERO(&rfds); | ||||
|     FD_SET(m_fd, &rfds); | ||||
|  |  | |||
|  | @ -37,7 +37,7 @@ namespace Core { | |||
| LocalSocket::LocalSocket(int fd, Object* parent) | ||||
|     : Socket(Socket::Type::Local, parent) | ||||
| { | ||||
|     // NOTE: This constructor is used by CLocalServer::accept(), so the socket is already connected.
 | ||||
|     // NOTE: This constructor is used by LocalServer::accept(), so the socket is already connected.
 | ||||
|     m_connected = true; | ||||
|     set_fd(fd); | ||||
|     set_mode(IODevice::ReadWrite); | ||||
|  |  | |||
|  | @ -40,7 +40,7 @@ HashMap<pid_t, Core::ProcessStatistics> ProcessStatisticsReader::get_all() | |||
| { | ||||
|     auto file = Core::File::construct("/proc/all"); | ||||
|     if (!file->open(Core::IODevice::ReadOnly)) { | ||||
|         fprintf(stderr, "CProcessStatisticsReader: Failed to open /proc/all: %s\n", file->error_string()); | ||||
|         fprintf(stderr, "ProcessStatisticsReader: Failed to open /proc/all: %s\n", file->error_string()); | ||||
|         return {}; | ||||
|     } | ||||
| 
 | ||||
|  |  | |||
|  | @ -77,7 +77,7 @@ public: | |||
|         case Type::Local: | ||||
|             return m_local_address; | ||||
|         default: | ||||
|             return "[CSocketAddress]"; | ||||
|             return "[SocketAddress]"; | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|  |  | |||
|  | @ -33,7 +33,7 @@ namespace Core { | |||
| TCPSocket::TCPSocket(int fd, Object* parent) | ||||
|     : Socket(Socket::Type::TCP, parent) | ||||
| { | ||||
|     // NOTE: This constructor is used by CTCPServer::accept(), so the socket is already connected.
 | ||||
|     // NOTE: This constructor is used by TCPServer::accept(), so the socket is already connected.
 | ||||
|     m_connected = true; | ||||
|     set_fd(fd); | ||||
|     set_mode(IODevice::ReadWrite); | ||||
|  |  | |||
|  | @ -33,7 +33,7 @@ namespace Core { | |||
| UdpSocket::UdpSocket(int fd, Object* parent) | ||||
|     : Socket(Socket::Type::UDP, parent) | ||||
| { | ||||
|     // NOTE: This constructor is used by CUdpServer::accept(), so the socket is already connected.
 | ||||
|     // NOTE: This constructor is used by UdpServer::accept(), so the socket is already connected.
 | ||||
|     m_connected = true; | ||||
|     set_fd(fd); | ||||
|     set_mode(IODevice::ReadWrite); | ||||
|  |  | |||
|  | @ -69,7 +69,7 @@ int Application::exec() | |||
| { | ||||
|     int exit_code = m_event_loop->exec(); | ||||
|     // NOTE: Maybe it would be cool to return instead of exit()?
 | ||||
|     //       This would require cleaning up all the CObjects on the heap.
 | ||||
|     //       This would require cleaning up all the Core::Objects on the heap.
 | ||||
|     exit(exit_code); | ||||
|     return exit_code; | ||||
| } | ||||
|  |  | |||
|  | @ -95,7 +95,7 @@ void FileSystemModel::Node::traverse_if_needed(const FileSystemModel& model) | |||
|     auto full_path = this->full_path(model); | ||||
|     Core::DirIterator di(full_path, Core::DirIterator::SkipDots); | ||||
|     if (di.has_error()) { | ||||
|         fprintf(stderr, "CDirIterator: %s\n", di.error_string()); | ||||
|         fprintf(stderr, "DirIterator: %s\n", di.error_string()); | ||||
|         return; | ||||
|     } | ||||
| 
 | ||||
|  |  | |||
|  | @ -45,7 +45,7 @@ GFontDatabase::GFontDatabase() | |||
| { | ||||
|     Core::DirIterator di("/res/fonts", Core::DirIterator::SkipDots); | ||||
|     if (di.has_error()) { | ||||
|         fprintf(stderr, "CDirIterator: %s\n", di.error_string()); | ||||
|         fprintf(stderr, "DirIterator: %s\n", di.error_string()); | ||||
|         exit(1); | ||||
|     } | ||||
|     while (di.has_next()) { | ||||
|  |  | |||
|  | @ -176,7 +176,7 @@ bool copy_directory(String src_path, String dst_path) | |||
|     } | ||||
|     Core::DirIterator di(src_path, Core::DirIterator::SkipDots); | ||||
|     if (di.has_error()) { | ||||
|         fprintf(stderr, "cp: CDirIterator: %s\n", di.error_string()); | ||||
|         fprintf(stderr, "cp: DirIterator: %s\n", di.error_string()); | ||||
|         return false; | ||||
|     } | ||||
|     while (di.has_next()) { | ||||
|  |  | |||
|  | @ -44,7 +44,7 @@ static int handle_show_all() | |||
| { | ||||
|     Core::DirIterator di("/res/wallpapers", Core::DirIterator::SkipDots); | ||||
|     if (di.has_error()) { | ||||
|         fprintf(stderr, "CDirIterator: %s\n", di.error_string()); | ||||
|         fprintf(stderr, "DirIterator: %s\n", di.error_string()); | ||||
|         return 1; | ||||
|     } | ||||
| 
 | ||||
|  |  | |||
|  | @ -78,7 +78,7 @@ static int handle_show_all() | |||
| { | ||||
|     Core::DirIterator di("/proc/sys", Core::DirIterator::SkipDots); | ||||
|     if (di.has_error()) { | ||||
|         fprintf(stderr, "CDirIterator: %s\n", di.error_string()); | ||||
|         fprintf(stderr, "DirIterator: %s\n", di.error_string()); | ||||
|         return 1; | ||||
|     } | ||||
| 
 | ||||
|  |  | |||
|  | @ -75,7 +75,7 @@ off_t find_seek_pos(Core::File& file, int wanted_lines) | |||
|     off_t end = pos; | ||||
|     int lines = 0; | ||||
| 
 | ||||
|     // FIXME: Reading char-by-char is only OK if CIODevice's read buffer
 | ||||
|     // FIXME: Reading char-by-char is only OK if IODevice's read buffer
 | ||||
|     // is smart enough to not read char-by-char. Fix it there, or fix it here :)
 | ||||
|     for (; pos >= 0; pos--) { | ||||
|         file.seek(pos); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Shannon Booth
						Shannon Booth