FCALL(3) FCALL(3)
NAME
fcall - recreate packet delimiters
SYNOPSIS
Fctlfd = open(".../ctl", ORDWR);
Fwrite(ctlfd, "push fcall", 10);
DESCRIPTION
Fcall is a stream module (see stream(3)) that can be pushed
onto a connection to a 9P file server. The function of the
module is to recreate packet delimiters lost in transmis-
sion. The 9P protocol demands that network connections pre-
serve delimiters between messages written to the file
server. Stream based protocols, like TCP, are unable to
preserve delimiters. The delimiters must be recreated by the
receiver before a packet is read by a file system.
Fcall examines a data stream and identifies 9P messages from
their type. The length of the message is computed from the
header. Data is collected and buffered by the stream module
until an entire 9P message has been assembled. A single mes-
sage is then delimited and sent upstream to be read by a
file server.
SEE ALSO
stream(3), ip(3), exportfs(4), srv(4)
SOURCE
/sys/src/9/port/stfcall.c
Page 1 Plan 9 (printed 10/26/25)