*** orig/acinclude.m4 Sun Apr 28 19:47:58 2002 --- acinclude.m4 Sun Aug 4 15:39:18 2002 *************** *** 623,625 **** --- 623,666 ---- AC_MSG_CHECKING(krb5 implementation) AC_MSG_RESULT(${cached}$KRB5_IMPL) ]) + + dnl IU_CHECK_MEMBER(AGGREGATE.MEMBER, + dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND], + dnl [INCLUDES]) + dnl AGGREGATE.MEMBER is for instance `struct passwd.pw_gecos'. + dnl The member itself can be of an aggregate type + dnl Shell variables are not a valid argument. + AC_DEFUN([IU_CHECK_MEMBER], + [AS_LITERAL_IF([$1], [], + [AC_FATAL([$0: requires literal arguments])])dnl + m4_bmatch([$1], [\.], , + [m4_fatal([$0: Did not see any dot in `$1'])])dnl + AS_VAR_PUSHDEF([ac_Member], [ac_cv_member_$1])dnl + dnl Extract the aggregate name, and the member name + AC_CACHE_CHECK([for $1], ac_Member, + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT([$4])], + [dnl AGGREGATE ac_aggr; + static m4_bpatsubst([$1], [\..*]) ac_aggr; + dnl ac_aggr.MEMBER; + if (sizeof(ac_aggr.m4_bpatsubst([$1], [^[^.]*\.]))) + return 0;])], + [AS_VAR_SET(ac_Member, yes)], + [AS_VAR_SET(ac_Member, no)])]) + AS_IF([test AS_VAR_GET(ac_Member) = yes], [$2], [$3])dnl + AS_VAR_POPDEF([ac_Member])dnl + ])dnl IU_CHECK_MEMBER + + + dnl IU_CHECK_MEMBERS([AGGREGATE.MEMBER, ...], + dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND] + dnl [INCLUDES]) + AC_DEFUN([IU_CHECK_MEMBERS], + [m4_foreach([AC_Member], [$1], + [IU_CHECK_MEMBER(AC_Member, + [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_[]AC_Member), 1, + [Define to 1 if `]m4_bpatsubst(AC_Member, + [^[^.]*\.])[' is + member of `]m4_bpatsubst(AC_Member, [\..*])['.]) + $2], + [$3], + [$4])])]) *** orig/configure Thu Aug 1 00:58:31 2002 --- configure Sun Aug 4 15:39:03 2002 *************** *** 8036,8042 **** main () { static struct sockaddr_in ac_aggr; ! if (ac_aggr.sin_len) return 0; ; return 0; --- 8036,8042 ---- main () { static struct sockaddr_in ac_aggr; ! if (sizeof(ac_aggr.sin_len)) return 0; ; return 0; *************** *** 8133,8141 **** fi ! echo "$as_me:$LINENO: checking for utmp.ut_type" >&5 ! echo $ECHO_N "checking for utmp.ut_type... $ECHO_C" >&6 ! if test "${ac_cv_member_utmp_ut_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF --- 8133,8141 ---- fi ! echo "$as_me:$LINENO: checking for struct utmp.ut_type" >&5 ! echo $ECHO_N "checking for struct utmp.ut_type... $ECHO_C" >&6 ! if test "${ac_cv_member_struct_utmp_ut_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF *************** *** 8155,8162 **** int main () { ! static utmp ac_aggr; ! if (ac_aggr.ut_type) return 0; ; return 0; --- 8155,8162 ---- int main () { ! static struct utmp ac_aggr; ! if (sizeof(ac_aggr.ut_type)) return 0; ; return 0; *************** *** 8174,8200 **** ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_utmp_ut_type=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_utmp_ut_type=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_utmp_ut_type" >&5 ! echo "${ECHO_T}$ac_cv_member_utmp_ut_type" >&6 ! if test $ac_cv_member_utmp_ut_type = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_UTMP_UT_TYPE 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for utmp.ut_pid" >&5 ! echo $ECHO_N "checking for utmp.ut_pid... $ECHO_C" >&6 ! if test "${ac_cv_member_utmp_ut_pid+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF --- 8174,8200 ---- ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_struct_utmp_ut_type=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_struct_utmp_ut_type=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_struct_utmp_ut_type" >&5 ! echo "${ECHO_T}$ac_cv_member_struct_utmp_ut_type" >&6 ! if test $ac_cv_member_struct_utmp_ut_type = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_STRUCT_UTMP_UT_TYPE 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for struct utmp.ut_pid" >&5 ! echo $ECHO_N "checking for struct utmp.ut_pid... $ECHO_C" >&6 ! if test "${ac_cv_member_struct_utmp_ut_pid+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF *************** *** 8214,8221 **** int main () { ! static utmp ac_aggr; ! if (ac_aggr.ut_pid) return 0; ; return 0; --- 8214,8221 ---- int main () { ! static struct utmp ac_aggr; ! if (sizeof(ac_aggr.ut_pid)) return 0; ; return 0; *************** *** 8233,8259 **** ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_utmp_ut_pid=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_utmp_ut_pid=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_utmp_ut_pid" >&5 ! echo "${ECHO_T}$ac_cv_member_utmp_ut_pid" >&6 ! if test $ac_cv_member_utmp_ut_pid = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_UTMP_UT_PID 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for utmp.ut_id" >&5 ! echo $ECHO_N "checking for utmp.ut_id... $ECHO_C" >&6 ! if test "${ac_cv_member_utmp_ut_id+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF --- 8233,8259 ---- ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_struct_utmp_ut_pid=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_struct_utmp_ut_pid=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_struct_utmp_ut_pid" >&5 ! echo "${ECHO_T}$ac_cv_member_struct_utmp_ut_pid" >&6 ! if test $ac_cv_member_struct_utmp_ut_pid = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_STRUCT_UTMP_UT_PID 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for struct utmp.ut_id" >&5 ! echo $ECHO_N "checking for struct utmp.ut_id... $ECHO_C" >&6 ! if test "${ac_cv_member_struct_utmp_ut_id+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF *************** *** 8273,8280 **** int main () { ! static utmp ac_aggr; ! if (ac_aggr.ut_id) return 0; ; return 0; --- 8273,8280 ---- int main () { ! static struct utmp ac_aggr; ! if (sizeof(ac_aggr.ut_id)) return 0; ; return 0; *************** *** 8292,8318 **** ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_utmp_ut_id=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_utmp_ut_id=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_utmp_ut_id" >&5 ! echo "${ECHO_T}$ac_cv_member_utmp_ut_id" >&6 ! if test $ac_cv_member_utmp_ut_id = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_UTMP_UT_ID 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for utmp.ut_user" >&5 ! echo $ECHO_N "checking for utmp.ut_user... $ECHO_C" >&6 ! if test "${ac_cv_member_utmp_ut_user+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF --- 8292,8318 ---- ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_struct_utmp_ut_id=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_struct_utmp_ut_id=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_struct_utmp_ut_id" >&5 ! echo "${ECHO_T}$ac_cv_member_struct_utmp_ut_id" >&6 ! if test $ac_cv_member_struct_utmp_ut_id = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_STRUCT_UTMP_UT_ID 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for struct utmp.ut_user" >&5 ! echo $ECHO_N "checking for struct utmp.ut_user... $ECHO_C" >&6 ! if test "${ac_cv_member_struct_utmp_ut_user+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF *************** *** 8332,8339 **** int main () { ! static utmp ac_aggr; ! if (ac_aggr.ut_user) return 0; ; return 0; --- 8332,8339 ---- int main () { ! static struct utmp ac_aggr; ! if (sizeof(ac_aggr.ut_user)) return 0; ; return 0; *************** *** 8351,8377 **** ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_utmp_ut_user=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_utmp_ut_user=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_utmp_ut_user" >&5 ! echo "${ECHO_T}$ac_cv_member_utmp_ut_user" >&6 ! if test $ac_cv_member_utmp_ut_user = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_UTMP_UT_USER 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for utmp.ut_host" >&5 ! echo $ECHO_N "checking for utmp.ut_host... $ECHO_C" >&6 ! if test "${ac_cv_member_utmp_ut_host+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF --- 8351,8377 ---- ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_struct_utmp_ut_user=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_struct_utmp_ut_user=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_struct_utmp_ut_user" >&5 ! echo "${ECHO_T}$ac_cv_member_struct_utmp_ut_user" >&6 ! if test $ac_cv_member_struct_utmp_ut_user = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_STRUCT_UTMP_UT_USER 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for struct utmp.ut_host" >&5 ! echo $ECHO_N "checking for struct utmp.ut_host... $ECHO_C" >&6 ! if test "${ac_cv_member_struct_utmp_ut_host+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF *************** *** 8391,8398 **** int main () { ! static utmp ac_aggr; ! if (ac_aggr.ut_host) return 0; ; return 0; --- 8391,8398 ---- int main () { ! static struct utmp ac_aggr; ! if (sizeof(ac_aggr.ut_host)) return 0; ; return 0; *************** *** 8410,8436 **** ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_utmp_ut_host=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_utmp_ut_host=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_utmp_ut_host" >&5 ! echo "${ECHO_T}$ac_cv_member_utmp_ut_host" >&6 ! if test $ac_cv_member_utmp_ut_host = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_UTMP_UT_HOST 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for utmp.ut_tv" >&5 ! echo $ECHO_N "checking for utmp.ut_tv... $ECHO_C" >&6 ! if test "${ac_cv_member_utmp_ut_tv+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF --- 8410,8436 ---- ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_struct_utmp_ut_host=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_struct_utmp_ut_host=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_struct_utmp_ut_host" >&5 ! echo "${ECHO_T}$ac_cv_member_struct_utmp_ut_host" >&6 ! if test $ac_cv_member_struct_utmp_ut_host = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_STRUCT_UTMP_UT_HOST 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for struct utmp.ut_tv" >&5 ! echo $ECHO_N "checking for struct utmp.ut_tv... $ECHO_C" >&6 ! if test "${ac_cv_member_struct_utmp_ut_tv+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF *************** *** 8450,8457 **** int main () { ! static utmp ac_aggr; ! if (ac_aggr.ut_tv) return 0; ; return 0; --- 8450,8457 ---- int main () { ! static struct utmp ac_aggr; ! if (sizeof(ac_aggr.ut_tv)) return 0; ; return 0; *************** *** 8469,8495 **** ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_utmp_ut_tv=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_utmp_ut_tv=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_utmp_ut_tv" >&5 ! echo "${ECHO_T}$ac_cv_member_utmp_ut_tv" >&6 ! if test $ac_cv_member_utmp_ut_tv = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_UTMP_UT_TV 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for utmp.ut_exit" >&5 ! echo $ECHO_N "checking for utmp.ut_exit... $ECHO_C" >&6 ! if test "${ac_cv_member_utmp_ut_exit+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF --- 8469,8495 ---- ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_struct_utmp_ut_tv=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_struct_utmp_ut_tv=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_struct_utmp_ut_tv" >&5 ! echo "${ECHO_T}$ac_cv_member_struct_utmp_ut_tv" >&6 ! if test $ac_cv_member_struct_utmp_ut_tv = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_STRUCT_UTMP_UT_TV 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for struct utmp.ut_exit" >&5 ! echo $ECHO_N "checking for struct utmp.ut_exit... $ECHO_C" >&6 ! if test "${ac_cv_member_struct_utmp_ut_exit+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF *************** *** 8509,8516 **** int main () { ! static utmp ac_aggr; ! if (ac_aggr.ut_exit) return 0; ; return 0; --- 8509,8516 ---- int main () { ! static struct utmp ac_aggr; ! if (sizeof(ac_aggr.ut_exit)) return 0; ; return 0; *************** *** 8528,8547 **** ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_utmp_ut_exit=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_utmp_ut_exit=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_utmp_ut_exit" >&5 ! echo "${ECHO_T}$ac_cv_member_utmp_ut_exit" >&6 ! if test $ac_cv_member_utmp_ut_exit = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_UTMP_UT_EXIT 1 _ACEOF --- 8528,8547 ---- ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_struct_utmp_ut_exit=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_struct_utmp_ut_exit=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_struct_utmp_ut_exit" >&5 ! echo "${ECHO_T}$ac_cv_member_struct_utmp_ut_exit" >&6 ! if test $ac_cv_member_struct_utmp_ut_exit = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_STRUCT_UTMP_UT_EXIT 1 _ACEOF *************** *** 8569,8575 **** main () { static struct utmpx ac_aggr; ! if (ac_aggr.ut_tv) return 0; ; return 0; --- 8569,8575 ---- main () { static struct utmpx ac_aggr; ! if (sizeof(ac_aggr.ut_tv)) return 0; ; return 0; *************** *** 8608,8617 **** fi - # AC_CHECK_MEMBERS (as of version 2.53 ) fails to recognize the presense - # of a structure member which is itself of an aggregate type. To work - # around the bug, we first check for a non-aggregate sub-member of the - # member in question and then create an appropriate HAVE_ define. echo "$as_me:$LINENO: checking for stuct ifreq.ifr_index" >&5 echo $ECHO_N "checking for stuct ifreq.ifr_index... $ECHO_C" >&6 if test "${ac_cv_member_stuct_ifreq_ifr_index+set}" = set; then --- 8608,8613 ---- *************** *** 8633,8639 **** main () { static stuct ifreq ac_aggr; ! if (ac_aggr.ifr_index) return 0; ; return 0; --- 8629,8635 ---- main () { static stuct ifreq ac_aggr; ! if (sizeof(ac_aggr.ifr_index)) return 0; ; return 0; *************** *** 8669,8677 **** fi ! echo "$as_me:$LINENO: checking for struct ifreq.ifr_netmask.sa_family" >&5 ! echo $ECHO_N "checking for struct ifreq.ifr_netmask.sa_family... $ECHO_C" >&6 ! if test "${ac_cv_member_struct_ifreq_ifr_netmask_sa_family+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF --- 8665,8673 ---- fi ! echo "$as_me:$LINENO: checking for struct ifreq.ifr_netmask" >&5 ! echo $ECHO_N "checking for struct ifreq.ifr_netmask... $ECHO_C" >&6 ! if test "${ac_cv_member_struct_ifreq_ifr_netmask+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF *************** *** 8690,8696 **** main () { static struct ifreq ac_aggr; ! if (ac_aggr.ifr_netmask.sa_family) return 0; ; return 0; --- 8686,8692 ---- main () { static struct ifreq ac_aggr; ! if (sizeof(ac_aggr.ifr_netmask)) return 0; ; return 0; *************** *** 8708,8734 **** ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_struct_ifreq_ifr_netmask_sa_family=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_struct_ifreq_ifr_netmask_sa_family=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_struct_ifreq_ifr_netmask_sa_family" >&5 ! echo "${ECHO_T}$ac_cv_member_struct_ifreq_ifr_netmask_sa_family" >&6 ! if test $ac_cv_member_struct_ifreq_ifr_netmask_sa_family = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_STRUCT_IFREQ_IFR_NETMASK_SA_FAMILY 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for struct ifreq.ifr_broadaddr.sa_family" >&5 ! echo $ECHO_N "checking for struct ifreq.ifr_broadaddr.sa_family... $ECHO_C" >&6 ! if test "${ac_cv_member_struct_ifreq_ifr_broadaddr_sa_family+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF --- 8704,8730 ---- ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_struct_ifreq_ifr_netmask=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_struct_ifreq_ifr_netmask=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_struct_ifreq_ifr_netmask" >&5 ! echo "${ECHO_T}$ac_cv_member_struct_ifreq_ifr_netmask" >&6 ! if test $ac_cv_member_struct_ifreq_ifr_netmask = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_STRUCT_IFREQ_IFR_NETMASK 1 _ACEOF fi ! echo "$as_me:$LINENO: checking for struct ifreq.ifr_broadaddr" >&5 ! echo $ECHO_N "checking for struct ifreq.ifr_broadaddr... $ECHO_C" >&6 ! if test "${ac_cv_member_struct_ifreq_ifr_broadaddr+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF *************** *** 8747,8753 **** main () { static struct ifreq ac_aggr; ! if (ac_aggr.ifr_broadaddr.sa_family) return 0; ; return 0; --- 8743,8749 ---- main () { static struct ifreq ac_aggr; ! if (sizeof(ac_aggr.ifr_broadaddr)) return 0; ; return 0; *************** *** 8765,8793 **** ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_struct_ifreq_ifr_broadaddr_sa_family=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_struct_ifreq_ifr_broadaddr_sa_family=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_struct_ifreq_ifr_broadaddr_sa_family" >&5 ! echo "${ECHO_T}$ac_cv_member_struct_ifreq_ifr_broadaddr_sa_family" >&6 ! if test $ac_cv_member_struct_ifreq_ifr_broadaddr_sa_family = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_STRUCT_IFREQ_IFR_BROADADDR_SA_FAMILY 1 _ACEOF fi - - - echo "$as_me:$LINENO: checking for struct sockaddr.sa_len" >&5 echo $ECHO_N "checking for struct sockaddr.sa_len... $ECHO_C" >&6 if test "${ac_cv_member_struct_sockaddr_sa_len+set}" = set; then --- 8761,8786 ---- ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ! ac_cv_member_struct_ifreq_ifr_broadaddr=yes else echo "$as_me: failed program was:" >&5 cat conftest.$ac_ext >&5 ! ac_cv_member_struct_ifreq_ifr_broadaddr=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi ! echo "$as_me:$LINENO: result: $ac_cv_member_struct_ifreq_ifr_broadaddr" >&5 ! echo "${ECHO_T}$ac_cv_member_struct_ifreq_ifr_broadaddr" >&6 ! if test $ac_cv_member_struct_ifreq_ifr_broadaddr = yes; then cat >>confdefs.h <<_ACEOF ! #define HAVE_STRUCT_IFREQ_IFR_BROADADDR 1 _ACEOF fi echo "$as_me:$LINENO: checking for struct sockaddr.sa_len" >&5 echo $ECHO_N "checking for struct sockaddr.sa_len... $ECHO_C" >&6 if test "${ac_cv_member_struct_sockaddr_sa_len+set}" = set; then *************** *** 8809,8815 **** main () { static struct sockaddr ac_aggr; ! if (ac_aggr.sa_len) return 0; ; return 0; --- 8802,8808 ---- main () { static struct sockaddr ac_aggr; ! if (sizeof(ac_aggr.sa_len)) return 0; ; return 0; *************** *** 8866,8872 **** main () { static struct hostent ac_aggr; ! if (ac_aggr.h_addr_list) return 0; ; return 0; --- 8859,8865 ---- main () { static struct hostent ac_aggr; ! if (sizeof(ac_aggr.h_addr_list)) return 0; ; return 0; *************** *** 8923,8929 **** main () { static struct stat ac_aggr; ! if (ac_aggr.st_blksize) return 0; ; return 0; --- 8916,8922 ---- main () { static struct stat ac_aggr; ! if (sizeof(ac_aggr.st_blksize)) return 0; ; return 0; *************** *** 15898,15910 **** depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` ! # Check whether this is an Automake generated Makefile or not. ! # We used to match only the files named `Makefile.in', but ! # some people rename them; so instead we look at the file content. ! # Grep'ing the first line is not enough: some people post-process ! # each Makefile.in and add a new line on top of each file to say so. ! # So let's grep whole file. ! if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then dirpart=`(dirname "$mf") 2>/dev/null || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ --- 15891,15897 ---- depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` ! if (sed 1q $mf | fgrep 'generated by automake') > /dev/null 2>&1; then dirpart=`(dirname "$mf") 2>/dev/null || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ *** orig/configure.ac Thu Aug 1 00:24:10 2002 --- configure.ac Sun Aug 4 15:39:10 2002 *************** *** 385,431 **** #endif ]) ### Checks for structures. ! AC_CHECK_MEMBERS([struct sockaddr_in.sin_len], , , [ #include #include ]) if test "$ac_cv_header_utmp_h" = yes; then AC_CHECK_TYPES(struct lastlog, , , [#include ]) ! AC_CHECK_MEMBERS([utmp.ut_type, utmp.ut_pid, utmp.ut_id, utmp.ut_user, ! utmp.ut_host, utmp.ut_tv, utmp.ut_exit], , , [#ifdef HAVE_SYS_TYPES_H # include #endif #include ]) fi if test "$ac_cv_header_utmpx_h" = yes; then ! AC_CHECK_MEMBERS([struct utmpx.ut_tv], , , [#include ]) fi ! # AC_CHECK_MEMBERS (as of version 2.53 ) fails to recognize the presense ! # of a structure member which is itself of an aggregate type. To work ! # around the bug, we first check for a non-aggregate sub-member of the ! # member in question and then create an appropriate HAVE_ define. ! AC_CHECK_MEMBERS([stuct ifreq.ifr_index, ! struct ifreq.ifr_netmask.sa_family, ! struct ifreq.ifr_broadaddr.sa_family], , , [#include #include ]) ! AH_BOTTOM([ ! #ifdef HAVE_STRUCT_IFREQ_IFR_NETMASK_SA_FAMILY ! # define HAVE_STRUCT_IFREQ_IFR_NETMASK ! #endif ! #ifdef HAVE_STRUCT_IFREQ_IFR_BROADADDR_SA_FAMILY ! # define HAVE_STRUCT_IFREQ_IFR_BROADADDR ! #endif]) ! ! AC_CHECK_MEMBERS([struct sockaddr.sa_len], , , [#include #include ]) ! AC_CHECK_MEMBERS([struct hostent.h_addr_list], , , [#include ]) ! AC_CHECK_MEMBERS([struct stat.st_blksize]) AH_BOTTOM( [#ifdef HAVE_SYS_PARAM_H --- 385,421 ---- #endif ]) ### Checks for structures. ! IU_CHECK_MEMBERS([struct sockaddr_in.sin_len], , , [ #include #include ]) if test "$ac_cv_header_utmp_h" = yes; then AC_CHECK_TYPES(struct lastlog, , , [#include ]) ! IU_CHECK_MEMBERS([struct utmp.ut_type, struct utmp.ut_pid, ! struct utmp.ut_id, struct utmp.ut_user, ! struct utmp.ut_host, struct utmp.ut_tv, ! struct utmp.ut_exit], , , [#ifdef HAVE_SYS_TYPES_H # include #endif #include ]) fi if test "$ac_cv_header_utmpx_h" = yes; then ! IU_CHECK_MEMBERS([struct utmpx.ut_tv], , , [#include ]) fi ! IU_CHECK_MEMBERS([stuct ifreq.ifr_index, ! struct ifreq.ifr_netmask, ! struct ifreq.ifr_broadaddr], , , [#include #include ]) ! IU_CHECK_MEMBERS([struct sockaddr.sa_len], , , [#include #include ]) ! IU_CHECK_MEMBERS([struct hostent.h_addr_list], , , [#include ]) ! IU_CHECK_MEMBERS([struct stat.st_blksize]) AH_BOTTOM( [#ifdef HAVE_SYS_PARAM_H *** orig/telnetd/Makefile.am Sun Apr 28 20:30:03 2002 --- telnetd/Makefile.am Sun Aug 4 15:39:38 2002 *************** *** 14,20 **** @PATHDEFS_MAKE@ ! INCLUDES = $(PATHDEF_TTY) $(PATHDEF_LOGIN) -I$(top_builddir)/include \ -I$(top_srcdir) @INCAUTH@ LIBTERMCAP = @LIBTERMCAP@ --- 14,20 ---- @PATHDEFS_MAKE@ ! INCLUDES = $(PATHDEF_DEV) $(PATHDEF_TTY) $(PATHDEF_LOGIN) -I$(top_builddir)/include \ -I$(top_srcdir) @INCAUTH@ LIBTERMCAP = @LIBTERMCAP@ *** orig/telnetd/Makefile.in Thu Aug 1 00:58:29 2002 --- telnetd/Makefile.in Sun Aug 4 15:39:52 2002 *************** *** 1,4 **** ! # Makefile.in generated by automake 1.6.2 from Makefile.am. # @configure_input@ # Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 --- 1,4 ---- ! # Makefile.in generated by automake 1.6 from Makefile.am. # @configure_input@ # Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 *************** *** 49,55 **** INSTALL_DATA = @INSTALL_DATA@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c - install_sh_SCRIPT = $(install_sh) -c INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_HEADER = $(INSTALL_DATA) transform = @program_transform_name@ --- 49,54 ---- *************** *** 118,124 **** man_MANS = telnetd.8 ! INCLUDES = $(PATHDEF_TTY) $(PATHDEF_LOGIN) -I$(top_builddir)/include \ -I$(top_srcdir) @INCAUTH@ --- 117,123 ---- man_MANS = telnetd.8 ! INCLUDES = $(PATHDEF_DEV) $(PATHDEF_TTY) $(PATHDEF_LOGIN) -I$(top_builddir)/include \ -I$(top_srcdir) @INCAUTH@ *************** *** 235,241 **** @AMDEP_TRUE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ @AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ ! $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$< .c.obj: @AMDEP_TRUE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ --- 234,240 ---- @AMDEP_TRUE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@ @AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ ! $(COMPILE) -c `test -f $< || echo '$(srcdir)/'`$< .c.obj: @AMDEP_TRUE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ *************** *** 276,285 **** if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ else file=$$i; fi; \ ext=`echo $$i | sed -e 's/^.*\\.//'`; \ - case "$$ext" in \ - 8*) ;; \ - *) ext='8' ;; \ - esac; \ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ inst=`echo $$inst | sed -e 's/^.*\///'`; \ inst=`echo $$inst | sed '$(transform)'`.$$ext; \ --- 275,280 ---- *************** *** 345,351 **** distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) distdir: $(DISTFILES) ! @list='$(DISTFILES)'; for file in $$list; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ --- 340,346 ---- distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) distdir: $(DISTFILES) ! @for file in $(DISTFILES); do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ *************** *** 355,364 **** dir=''; \ fi; \ if test -d $$d/$$file; then \ ! if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ ! cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ ! fi; \ ! cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ --- 350,357 ---- dir=''; \ fi; \ if test -d $$d/$$file; then \ ! cp -pR $$d/$$file $(distdir)$$dir \ ! || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ *************** *** 391,397 **** clean-generic: distclean-generic: ! -rm -f Makefile $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" --- 384,390 ---- clean-generic: distclean-generic: ! -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]* maintainer-clean-generic: @echo "This command is intended for maintainers to use" *** orig/ping/ping.c Mon Jun 24 20:03:26 2002 --- ping/ping.c Fri Aug 9 23:00:48 2002 *************** *** 112,117 **** --- 112,127 ---- u_char *patptr = NULL; int is_root = getuid () == 0; + if ((ping = ping_init (ICMP_ECHO, getpid ())) == NULL) + { + fprintf (stderr, "can't init ping: %s\n", strerror (errno)); + exit (1); + } + ping_set_sockopt (ping, SO_BROADCAST, (char *)&one, sizeof (one)); + + /* Reset root privileges */ + setuid (getuid ()); + /* Parse command line */ while ((c = getopt_long (argc, argv, short_options, long_options, NULL)) != EOF) .