#!/usr/bin/env bash

# get all the functions from ldns

FILES="buffer.h error.h host2str.h keys.h packet.h rdata.h rr_functions.h str2host.h update.h wire2host.h
common.h dname.h dnssec.h higher.h host2wire.h net.h parse.h resolver.h
rr.h tsig.h util.h zone.h"

# we need two grep ldns_ ...
for i in $FILES; do 
        cpp -I.. "../ldns/$i"  | grep -E '.*? .*?\(.*' | grep ldns_  | \
        awk '{ print $2 }' | sed 's/^\*//' | sed 's/(.*$//' | grep ldns_
done
