| commit | 4be5f77f672a3a9f1bbf3c935fb0ea8b3f86ce61 | [log] [tgz] |
|---|---|---|
| author | Victor Hugo Vianna Silva <[email protected]> | Fri Oct 10 12:46:45 2025 |
| committer | Copybara-Service <[email protected]> | Sat Oct 11 12:57:41 2025 |
| tree | ac8a47fac188fd18c9655c214259daa3666b3d74 | |
| parent | 07bdfaa3dc852ea4d51d6bc725c9e3a08fea3601 [diff] |
libipp: Fix C++23 build errors No behavior change. Switch up the order of declarations and define methods out-of-line to prevent ~unique_ptr<T> from being instantiated before T is a complete type. BUG=chromium:388068055 TEST=Trivial refactor Change-Id: I8cc0994d06f716951265bf058ddfa5357ed910c7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform2/+/7030605 Commit-Queue: Victor Vianna <[email protected]> Auto-Submit: Victor Vianna <[email protected]> Reviewed-by: Aaron Massey <[email protected]> Tested-by: Victor Vianna <[email protected]> NOKEYCHECK=True GitOrigin-RevId: fb0b45e964ca95dc784d3608e74d1b90413de5d1
General C++ library for building and parsing IPP frames. IPP stands for Internet Printing Protocol and is defined in several documents. This implementation is based mainly on the following sources:
All required C++ classes, types and functions are declared in ipp namespace.
IPP frames are sent/received as a payload of HTTP POST requests/responses. This library helps to build and parse raw IPP frames, but does not support the HTTP protocol. You have to use some other library to process HTTP packages, like libbrillo or libcurl. You can also dump a raw IPP frame to a file and send it from the command line with curl, e.g.:
curl -X POST "http://my.server:631/mypath" --header "Content-Type: application/ipp" --data-binary @ipp.frame
Then obtained response can be read from the file and parsed by libipp.
In this documentation, the following typographical conventions are used:
monospace is used to mark entities from the source code.