summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/configure.in19
-rw-r--r--source3/smbd/proto.h6
-rw-r--r--source3/smbd/session.c2
-rw-r--r--source3/smbd/utmp.c38
-rw-r--r--source3/wscript4
5 files changed, 8 insertions, 61 deletions
diff --git a/source3/configure.in b/source3/configure.in
index ab54227e71..70632bc3cb 100644
--- a/source3/configure.in
+++ b/source3/configure.in
@@ -2218,25 +2218,6 @@ if test x"$samba_cv_HAVE_UT_UT_EXIT" = x"yes"; then
AC_DEFINE(HAVE_UT_UT_EXIT,1,[Whether the utmp struct has a property ut_exit])
fi
-dnl Look for the IPv6 varient by preference. Many systems have both.
-AC_CACHE_CHECK([for ut_addr_v6 in utmp],samba_cv_HAVE_UT_UT_ADDR_V6,[
-AC_TRY_COMPILE([#include <sys/types.h>
-#include <utmp.h>],
-[struct utmp ut; ut.ut_addr_v6[0] = 0;],
-samba_cv_HAVE_UT_UT_ADDR_V6=yes,samba_cv_HAVE_UT_UT_ADDR_V6=no,samba_cv_HAVE_UT_UT_ADDR_V6=cross)])
-if test x"$samba_cv_HAVE_UT_UT_ADDR_V6" = x"yes"; then
- AC_DEFINE(HAVE_UT_UT_ADDR_V6,1,[Whether the utmp struct has a property ut_addr_v6])
-fi
-
-AC_CACHE_CHECK([for ut_addr in utmp],samba_cv_HAVE_UT_UT_ADDR,[
-AC_TRY_COMPILE([#include <sys/types.h>
-#include <utmp.h>],
-[struct utmp ut; ut.ut_addr = 0;],
-samba_cv_HAVE_UT_UT_ADDR=yes,samba_cv_HAVE_UT_UT_ADDR=no,samba_cv_HAVE_UT_UT_ADDR=cross)])
-if test x"$samba_cv_HAVE_UT_UT_ADDR" = x"yes"; then
- AC_DEFINE(HAVE_UT_UT_ADDR,1,[Whether the utmp struct has a property ut_addr])
-fi
-
if test x$ac_cv_func_pututline = xyes ; then
AC_CACHE_CHECK([whether pututline returns pointer],samba_cv_PUTUTLINE_RETURNS_UTMP,[
AC_TRY_COMPILE([#include <sys/types.h>
diff --git a/source3/smbd/proto.h b/source3/smbd/proto.h
index 809074c6f7..f1b359f917 100644
--- a/source3/smbd/proto.h
+++ b/source3/smbd/proto.h
@@ -1112,11 +1112,9 @@ uint64_t get_current_vuid(connection_struct *conn);
/* The following definitions come from smbd/utmp.c */
void sys_utmp_claim(const char *username, const char *hostname,
- const char *ip_addr_str,
- const char *id_str, int id_num);
+ const char *id_str, int id_num);
void sys_utmp_yield(const char *username, const char *hostname,
- const char *ip_addr_str,
- const char *id_str, int id_num);
+ const char *id_str, int id_num);
/* The following definitions come from smbd/vfs.c */
diff --git a/source3/smbd/session.c b/source3/smbd/session.c
index 47eafab979..e7e7570f40 100644
--- a/source3/smbd/session.c
+++ b/source3/smbd/session.c
@@ -179,7 +179,6 @@ bool session_claim(struct smbd_server_connection *sconn, struct user_struct *vus
if (lp_utmp()) {
sys_utmp_claim(sessionid.username, sessionid.hostname,
- sessionid.ip_addr_str,
sessionid.id_str, sessionid.id_num);
}
@@ -219,7 +218,6 @@ void session_yield(struct user_struct *vuser)
if (lp_utmp()) {
sys_utmp_yield(sessionid.username, sessionid.hostname,
- sessionid.ip_addr_str,
sessionid.id_str, sessionid.id_num);
}
diff --git a/source3/smbd/utmp.c b/source3/smbd/utmp.c
index 34b77616b6..bb48d36946 100644
--- a/source3/smbd/utmp.c
+++ b/source3/smbd/utmp.c
@@ -115,13 +115,11 @@ Notes:
*/
void sys_utmp_claim(const char *username, const char *hostname,
- const char *ip_addr_str,
- const char *id_str, int id_num)
+ const char *id_str, int id_num)
{}
void sys_utmp_yield(const char *username, const char *hostname,
- const char *ip_addr_str,
- const char *id_str, int id_num)
+ const char *id_str, int id_num)
{}
#else /* WITH_UTMP */
@@ -499,7 +497,6 @@ static int ut_id_encode(int i, char *fourbyte)
*/
static bool sys_utmp_fill(struct utmp *u,
const char *username, const char *hostname,
- const char *ip_addr_str,
const char *id_str, int id_num)
{
struct timeval timeval;
@@ -550,27 +547,6 @@ static bool sys_utmp_fill(struct utmp *u,
#if defined(HAVE_UT_UT_HOST)
utmp_strcpy(u->ut_host, hostname, sizeof(u->ut_host));
#endif
-#if defined(HAVE_IPV6) && defined(HAVE_UT_UT_ADDR_V6)
- memset(&u->ut_addr_v6, '\0', sizeof(u->ut_addr_v6));
- if (ip_addr_str) {
- struct in6_addr addr;
- if (inet_pton(AF_INET6, ip_addr_str, &addr) > 0) {
- memcpy(&u->ut_addr_v6, &addr, sizeof(addr));
- }
- }
-#elif defined(HAVE_UT_UT_ADDR)
- memset(&u->ut_addr, '\0', sizeof(u->ut_addr));
- if (ip_addr_str) {
- struct in_addr addr;
- if (inet_pton(AF_INET, ip_addr_str, &addr) > 0) {
- memcpy(&u->ut_addr, &addr, sizeof(addr));
- }
- }
- /*
- * "(unsigned long) ut_addr" apparently exists on at least HP-UX 10.20.
- * Volunteer to implement, please ...
- */
-#endif
#if defined(HAVE_UT_UT_ID)
if (ut_id_encode(id_num, u->ut_id) != 0) {
@@ -587,8 +563,7 @@ static bool sys_utmp_fill(struct utmp *u,
****************************************************************************/
void sys_utmp_yield(const char *username, const char *hostname,
- const char *ip_addr_str,
- const char *id_str, int id_num)
+ const char *id_str, int id_num)
{
struct utmp u;
@@ -603,7 +578,7 @@ void sys_utmp_yield(const char *username, const char *hostname,
u.ut_type = DEAD_PROCESS;
#endif
- if (!sys_utmp_fill(&u, username, hostname, ip_addr_str, id_str, id_num))
+ if (!sys_utmp_fill(&u, username, hostname, id_str, id_num))
return;
sys_utmp_update(&u, NULL, False);
@@ -614,8 +589,7 @@ void sys_utmp_yield(const char *username, const char *hostname,
****************************************************************************/
void sys_utmp_claim(const char *username, const char *hostname,
- const char *ip_addr_str,
- const char *id_str, int id_num)
+ const char *id_str, int id_num)
{
struct utmp u;
@@ -625,7 +599,7 @@ void sys_utmp_claim(const char *username, const char *hostname,
u.ut_type = USER_PROCESS;
#endif
- if (!sys_utmp_fill(&u, username, hostname, ip_addr_str, id_str, id_num))
+ if (!sys_utmp_fill(&u, username, hostname, id_str, id_num))
return;
sys_utmp_update(&u, hostname, True);
diff --git a/source3/wscript b/source3/wscript
index 3874df5fbc..56ab760750 100644
--- a/source3/wscript
+++ b/source3/wscript
@@ -655,10 +655,6 @@ msg.msg_acctrightslen = sizeof(fd);
define='HAVE_UT_UT_PID')
conf.CHECK_STRUCTURE_MEMBER('struct utmp', 'ut_exit.e_exit', headers='utmp.h',
define='HAVE_UT_UT_EXIT')
- conf.CHECK_STRUCTURE_MEMBER('struct utmp', 'ut_addr_v6', headers='utmp.h',
- define='HAVE_UT_UT_ADDR_V6')
- conf.CHECK_STRUCTURE_MEMBER('struct utmp', 'ut_addr', headers='utmp.h',
- define='HAVE_UT_UT_ADDR')
conf.CHECK_STRUCTURE_MEMBER('struct utmpx', 'ut_syslen', headers='utmpx.h',
define='HAVE_UX_UT_SYSLEN')
conf.CHECK_CODE('struct utmp utarg; struct utmp *utreturn; utreturn = pututline(&utarg);',