mydir=appl$(S)user_user
BUILDTOP=$(REL)..$(S)..
+# If you remove the -DDEBUG, the test program needs a line changed
DEFINES = -DDEBUG
PROG_LIBPATH=-L$(TOPLIBD)
PROG_RPATH=$(KRB5_LIBDIR)
all:: uuclient uuserver
+check-pytests:: uuclient uuserver
+ $(RUNPYTEST) $(srcdir)/t_user2user.py $(PYTESTFLAGS)
+
uuclient: client.o $(KRB5_BASE_DEPLIBS)
$(CC_LINK) -o uuclient client.o $(KRB5_BASE_LIBS)
l_inaddr.sin_family = AF_INET;
l_inaddr.sin_addr.s_addr = 0;
- if (!(sp = getservbyname("uu-sample", "tcp"))) {
- com_err("uu-server", 0, "can't find uu-sample/tcp service");
- exit(3);
+ if (argc == 2) {
+ l_inaddr.sin_port = htons(atoi(argv[1]));
+ } else {
+ if (!(sp = getservbyname("uu-sample", "tcp"))) {
+ com_err("uu-server", 0, "can't find uu-sample/tcp service");
+ exit(3);
+ }
+ l_inaddr.sin_port = sp->s_port;
}
+
(void) setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, (char *)&one, sizeof (one));
- l_inaddr.sin_port = sp->s_port;
if (bind(sock, (struct sockaddr *)&l_inaddr, sizeof(l_inaddr))) {
com_err("uu-server", errno, "binding socket");
exit(3);
}
+
+ printf("Server started\n");
+ fflush(stdout);
+
if (listen(sock, 1) == -1) {
com_err("uu-server", errno, "listening");
exit(3);
--- /dev/null
+#!/usr/bin/python
+from k5test import *
+
+# If uuserver is not compiled under -DDEBUG, then set to 0
+debug_compiled=1
+
+for realm in multipass_realms():
+ if debug_compiled == 0:
+ realm.start_in_inetd(['./uuserver', 'uuserver'], port=9999)
+ else:
+ srv_output = realm.start_server(['./uuserver', '9999'], 'Server started')
+
+ output = realm.run_as_client(['./uuclient', hostname, 'testing message', '9999'])
+ if 'uu-client: server says \"Hello, other end of connection.\"' not in output:
+ fail('Message not echoed back.')
+
+
+success('User-2-user test programs.')