code: public int initSecContext(InputStream in, OutputStream out)
          throws GSSException {
          byte [] inToken = null;
          try {
              if (!this.conn) {
                  inToken = new byte[0];
              } else {
                  inToken = SSLUtil.readSslMessage(in);
              }
              byte [] outToken = initSecContext(inToken, 0, inToken.length);
              if (outToken != null) {
                  out.write(outToken);
                  return outToken.length;
              } else {
                  return 0;
              }
          } catch (IOException e) {
              throw new GlobusGSSException(GSSException.FAILURE, e);
          }
      }
docs: It works just like {@link #initSecContext(byte[], int, int) initSecContext} method.
  It reads one SSL token from input stream, calls
  {@link #initSecContext(byte[], int, int) initSecContext} method and
  writes the output token to the output stream (if any)
  SSL token is not read on the initial call.