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

version» Context lines:

pike.git/lib/modules/SSL.pmod/Connection.pike:84:   Alert alert(int(1..2) level, int(8bit) description,    string|void message)   {    return context->alert_factory(this, level, description, version,    message);   }      string(8bit) get_signature_algorithms()   {    ADT.struct sign_algs = ADT.struct(); -  foreach(sort(indices(HASH_lookup)), int h) { -  sign_algs->put_uint(h, 1); -  sign_algs->put_uint(SIGNATURE_rsa, 1); -  sign_algs->put_uint(h, 1); -  sign_algs->put_uint(SIGNATURE_dsa, 1); - #if constant(Crypto.ECC.Curve) -  // NB: MD5 is not supported with ECDSA signatures. -  if (h != HASH_md5) { -  sign_algs->put_uint(h, 1); -  sign_algs->put_uint(SIGNATURE_ecdsa, 1); +  foreach(context->signature_algorithms, [int hash, int sign]) +  { +  sign_algs->put_uint(hash, 1); +  sign_algs->put_uint(sign, 1);    } - #endif -  } +     return sign_algs->pop_data();   }      #ifdef SSL3_PROFILING   System.Timer timer = System.Timer();   void addRecord(int t,int s) {    Stdio.stdout.write("time: %.6f sender: %d type: %s\n", timer->get(), s,    fmt_constant(t, "HANDSHAKE"));   }   #endif