#include "hash.h"
#include "ircd.h"
#include "ircd_features.h"
+#include "ircd_log.h"
#include "ircd_reply.h"
#include "ircd_snprintf.h"
#include "ircd_string.h"
+#include "match.h"
#include "msg.h"
#include "numeric.h"
#include "numnicks.h"
#include "supported.h"
#include "version.h"
-#include <assert.h>
+/* #include <assert.h> -- Now using assert in ircd_log.h */
/*
* m_version - generic message handler
*/
int m_version(struct Client* cptr, struct Client* sptr, int parc, char* parv[])
{
- struct Client *acptr;
- if (parc > 1 && (!(acptr = find_match_server(parv[1])) || !IsMe(acptr)))
- send_reply(sptr, ERR_NOPRIVILEGES);
- else
- {
- send_reply(sptr, RPL_VERSION, version, debugmode, cli_name(&me),
- debug_serveropts());
- send_supported(sptr);
- }
+ if (parc > 1 && match(parv[1], cli_name(&me)))
+ return send_reply(sptr, ERR_NOPRIVILEGES);
+
+ send_reply(sptr, RPL_VERSION, version, debugmode, cli_name(&me),
+ debug_serveropts());
+ send_supported(sptr);
return 0;
}
/*
- * mo_version - generic message handler
+ * mo_version - oper message handler
*
* parv[0] = sender prefix
* parv[1] = servername