GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
OpenXPKI::Transport::Simple(3) User Contributed Perl Documentation OpenXPKI::Transport::Simple(3)

OpenXPKI::Transport::Simple - basic transport protocol.

This is the interface specification for all common OpenXPKI transport protocol implementations. Please note that every read operation returns an interpretable answer. We do not return partial messages.

To handle utf8 transparently, we assume that data stream are always utf8 sequences. Therefore the transport will corrupt data that might be missinterpreted by the utf8::upgrade pragma and we strongly recommend to base64 encode all data that is neither UTF8 nor plain ASCII!

accepts only INFILE and OUTFILE as parameters. It takes over the complete communication via STDIN and STDOUT. If INFILE is specified then messages are written to INFILE instead of STDIN. If OUTFILE is present than messages are read from OUTFILE instead of STDOUT.

Example:

my $transport = OpenXPKI::Transport::Simple->new ({});

close the connection and calls DESTROY.

send a message.

read a message.

A header is added to the data to correctly handle reading from the socket.

The header has a fixed format::

  type::=final
  length::=12345678
  <data>

The default type is final, which means this is the last message (most times the only one) and all data was transmitted after this package was read. If the data is too large to fit into a single package, it is splitted into several parts, each one with the maximum allowed size. Those intermediate packages are transmitted wit the type set to chunk.

The maximum allowed size is a fixed value of 1048544 bytes (2^20 - 32). The 32 bytes are sufficient to place the header, so the total size is always below 1MB.

The length of the raw data portion in bytes, to ease parsing this is always written with 8 digit using decimal notation.
2022-05-14 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.