Re: [PATCH] updated GSSAPI client split
Derek Robert Price <[email protected]>
| Newsgroups | gmane.comp.version-control.cvs.bugs |
|---|---|
| Organization | Ximbiot <http://ximbiot.com> |
| Message-ID | <[email protected]> |
Alexey Mahotkin wrote: >[ Several more little things split out. Needs all of the above patches. ] > >TODO: recv_bytes() probably needs to be moved to socket-client.c too, but >that could be done later. > >Kerberos later, and split in at least four pieces. > > >2003-05-07 Alexey Mahotkin <[email protected]> > >Move GSSAPI client stuff from client.c to gssapi-client.[ch]; > >move GSSAPI buffers from server.c to gssapi-client.[ch]; > >compile gssapi-client.c only if GSSAPI is found by configure; > >move global `gcontext' variable to gssapi-client.c and use a simple >wrapper > I think I've committed all your other patches, but I'm getting errors trying to compile this with and without GSSAPI enabled: --without-gssapi: > depmode=gcc3 /bin/sh ../depcomp \ > gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../lib -I../diff -I../zlib -g > -O2 -c `test -f 'classify.c' || echo './'`classify.c > source='client.c' object='client.o' libtool=no \ > depfile='.deps/client.Po' tmpdepfile='.deps/client.TPo' \ > depmode=gcc3 /bin/sh ../depcomp \ > gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../lib -I../diff -I../zlib -g > -O2 -c `test -f 'client.c' || echo './'`client.c > In file included from gssapi-client.h:17, > from client.c:33: > ../lib/xgssapi.h:25:28: gssapi/gssapi.h: No such file or directory > In file included from client.c:33: > gssapi-client.h:24: parse error before "gcontext" > gssapi-client.h:24: warning: data definition has no type or storage class > gssapi-client.h:31: parse error before "gss_ctx_id_t" > gssapi-client.h:31: parse error before ')' token > make[2]: *** [client.o] Error 1 > make[2]: Leaving directory `/home/oberon/work/ccvs-patch/src' > make[1]: *** [all-recursive] Error 1 > make[1]: Leaving directory `/home/oberon/work/ccvs-patch' > make: *** [all] Error 2 --with-gssapi: > gcc -g -O2 -o cvs add.o admin.o annotate.o buffer.o checkin.o > checkout.o classify.o client.o commit.o create_adm.o cvsrc.o diff.o > edit.o entries.o error.o expand_path.o fileattr.o filesubr.o > find_names.o hardlink.o hash.o history.o ignore.o import.o lock.o > log.o log-buffer.o login.o logmsg.o main.o mkmodules.o modules.o > myndbm.o no_diff.o parseinfo.o patch.o rcs.o rcscmds.o recurse.o > release.o remove.o repos.o root.o rsh-client.o run.o scramble.o > server.o socket-client.o > status.o subr.o tag.o update.o version.o vers_ts.o watch.o wrapper.o > zlib.o ../diff/libdiff.a ../lib/libcvs.a ../zlib/libz.a -lcrypt > -lgssapi_krb5 -lkrb5 -lk5crypto -lcrypt -lresolv -lcom_err > -L/usr/kerberos/lib -lnsl > client.o: In function `auth_server': > /home/oberon/work/ccvs-patch/src/client.c:3362: undefined reference to > `connect_to_gserver' > client.o: In function `start_server': > /home/oberon/work/ccvs-patch/src/client.c:3961: undefined reference to > `initialize_gssapi_buffers' > server.o: In function `serve_gssapi_authenticate': > /home/oberon/work/ccvs-patch/src/server.c:2272: undefined reference to > `cvs_gssapi_wrap_buffer_initialize' > /home/oberon/work/ccvs-patch/src/server.c:2275: undefined reference to > `cvs_gssapi_wrap_buffer_initialize' > collect2: ld returned 1 exit status > make[2]: *** [cvs] Error 1 > make[2]: Leaving directory `/home/oberon/work/ccvs-patch/src' > make[1]: *** [all-recursive] Error 1 > make[1]: Leaving directory `/home/oberon/work/ccvs-patch' > make: *** [all] Error 2 I also reworked your build changes. New patch for configure.in, acinclude.m4, & src/Makefile.am follows: Index: configure.in =================================================================== RCS file: /cvsroot/ccvs/configure.in,v retrieving revision 1.189 diff -u -r1.189 configure.in --- configure.in 30 Apr 2003 15:28:40 -0000 1.189 +++ configure.in 8 May 2003 17:32:05 -0000 @@ -312,6 +312,9 @@ AC_SEARCH_LIBS(gethostbyname, netinet) +AC_SUBST(cvs_client_sources) + + dnl dnl begin --with-* dnl Index: acinclude.m4 =================================================================== RCS file: /cvsroot/ccvs/acinclude.m4,v retrieving revision 1.9 diff -u -r1.9 acinclude.m4 --- acinclude.m4 30 Apr 2003 15:28:40 -0000 1.9 +++ acinclude.m4 8 May 2003 17:32:05 -0000 @@ -102,6 +102,8 @@ [Define if you have GSSAPI with Kerberos version 5 available.]) CPPFLAGS=$CPPFLAGS$GSSAPI_INCLUDES + cvs_client_sources="$cvs_client_sources gssapi-client.c gssapi-client.h" + # locate any other headers dnl We don't use HAVE_KRB5_H anywhere, but including it here might make it dnl easier to spot errors by reading configure output Index: src/Makefile.am =================================================================== RCS file: /cvsroot/ccvs/src/Makefile.am,v retrieving revision 1.25 diff -u -r1.25 Makefile.am --- src/Makefile.am 8 May 2003 16:28:23 -0000 1.25 +++ src/Makefile.am 8 May 2003 17:32:05 -0000 @@ -92,7 +92,11 @@ root.h \ server.h \ update.h \ - watch.h + watch.h \ + $(cvs_client_sources) + +EXTRA_cvs_SOURCES = \ + gssapi-client.c gssapi-client.h cvs_LDADD = \ ../diff/libdiff.a \ Derek -- *8^) Email: [email protected] Get CVS support at <http://ximbiot.com>! -- f u cn rd ths, u cn gt a gd jb n cmptr prgrmmng