Re: unsafe_string_function_usage_here when linking smbd | |
| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] | |
I was wrong about building completed. After removing smbd and re-make I got Linking bin/smbd ld: Unresolved: srvstr_push_fn2 make: *** [bin/smbd] Error 1 7 jun 2008 kl. 13.28 skrev Bengt Nilsson:
I just commented out /*#define srvstr_push_fn2(fn_name, fn_line, base_ptr, dest, src, dest_len, flags) \(CHECK_STRING_SIZE(dest, dest_len) \ ? __unsafe_string_function_usage_here_size_t__6() \: srvstr_push_fn(fn_name, fn_line, base_ptr, dest, src, dest_len, flags))*/ and got further but then libaddns/(dns.h, dnserr.h and dnssock.c) had no definition of unit32. Just to test, I changed to int.Now all built using CC=cc, but there were many Warnings of unresolved functions. The inexperienced programmer asks: Why warnings, should it not be errors?7 jun 2008 kl. 13.16 skrev Bengt Nilsson:Please know that I am NOT an experienced programmer,In safe_string.h, there are 6 usages of "__unsafe_string_function_usage_here_size_t__"(I am not sure where trans2.c is coming into this.)Anyway, to find out which one that fails, I created the single prototype withsize_t __unsafe_string_function_usage_here_size_t__1(void); size_t __unsafe_string_function_usage_here_size_t__2(void); size_t __unsafe_string_function_usage_here_size_t__3(void); size_t __unsafe_string_function_usage_here_size_t__4(void); size_t __unsafe_string_function_usage_here_size_t__5(void); size_t __unsafe_string_function_usage_here_size_t__6(void); and renamed the corresponding #defines #define push_pstring_base(dest, src, pstring_base) \ (CHECK_STRING_SIZE(pstring_base, sizeof(pstring)) \ ? __unsafe_string_function_usage_here_size_t__1() \: push_ascii(dest, src, sizeof(pstring)- PTR_DIFF(dest,pstring_base)-1, STR_TERMINATE)).....#define srvstr_push_fn2(fn_name, fn_line, base_ptr, dest, src, dest_len, flags) \(CHECK_STRING_SIZE(dest, dest_len) \ ? __unsafe_string_function_usage_here_size_t__6() \: srvstr_push_fn(fn_name, fn_line, base_ptr, dest, src, dest_len, flags))And now the unresolved function was Linking bin/smbd ld: Unresolved: __unsafe_string_function_usage_here_size_t__6 make: *** [bin/smbd] Error 1 Is this of any help or is it just bull*?For myself, I do not know what to do with this information, even if would be useful.6 jun 2008 kl. 19.31 skrev Kai Lanz:On Jun 6, 2008, at 10:10 AM, Herb Lewis wrote:try doing an nm on the suspected .o file and see if the reference to the function is there. That will prove which file(s) is comes from than maybe you can determine which function it comes from.Thanks, but I've already done that; I used "nm" to confirm that the call to an undefined external function called "unsafe_string_function_usage_here_size_t" was present in trans2.o and in no other object file under source/smbd. The trouble is there are 27 calls in trans2.c that have been wrapped by safe_string.h and I haven't thought of a way to determine which one is getting replaced by the "unsafe_" marker. -- Kai Lanz -- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/listinfo/samba-- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/listinfo/samba
-- To unsubscribe from this list go to the following URL and read the instructions: https://lists.samba.org/mailman/listinfo/samba
[Linux] [Info Cyrus] [LARTC] [Christmas Music] [Bugtraq] [Netfilter] [Internet Dating Forums] [RAID] [Yosemite News] [Photography]
![]() |
![]() |