2014-04-04 69 views
2

VxWorks提供了一個只包含兩個參數的strerror_r版本。VxWorks上strerror_r的最大消息大小

STATUS strerror_r 
(
    int errcode, /* error number */ 
    char *buffer /* string buffer */ 
) 

cURL提到MAXERRSTR_SIZE

vxworks樣式的strerror_r()確實使用我們傳遞給函數的緩衝區。緩衝區大小應該至少在rtsold.h中定義MAXERRSTR_SIZE(150)

但我似乎無法在分佈中的任何位置找到文件rtsold.h。

複製到緩衝區的消息的最大大小是多少?是否有定義的#define或整數常量?

+1

您引用的文字實際上會告訴您尺寸。 –

回答

1

供將來參考。寫這篇文章時,最大值爲NAME_MAX或255字節。請記住終止字節,並傳遞至少256個字節的緩衝區以保證安全。 (看來我可能剛剛諮詢了VxWorks上strerror_r的源代碼,對不起,我不知道)。