glenda.party
term% ls -F
term% cat index.txt
VENTI-ZERO(2)                 System Calls Manual                VENTI-ZERO(2)

NAME
       vtzerotruncate, vtzeroextend, vtzeroscore - Venti block truncation

SYNOPSIS
       #include <u.h>
       #include <libc.h>
       #include <venti.h>

       uint vtzerotruncate(int type, uchar *buf, uint size)

       void vtzeroextend(int type, uchar *buf, uint size, uint newsize)

       extern uchar vtzeroscore[VtScoreSize];

DESCRIPTION
       These utility functions compute how to truncate or replace trailing ze‐
       ros  (for  data blocks) or trailing zero scores (for pointer blocks) to
       canonicalize the blocks before storing them to Venti.

       Vtzerotruncate returns the size of the size-byte buffer pointed  to  by
       buf  ignoring  trailing  zeros  or  zero scores, according to the given
       type.

       Vtzeroextend pads buf with zeros or zero scores, according to the given
       type, to grow it from size bytes to newsize bytes.

       Vtzeroscore is the score of the zero-length block.

SOURCE
       /sys/src/libventi/zero.c
       /sys/src/libventi/zeroscore.c

SEE ALSO
       venti(2), venti(6)

                                                                 VENTI-ZERO(2)