Masques utilisateurs
#1
J'ai retrouvé plus ou moins par hasard une procédure très pratique pour générer des masks (pour le ban ou pour ajouter un utilisateur dans un eggdrop) faite par MC_8.

Je la mets ici pour pense-bête, sachant que je prépare un package "cc.alltools" qui contiendra toutes les procédures très pratiques qu'on utilise fréquement.
tcl
#- masktype{} is based upon the original by MC_8
# returns a modified mask (to add user, ban user, ...)
proc masktype {uhost type} {
    # 0 = *!user@host.domain
    # 1 = *!*user@host.domain
    # 2 = *!*@host.domain
    # 3 = *!*user@*.domain
    # 4 = *!*@*.domain
    # 5 = nick!user@host.domain
    # 6 = nick!*user@host.domain
    # 7 = nick!*@host.domain
    # 8 = nick!*user@*.domain
    # 9 = nick!*@*.domain
    # 10 = nick*!*@*.domain
    # 11 = regular eggdrop mask
    set masked [maskhost $uhost]
    set nick [string range $uhost 0 [expr [string first ! $uhost] - 1]]
    switch -- $type {
      0 {set ban "*[string range $uhost [string first ! $uhost] e]"}
      1 {set ban "*!*[string trimleft [string range $uhost [expr [string first ! $uhost] + 1] e] "~"]"}
      2 {set ban "*!*[string range $uhost [string first @ $uhost] e]"}
      3 {set ident [string range $uhost [expr [string first ! $uhost] + 1] [expr [string last @ $uhost] - 1]] ; set ban "*!*[string trimleft $ident ~][string range $masked [string first @ $masked] e]"}
      4 {set ban "*!*[string range $masked [string last @ $masked] e]"}
      5 {set ban $uhost}
      6 {set ident [string range $uhost [expr [string first ! $uhost] + 1] [expr [string last @ $uhost] - 1]] ; set ban "$nick!*[string trimleft $ident ~][string range $uhost [string last @ $uhost] e]"}
      7 {set ban "$nick!*[string range $uhost [string last @ $uhost] e]"}
      8 {set ident [string range $uhost [expr [string first ! $uhost] + 1] [expr [string last @ $uhost] - 1]] ; set ban "$nick!*[string trimleft $ident ~][string range $masked [string last @ $masked] e]"}
      9 {set ban "$nick!*[string range $masked [string last @ $masked] e]"}
      10 {set ban "$nick*!*[string range $masked [string last @ $masked] e]"}
      default {set ban "*!*[string range $uhost [string first @ $uhost] e]"}
    }
    return $ban
}



Enjoy it !
Répondre


Messages dans ce sujet
Masques utilisateurs - par CrazyCat - 05/07/2010, 17:07
RE: Masques utilisateurs - par CrazyCat - 10/07/2010, 18:59
RE: Masques utilisateurs - par Marc - 10/07/2010, 20:17
RE: Masques utilisateurs - par CrazyCat - 10/07/2010, 21:10

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
Tchat 100% gratuit -Discutez en toute liberté