(recv_token): When continuning a partial read over the network, put
authorEzra Peisach <epeisach@mit.edu>
Sun, 8 Oct 1995 18:29:25 +0000 (18:29 +0000)
committerEzra Peisach <epeisach@mit.edu>
Sun, 8 Oct 1995 18:29:25 +0000 (18:29 +0000)
the incomming data into the middle of the token - not back at the
start.

Now, can someone explain why under NetBSD, in one direction 400+ bytes
could be sent at one time, but in the reverse, 102 had to be broken down
into 100 + 2? Anyways, this fixes the NetBSD problem with the tests.

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@6948 dc483132-0cff-0310-8789-dd5450dbe970

src/appl/gss-sample/ChangeLog
src/appl/gss-sample/gss-misc.c

index ad0b68425db09e5e0a00dbd3309edb3f6f858397..ecbd213b98ac8822f24a630e5f2756325839c349 100644 (file)
@@ -1,3 +1,8 @@
+Sun Oct  8 14:26:25 1995  Ezra Peisach  <epeisach@kangaroo.mit.edu>
+
+       * gss-misc.c (recv_token): When looping for partial read from
+               network, start reading in the middle of the token.
+
 Wed Sep 27 18:36:06 1995  Theodore Y. Ts'o  <tytso@dcl>
 
        * gss-client.c (main): Set display_file to be stdout.
index 8abf90f7b971bd563af998e06b9ca8837ecea46e..82110d79cebd9dae4dd7c85bd1d2512e5922995c 100644 (file)
@@ -143,7 +143,7 @@ int recv_token(s, tok)
      }
 
      while (readsofar < tok->length) {
-        ret = read(s, (char *) tok->value, tok->length);
+        ret = read(s, (char *) tok->value + readsofar, tok->length);
         readsofar += ret;
         if (ret < 0) {
             perror("reading token data");