getgrnam_rバッファが小さすぎる設定されていますか?

int型getgrnam_r(のconstのchar * 、構造体のグループ* GRP 
          するchar * bufは、size_tの buflenは、構造体のグループ** 結果);
的BUFSIZE应该多大?

構造体基{ 
    チャー*のgr_name。/ *グループ名* / 
    CHAR * gr_passwd。/ *グループパスワード* / 
    gid_tのgr_gid。/ *グループID * / 
    char型** gr_mem。/ *グループメンバー* / 
}; 

关于getgrnam_r的说明:

 文字列フィールドは、メンバーによって指さ  グループ  構造バッファに格納されている  BUF  サイズの  buflenはまたはNULL(成功の場合)結果へのポインタに格納されている(場合にエントリが見つからなかったか、エラーが発生しました)  *結果

変更せずに、どちらか-1を返し  errnoに、またはのための最初の提案サイズ  bufがこのサイズが小さすぎる(、呼び出しが失敗したと ERANGEは、バッファより大きい)で発信者をCAN再試行した場合。

BUFのgr_name、gr_passwd、gr_mem三つの部分のニーズに対応できるサイズ;
gr_memは、グループメンバーシップを格納する必要があり、



おすすめ

転載: www.cnblogs.com/mu-zhang/p/11572884.html