getbsize(3bsd) 3bsd getbsize(3bsd)

# [NAME](#NAME)

`getbsize` — get preferred block size

# [LIBRARY](#LIBRARY)

library “libbsd”

# [SYNOPSIS](#SYNOPSIS)

`#include <stdlib.h>` (See [libbsd(7)](/man/os/libbsd/libbsd.7) for include usage.)  
`char *`  
`getbsize`(`int *headerlenp`, `long *blocksizep`);

# [DESCRIPTION](#DESCRIPTION)

The [`getbsize`](#getbsize)() function returns a preferred block size for reporting by system utilities [df(1)](/man/os/libbsd/df.1), [du(1)](/man/os/libbsd/du.1), [ls(1)](/man/os/libbsd/ls.1) and [systat(1)](/man/os/libbsd/systat.1), based on the value of the `BLOCKSIZE` environment variable. `BLOCKSIZE` may be specified directly in bytes, or in multiples of a kilobyte by specifying a number followed by \`\`K'' or \`\`k'', in multiples of a megabyte by specifying a number followed by \`\`M'' or \`\`m'' or in multiples of a gigabyte by specifying a number followed by \`\`G'' or \`\`g''. Multiples must be integers.

Valid values of `BLOCKSIZE` are 512 bytes to 1 gigabyte. Sizes less than 512 bytes are rounded up to 512 bytes, and sizes greater than 1 GB are rounded down to 1 GB. In each case [`getbsize`](#getbsize~2)() produces a warning message.

The [`getbsize`](#getbsize~3)() function returns a pointer to a null-terminated string describing the block size, something like “1K-blocks”. The memory referenced by `headerlenp` is filled in with the length of the string (not including the terminating null). The memory referenced by `blocksizep` is filled in with block size, in bytes.

# [SEE ALSO](#SEE_ALSO)

[df(1)](/man/os/libbsd/df.1), [du(1)](/man/os/libbsd/du.1), [ls(1)](/man/os/libbsd/ls.1), [systat(1)](/man/os/libbsd/systat.1), [environ(7)](/man/os/libbsd/environ.7)

# [HISTORY](#HISTORY)

The `getbsize`() function first appeared in 4.4BSD.

November 16, 2012 Linux 4.19.0-gvisor

---

Document: getbsize(3bsd) from libbsd 0.12.2-r11 (Chainguard OS)
Source: https://gitlab.freedesktop.org/libbsd/libbsd
