summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Karl Ramm <kcr@mit.edu>2008-12-25 01:11:55 +0000
committerGravatar Karl Ramm <kcr@mit.edu>2008-12-25 01:11:55 +0000
commitd6fd7f016431ef3f980c1cb722f9f571a7af0e08 (patch)
tree82d48800a03bddafe0c8a3373632d6179f43f156
parentc28cb1398dc8179eb76377489d2217a36c5fa163 (diff)
change ZNotice_t around a bit, libzephyr4
-rwxr-xr-xconfigure4
-rw-r--r--debian/control36
-rw-r--r--debian/libzephyr4.files (renamed from debian/libzephyr3.files)0
-rwxr-xr-xdebian/rules22
-rw-r--r--h/zephyr/zephyr.h12
-rw-r--r--lib/Makefile.in2
-rw-r--r--lib/ZParseNot.c3
7 files changed, 45 insertions, 34 deletions
diff --git a/configure b/configure
index 00d5e42..44b9778 100755
--- a/configure
+++ b/configure
@@ -24646,7 +24646,7 @@ if test "${ac_cv_lib_krb5_krb5_init_context+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
-LIBS="-lkrb5 $LIBS"
+LIBS="-lkrb5 -lk5crypto -lcom_err $LIBS"
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -24709,7 +24709,7 @@ echo "$as_me: error: Kerberos 5 libraries not found" >&2;}
{ (exit 1); exit 1; }; }
fi
- KRB5_LIBS="-lkrb5"
+ KRB5_LIBS="-lkrb5 -lk5crypto -lcom_err"
cat >>confdefs.h <<\_ACEOF
#define HAVE_KRB5 1
_ACEOF
diff --git a/debian/control b/debian/control
index 1950056..ae6e4bc 100644
--- a/debian/control
+++ b/debian/control
@@ -6,24 +6,24 @@ Uploaders: Karl Ramm <kcr@debian.org>, Sam Hartman <hartmans@debian.org>
Build-Depends: debhelper (>= 4), libares-dev, libkrb5-dev (>= 1.2.2-4), comerr-dev, ss-dev, libreadline5-dev, libx11-dev, libxt-dev, x-dev, libxaw7-dev | libxaw8-dev, libxmu-dev, libncurses5-dev, bison, libhesiod-dev, libssl-dev
Standards-Version: 3.7.2.2
-Package: libzephyr3
+Package: libzephyr4
Section: libs
Architecture: any
Depends: ${shlibs:Depends}
-Conflicts: libzephyr3-krb, libzephyr3-krb5, libzephyr3-krb45
+Conflicts: libzephyr4-krb, libzephyr4-krb5, libzephyr4-krb45
Description: The original "Instant Message" system libraries without Kerberos
This is the Project Athena Zephyr notification system 2000/04/21 snapshot.
Zephyr allows users to send messages to other users or to groups of
users. Users can view incoming Zephyr messages as windowgrams
(transient X windows) or as text on a terminal.
-Package: libzephyr3-krb
+Package: libzephyr4-krb
Section: libs
Architecture: any
Depends: ${shlibs:Depends}, krb4-config
-Conflicts: libzephyr3, libzephyr3-krb5, libzephyr3-krb45
-Replaces: libzephyr3, libzephyr3-krb5, libzephyr3-krb45
-Provides: libzephyr3
+Conflicts: libzephyr4, libzephyr4-krb5, libzephyr4-krb45
+Replaces: libzephyr4, libzephyr4-krb5, libzephyr4-krb45
+Provides: libzephyr4
Description: The original "Instant Message" system libraries with Kerberos
This version of the library uses Kerberos for message authentication.
.
@@ -32,13 +32,13 @@ Description: The original "Instant Message" system libraries with Kerberos
users. Users can view incoming Zephyr messages as windowgrams
(transient X windows) or as text on a terminal.
-Package: libzephyr3-krb5
+Package: libzephyr4-krb5
Section: libs
Architecture: any
Depends: ${shlibs:Depends}, krb5-config
-Conflicts: libzephyr3, libzephyr3-krb, libzephyr3-krb45
-Replaces: libzephyr3, libzephyr3-krb, libzephyr3-krb45
-Provides: libzephyr3
+Conflicts: libzephyr4, libzephyr4-krb, libzephyr4-krb45
+Replaces: libzephyr4, libzephyr4-krb, libzephyr4-krb45
+Provides: libzephyr4
Description: The original "Instant Message" system libraries with Kerberos 5
This version of the library uses Kerberos for message authentication.
.
@@ -47,13 +47,13 @@ Description: The original "Instant Message" system libraries with Kerberos 5
users. Users can view incoming Zephyr messages as windowgrams
(transient X windows) or as text on a terminal.
-Package: libzephyr3-krb45
+Package: libzephyr4-krb45
Section: libs
Architecture: any
Depends: ${shlibs:Depends}, krb5-config
-Conflicts: libzephyr3, libzephyr3-krb, libzephyr3-krb5
-Replaces: libzephyr3, libzephyr3-krb, libzephyr3-krb5
-Provides: libzephyr3
+Conflicts: libzephyr4, libzephyr4-krb, libzephyr4-krb5
+Replaces: libzephyr4, libzephyr4-krb, libzephyr4-krb5
+Provides: libzephyr4
Description: The original "Instant Message" system libraries with Kerberos 4+5
This version of the library uses Kerberos for message authentication.
.
@@ -96,7 +96,7 @@ Description: The original "Instant Message" system-server without Kerberos
Package: zephyr-server-krb
Section: net
Architecture: any
-Depends: ${shlibs:Depends}, debconf | debconf-2.0, libzephyr3-krb
+Depends: ${shlibs:Depends}, debconf | debconf-2.0, libzephyr4-krb
Conflicts: zephyr-server, zephyr-server-krb5, zephyr-server-krb45
Replaces: zephyr-server, zephyr-server-krb5, zephyr-server-krb45
Provides: zephyr-server
@@ -118,7 +118,7 @@ Description: The original "Instant Message" system-server with Kerberos
Package: zephyr-server-krb5
Section: net
Architecture: any
-Depends: ${shlibs:Depends}, debconf | debconf-2.0, libzephyr3-krb5
+Depends: ${shlibs:Depends}, debconf | debconf-2.0, libzephyr4-krb5
Conflicts: zephyr-server, zephyr-server-krb, zephyr-server-krb45
Replaces: zephyr-server, zephyr-server-krb, zephyr-server-krb45
Provides: zephyr-server
@@ -140,7 +140,7 @@ Description: The original "Instant Message" system-server with Kerberos 5
Package: zephyr-server-krb45
Section: net
Architecture: any
-Depends: ${shlibs:Depends}, debconf | debconf-2.0, libzephyr3-krb45
+Depends: ${shlibs:Depends}, debconf | debconf-2.0, libzephyr4-krb45
Conflicts: zephyr-server, zephyr-server-krb, zephyr-server-krb5
Replaces: zephyr-server, zephyr-server-krb, zephyr-server-krb5
Provides: zephyr-server
@@ -162,7 +162,7 @@ Description: The original "Instant Message" system-server with Kerberos 4+5
Package: libzephyr-dev
Section: libdevel
Architecture: any
-Depends: libzephyr3 (= ${binary:Version}) | libzephyr3-krb (= ${binary:Version}), libc6-dev
+Depends: libzephyr4 (= ${binary:Version}) | libzephyr4-krb (= ${binary:Version}), libc6-dev
Description: The original "Instant Message" system development libraries
This package is needed to compile certain other zephyr clients. There are
various other clients available, including a totally gratuitous Motif client,
diff --git a/debian/libzephyr3.files b/debian/libzephyr4.files
index a837249..a837249 100644
--- a/debian/libzephyr3.files
+++ b/debian/libzephyr4.files
diff --git a/debian/rules b/debian/rules
index 231ca17..7d7bd51 100755
--- a/debian/rules
+++ b/debian/rules
@@ -85,7 +85,7 @@ clean:
-rm debian/zephyr-server-krb.postinst
-rm debian/zephyr-server-krb5.*
-rm debian/zephyr-server-krb45.*
- -rm debian/libzephyr3-krb.files debian/libzephyr3-krb5.files debian/libzephyr3-krb45.files
+ -rm debian/libzephyr4-krb.files debian/libzephyr4-krb5.files debian/libzephyr4-krb45.files
dh_clean
@@ -129,13 +129,13 @@ binary-arch: build install
cp debian/zephyr-server-krb.$$file debian/zephyr-server-krb5.$$file; \
cp debian/zephyr-server-krb.$$file debian/zephyr-server-krb45.$$file; \
done
- cp debian/libzephyr3.files debian/libzephyr3-krb.files
- cp debian/libzephyr3.files debian/libzephyr3-krb5.files
- cp debian/libzephyr3.files debian/libzephyr3-krb45.files
- dh_movefiles -plibzephyr3 -pzephyr-clients -pzephyr-server -plibzephyr-dev
- dh_movefiles --sourcedir=debian/tmp-krb4 -plibzephyr3-krb -pzephyr-server-krb
- dh_movefiles --sourcedir=debian/tmp-krb5 -plibzephyr3-krb5 -pzephyr-server-krb5
- dh_movefiles --sourcedir=debian/tmp-krb45 -plibzephyr3-krb45 -pzephyr-server-krb45
+ cp debian/libzephyr4.files debian/libzephyr4-krb.files
+ cp debian/libzephyr4.files debian/libzephyr4-krb5.files
+ cp debian/libzephyr4.files debian/libzephyr4-krb45.files
+ dh_movefiles -plibzephyr4 -pzephyr-clients -pzephyr-server -plibzephyr-dev
+ dh_movefiles --sourcedir=debian/tmp-krb4 -plibzephyr4-krb -pzephyr-server-krb
+ dh_movefiles --sourcedir=debian/tmp-krb5 -plibzephyr4-krb5 -pzephyr-server-krb5
+ dh_movefiles --sourcedir=debian/tmp-krb45 -plibzephyr4-krb45 -pzephyr-server-krb45
dh_installdebconf
dh_installdocs
dh_installinit -pzephyr-clients --init-script=zhm --no-start
@@ -150,9 +150,9 @@ binary-arch: build install
# You may want to make some executables suid here.
dh_makeshlibs
# sigh
- cp debian/libzephyr3/DEBIAN/shlibs debian/libzephyr3-krb/DEBIAN/shlibs
- cp debian/libzephyr3/DEBIAN/shlibs debian/libzephyr3-krb5/DEBIAN/shlibs
- cp debian/libzephyr3/DEBIAN/shlibs debian/libzephyr3-krb45/DEBIAN/shlibs
+ cp debian/libzephyr4/DEBIAN/shlibs debian/libzephyr4-krb/DEBIAN/shlibs
+ cp debian/libzephyr4/DEBIAN/shlibs debian/libzephyr4-krb5/DEBIAN/shlibs
+ cp debian/libzephyr4/DEBIAN/shlibs debian/libzephyr4-krb45/DEBIAN/shlibs
dh_shlibdeps
dh_installdeb
dh_gencontrol
diff --git a/h/zephyr/zephyr.h b/h/zephyr/zephyr.h
index 0346e05..5967707 100644
--- a/h/zephyr/zephyr.h
+++ b/h/zephyr/zephyr.h
@@ -74,12 +74,20 @@ typedef struct _ZNotice_t {
char *z_version;
ZNotice_Kind_t z_kind;
ZUnique_Id_t z_uid;
-#define z_sender_addr z_uid.zuid_addr
+ union {
+ struct sockaddr sa;
+ struct sockaddr_in ip4;
+ struct sockaddr_in6 ip6;
+ } z_sender_sockaddr;
+ /* heavily deprecated: */
+#define z_sender_addr z_sender_sockaddr.ip4.sin_addr
+ /* probably a bad idea?: */
+#define z_port z_sender_sockaddr.ip4.sin_port
struct _ZTimeval z_time;
- unsigned short z_port;
int z_auth;
int z_checked_auth;
int z_authent_len;
+ int z_charset;
char *z_ascii_authent;
char *z_class;
char *z_class_inst;
diff --git a/lib/Makefile.in b/lib/Makefile.in
index 64e3692..1e80f84 100644
--- a/lib/Makefile.in
+++ b/lib/Makefile.in
@@ -47,7 +47,7 @@ OBJS = zephyr_err.lo ZAsyncLocate.lo ZCkAuth.lo ZCkIfNot.lo ZClosePort.lo \
all: libzephyr.la
libzephyr.la: ${OBJS}
- ${LIBTOOL} --mode=link ${CC} -rpath ${libdir} -version-info 3:0:0 \
+ ${LIBTOOL} --mode=link ${CC} -rpath ${libdir} -version-info 4:0:0 \
${LDFLAGS} -o $@ ${OBJS} ${LIBS}
zephyr_err.c ${BUILDTOP}/h/zephyr/zephyr_err.h: zephyr_err.et
diff --git a/lib/ZParseNot.c b/lib/ZParseNot.c
index 72a7587..48fc29e 100644
--- a/lib/ZParseNot.c
+++ b/lib/ZParseNot.c
@@ -117,6 +117,9 @@ ZParseNotice(char *buffer,
BAD_PACKET;
notice->z_time.tv_sec = ntohl((u_long) notice->z_uid.tv.tv_sec);
notice->z_time.tv_usec = ntohl((u_long) notice->z_uid.tv.tv_usec);
+ memset(&notice->z_sender_sockaddr, 0, sizeof notice->z_sender_sockaddr);
+ notice->z_sender_sockaddr.ip4.sin_family = AF_INET;
+ notice->z_sender_sockaddr.ip4.sin_addr = notice->z_uid.zuid_addr;
numfields--;
ptr = next_field(ptr, end);
}