I do apologize if the title question sounds a bit daft, but it's not something that is easy to google.

I am trying to create a program in C that uses a covert channel to hide information in the ISN of the TCP header. The plaintext needs to be encrypted before being hidden the ISN, and according to the paper I'm basing my program on it has to be a variable length block cipher:

To achieve freshness, while allowing each packet to be decrypted independently, the plaintext is xored with a hash of other header fields (not including the IP ID, which is derived from the ISN), then encrypted with a variable length block cipher.
What makes a variable length block cipher special, and is it the same as a Variable-Length Key Block Cipher like Blowfish?

If not what is an example I can use in my program?

Thanks in advance!