pike.git / lib / modules / SSL.pmod / Session.pike

version» Context lines:

pike.git/lib/modules/SSL.pmod/Session.pike:642:    read_state->tls_iv = write_state->tls_iv = cipher_spec->iv_size;    }    read_state->crypt->set_iv(keys[4]);    write_state->crypt->set_iv(keys[5]);    }    }       switch(compression_algorithm) {    case COMPRESSION_deflate:   #if constant(Gz) -  // FIXME: RFC 5246 6.2.2: -  // If the decompression function encounters a TLSCompressed.fragment -  // that would decompress to a length in excess of 2^14 bytes, it MUST -  // report a fatal decompression failure error. -  read_state->compress = Gz.inflate()->inflate; -  write_state->compress = -  class(function(string, int:string) _deflate) { -  string deflate(string s) { -  // RFC 3749 2: -  // All data that was submitted for compression MUST be -  // included in the compressed output, with no data -  // retained to be included in a later output payload. -  // Flushing ensures that each compressed packet payload -  // can be decompressed completely. -  return _deflate(s, Gz.SYNC_FLUSH); -  } -  }(Gz.deflate()->deflate)->deflate; +  read_state->compress = Gz.uncompress; +  write_state->compress = Gz.compress;   #endif    break;    }    return ({ read_state, write_state });   }      //! Computes a new set of encryption states, derived from the   //! client_random, server_random and master_secret strings.   //!   //! @returns