Будем писать стало быть
Использование из справочной страницы OpenBSD 6.5 :Это не использование это пример того, что написано в /usr/include/unistd.h
Там буквально
int pledge(char *, char *);
Программа обычно использует только определенный набор системных или библиотечных вызовов.Не понимаю про библиотечные вызовы.
Например, если программе не нужно читать базу паролей, вы можете запретить вызов этой getpwnam() функции.Это не так работает. Вы не его запрещаете, а все сисколлы, кроме тех, которые вы написали в аргументах pledge. Хотя я понимаю, что в оригинале могло быть как-то похоже, но в пледже запрещено всё что не разрешено.
Я использовал pledge(2) в короткой программе на Си.