Bez tytułu

z Diminutive Gibbon, 6 miesiące temu, napisane w C, wyświetlone 62 razy. [paste_expire] 4 miesiące.
URL https://pastebin.k4be.pl/view/b0c10522 Udostępnij
Pobierz wklejkę lub Pokaż surowy tekst
  1. #include "unrealircd.h"
  2.  
  3. #define MSG_CAP "CAP"
  4.  
  5. long CAP_POISON = 0L;
  6.  
  7. ModuleHeader MOD_HEADER
  8.   = {
  9.         "third/cap-poison",     /* Name of module */
  10.         "5.0", /* Version */
  11.         "Reject clients requesting invalid caps", /* Short description of module */
  12.         "k4be@PIRC",
  13.         "unrealircd-5",
  14.     };
  15.  
  16. CMD_OVERRIDE_FUNC(cmd_cap);
  17.  
  18. MOD_INIT(){
  19.         ClientCapabilityInfo cap;
  20.         ClientCapability *c;
  21.  
  22.         memset(&cap, 0, sizeof(cap));
  23.         cap.name = "pirc.pl/killme";
  24.         c = ClientCapabilityAdd(modinfo->handle, &cap, &CAP_POISON);
  25.  
  26.         return MOD_SUCCESS;
  27. }
  28.  
  29. MOD_LOAD(){
  30.         if(!CommandOverrideAddEx(modinfo->handle, MSG_CAP, 0, cmd_cap)){
  31.                 config_error("[%s] Critical: Failed to request command override for CAP: %s", MOD_HEADER.name, ModuleGetErrorStr(modinfo->handle));
  32.         }
  33.         return MOD_SUCCESS;
  34. }
  35.  
  36. MOD_UNLOAD(){
  37.         return MOD_SUCCESS;
  38. }
  39.  
  40. CMD_OVERRIDE_FUNC(cmd_cap){
  41.         CallCommandOverride(ovr, client, recv_mtags, parc, parv); // the original command
  42.         if (HasCapabilityFast(client, CAP_POISON)) {
  43.                 sendnotice(client, "Your client has requested an invalid capability. Values unknown to the client should be ALL ignored! Please see the spec at https://ircv3.net/specs/extensions/capability-negotiation.html");
  44.                 sendnotice(client, "Twój klient zażądał niepoprawnego parametru CAP. Wszystkie nieznane funkcje powinny być ignorowane! Pełna specyfikacja jest dostępna pod adresem https://ircv3.net/specs/extensions/capability-negotiation.html");
  45.                 exit_client(client, NULL, "Requested invalid capability");
  46.         }
  47. }
  48.  

odpowiedź "Bez tytułu"

Tutaj możesz odpowiedzieć na wklejkę z góry

captcha