■ static int load(const char *fn, void *data, size_t length) 
  从fn文件中读出length长度的数据,用data返回数据
  
■ static int generate(const char *fn, void *data, size_t length) 
	从/dev/urandom读出或者用srandom()生成length长度的数据,写入到fn文件中,用data返回数据
■ int pa_authkey_load(const char *path, void *data, size_t length) 
	先从path文件中load,如果不成功使用generate数据生成
	
■ int pa_authkey_load_from_home(const char *fn, void *data, size_t length) 
	用环境变量HOME和fn组合成文件path,然后从path中读取数据data
■ int pa_authkey_load_auto(const char *fn, void *data, size_t length) 
	如果以“/”开始,就直接pa_authkey_load,否则需要pa_authkey_load_from_home()。
原文:https://www.cnblogs.com/renhl/p/13058440.html