LIBBSD_0.0 {
  global:
    arc4random;
    arc4random_stir;
    arc4random_addrandom;
    bsd_getopt;
    optreset;
    errc;
    warnc;
    verrc;
    vwarnc;
    fgetln;
    fmtcheck;
    heapsort;
    humanize_number;
    inet_net_pton; /* XXX: Already provided by glibc, remove. */
    getprogname;
    setprogname;
    strlcpy;
    strlcat;
    setmode;
    getmode;
    vis;
    strvis;
    strvisx;
    unvis;
    strunvis;
    strunvisx;
    MD5Init;
    MD5Update;
    MD5Pad;
    MD5Final;
    MD5Transform;
    MD5End;
    MD5File;
    MD5FileChunk;
    MD5Data;
  local:
    *;
};
LIBBSD_0.1 {
    strmode;
    __fdnlist; /* Private symbol, but libkvm uses it. */
    nlist;
} LIBBSD_0.0;
LIBBSD_0.2 {
    strtonum;
    strnvis;
    strnunvis;
    dehumanize_number;
    readpassphrase;
    flopen;
    pidfile_open;
    pidfile_write;
    pidfile_close;
    pidfile_remove;
    setproctitle;
    arc4random_buf;
    arc4random_uniform;
} LIBBSD_0.1;
LIBBSD_0.3 {
    reallocf;
    getpeereid;
    mergesort;
    radixsort;
    sradixsort;
    fpurge;
} LIBBSD_0.2;