-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Wesley Craig wrote: > On 18 Nov 2008, at 22:57, ????????? ???????????? wrote: >> thank you for you answer, but this still not work. This option has been >> automatic enabled in port configuration and i see it in my >> configure.log. This is deepest trouble. May be FreeBSD v.7.0 has broken >> system com_err? > > Not being a com_err expert, I can't say for sure, but I think you don't > want to use the system com_err. > > :wes > i analyze the com_err/et/error_message.c and find that - --------begin C code #ifdef HAS_STRERROR return strerror (offset); #else if (offset < sys_nerr) return(sys_errlist[offset]); else goto oops; #endif } for (et = _et_list; et; et = et->next) { if (et->table->base == table_num) { /* This is the right table */ if (et->table->n_msgs <= offset) goto oops; return(et->table->msgs[offset]); } } oops: strcpy (buffer, "Unknown code "); if (table_num) { strcat (buffer, error_table_name (table_num)); strcat (buffer, " "); } for (cp = buffer; *cp; cp++) ; if (offset >= 100) { *cp++ = '0' + offset / 100; offset %= 100; started++; } if (started || offset >= 10) { *cp++ = '0' + offset / 10; offset %= 10; } *cp++ = '0' + offset; *cp = '\0'; return(buffer); } - ------end of C code error message going to "oops:" section on two ways: if HAS_STRERROR is not defined in config.h and if number of messages in error table <= offset parameter. I'm not a expert of C program codes, but i think second way is true on my system. What is "offset" in this code? -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAkkjlLAACgkQQnJBf+ilOuu0CgCeM81HaNm4ockxr1Q6/YpeSSc8 24wAoLp4XiXRjwm5u9Au5D0z5IMm6XT0 =uYbw -----END PGP SIGNATURE----- ---- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html