/***************************************************************************
- * Copyright (C) 2005-2014 by the Quassel Project *
+ * Copyright (C) 2005-2015 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
else
useSsl = _connectionFeatures & Protocol::Encryption;
- if (Quassel::isOptionSet("require-ssl") && !useSsl) {
+ if (Quassel::isOptionSet("require-ssl") && !useSsl && !_peer->isLocal()) {
_peer->dispatch(ClientDenied(tr("<b>SSL is required!</b><br>You need to use SSL in order to connect to this core.")));
_peer->close();
return;
if (!configured)
backends = Core::backendInfo();
- // useSsl and startTime are only used for the legacy protocol
- _peer->dispatch(ClientRegistered(Quassel::features(), configured, backends, useSsl, Core::instance()->startTime()));
+ int uptime = Core::instance()->startTime().secsTo(QDateTime::currentDateTime().toUTC());
+ int updays = uptime / 86400; uptime %= 86400;
+ int uphours = uptime / 3600; uptime %= 3600;
+ int upmins = uptime / 60;
+ QString coreInfo = tr("<b>Quassel Core Version %1</b><br>"
+ "Built: %2<br>"
+ "Up %3d%4h%5m (since %6)").arg(Quassel::buildInfo().fancyVersionString)
+ .arg(Quassel::buildInfo().buildDate)
+ .arg(updays).arg(uphours, 2, 10, QChar('0')).arg(upmins, 2, 10, QChar('0')).arg(Core::instance()->startTime().toString(Qt::TextDate));
+
+ // useSsl and coreInfo are only used for the legacy protocol
+ _peer->dispatch(ClientRegistered(Quassel::features(), configured, backends, useSsl, coreInfo));
if (_legacy && useSsl)
startSsl();