]> jfr.im git - irc/quakenet/newserv.git/blobdiff - miscreply/version.c
Merge chanserv-live into default.
[irc/quakenet/newserv.git] / miscreply / version.c
index b19552d789e66e7444170baf47e1a7b539b7d45b..94f76ce002c3d5bcbfd3d8cc693c81b70c9e0209 100644 (file)
@@ -1,18 +1,11 @@
 /* version.c */
 
 #include "miscreply.h"
-#include "numeric.h"
 #include "../irc/irc.h"
 #include "../core/error.h"
-#include "../nick/nick.h"
 
-#include <string.h>
 
 
-
-/* TODO: grab version info from conf or elsewhere */
-/* TODO: grab configuration string from elsewhere? */
-
 /* handle remote version request
  *
  * <source numeric> VERSION/V <target server numeric>
  */
 int handleversionmsg(void *source, int cargc, char **cargv) {
 
-  nick *snick;                                          /* struct nick for source nick */
-
-  int i;                                                /* index for serverlist[] */
-  char *sourcenum = (char *)source;                     /* source user numeric */
-  char *targetnum = getmynumeric();                     /* target server numeric */
-  char *servernum;                                      /* server numeric parameter */
-  char *servername = myserver->content;                 /* servername */
-  char *version = "newserv2.10.12.";                    /* version */
-  char *info = "B0HM6";                                 /* configuration string */
+  nick *snick;                        /* struct nick for source nick */
+  char *sourcenum = (char *)source;   /* source user numeric */
 
   /* check parameters */
   if (cargc < 1) {
@@ -39,36 +25,15 @@ int handleversionmsg(void *source, int cargc, char **cargv) {
     return CMD_OK;
   }
 
-  /* get the parameter */
-  servernum = cargv[0];
-
-  /* from a server? */
-  if (IsServer(sourcenum))
-    return CMD_OK;
-
   /* find source user */ 
   if (!(snick = miscreply_finduser(sourcenum, "VERSION")))
     return CMD_OK;
 
-  /* request is not for me and not for * (all servers) */
-  if (!IsMeNum(servernum) && !(servernum[0] == '*' && servernum[1] == '\0')) {
-
-    /* find the server */
-    if ((i = miscreply_findservernum(sourcenum, servernum, "VERSION")) == -1)
-      return CMD_OK;
-
-    targetnum = longtonumeric(i, 2);
-    servername = serverlist[i].name->content;
-
-    /* tell user */
-    send_snotice(sourcenum, "VERSION: Server %s is not a real server.", servername);
-  }
-
   /*
    * 351 RPL_VERSION "source 351 target version server :info"
-   *                 "irc.netsplit.net 351 foobar u2.10.12.12+snircd(1.3.4a). irc.netsplit.net :B128AHMU6"
+   *                 "irc.netsplit.net 351 foobar u2.10.12.12+snircd(1.3.4a). irc.netsplit.net :B96ADHMRU6"
    */
-  send_reply(targetnum, RPL_VERSION, sourcenum, "%s %s :%s", version, servername, info);
+  irc_send("%s 351 %s newserv%s %s :Newserv IRC Service", getmynumeric(), sourcenum, MISCREPLY_VERSION, myserver->content);
 
   return CMD_OK;
 }