Solstice X.25 9.2 Developer's Guide

12.7.2.3 Packet Size

Packet size is set in the Call Request packet as follows:

u_short sendpktsize, recvpktsize;
 /* set sendpktsize, recvpktsize to desired values */
 f.type = T_PACKET_SIZE;
 f.f_sendpktsize = sendpktsize;
 f.f_recvpktsize = recvpktsize;
 error = ioctl(s, X25_SET_FACILITY, &f);

It is read as follows:

f.type = T_PACKET_SIZE;
 error = ioctl(s, X25_GET_FACILITY, &f);
 sendpktsize = f.f_sendpktsize;
 recvpktsize = f.f_recvpktsize; 

Setting packet size in the Call Request causes the values set to be proposed for the call (a zero value indicates the default for the link). Reading the value after the call is set up yields the result of negotiation.

Packet sizes are set and read in bytes, so that, for example, 128, 256, and 512 are legal values.