ref: cce5422e79699bc71e6525d77dfc3d8a9f5b1b9d
dir: /sys/man/2/venti-zero/
.TH VENTI-ZERO 2 .SH NAME vtzerotruncate, vtzeroextend, vtzeroscore \- Venti block truncation .SH SYNOPSIS .ft L #include <u.h> .br #include <libc.h> .br #include <venti.h> .ta +\w'\fLuint 'u .PP .B uint vtzerotruncate(int type, uchar *buf, uint size) .PP .B void vtzeroextend(int type, uchar *buf, uint size, uint newsize) .PP .B extern uchar vtzeroscore[VtScoreSize]; .SH DESCRIPTION These utility functions compute how to truncate or replace trailing zeros (for data blocks) or trailing zero scores (for pointer blocks) to canonicalize the blocks before storing them to Venti. .PP .I Vtzerotruncate returns the size of the .IR size -byte buffer pointed to by .I buf ignoring trailing zeros or zero scores, according to the given .IR type . .PP .I Vtzeroextend pads .I buf with zeros or zero scores, according to the given .IR type , to grow it from .I size bytes to .I newsize bytes. .PP .I Vtzeroscore is the score of the zero-length block. .SH SOURCE .B /sys/src/libventi/zero.c .br .B /sys/src/libventi/zeroscore.c .SH SEE ALSO .IR venti (2), .IR venti (6)