diff --git a/COMENZI_SI_MODURI_COMPLETE.md b/COMENZI_SI_MODURI_COMPLETE.md index 4f3cfa7..c46f293 100644 --- a/COMENZI_SI_MODURI_COMPLETE.md +++ b/COMENZI_SI_MODURI_COMPLETE.md @@ -585,67 +585,93 @@ Tipuri disponibile: ### Comenzi Services -#### **SVSJOIN** - Force user to join channel +⚠️ **ATENȚIE**: Majoritatea comenzilor SVS* **NU SUNT ACTIVE** în versiunea curentă! +Fișierele `m_svs*.c` există dar **NU sunt înregistrate în parse.c**, deci comenzile **NU FUNCȚIONEAZĂ**! + +#### **SVSJOIN** - Force user to join channel ❌ NU FUNCȚIONEAZĂ ``` /SVSJOIN <#channel> ``` - Forțează user să intre pe canal -- **Fișier**: `m_svsjoin.c` -- **Privilegiu**: PRIV_CHAN_LIMIT +- **Fișier**: `m_svsjoin.c` (există dar NU e înregistrat în parser) +- **Status**: ❌ **NEFUNCȚIONAL** - Trebuie adăugat în parse.c -#### **SVSPART** - Force user to part channel +#### **SVSPART** - Force user to part channel ❌ NU FUNCȚIONEAZĂ ``` /SVSPART <#channel> ``` - Forțează user să părăsească canalul -- **Fișier**: `m_svspart.c` -- **Privilegiu**: PRIV_CHAN_LIMIT +- **Fișier**: `m_svspart.c` (există dar NU e înregistrat în parser) +- **Status**: ❌ **NEFUNCȚIONAL** - Trebuie adăugat în parse.c -#### **SVSNICK** - Force nick change +#### **SVSNICK** - Force nick change ❌ NU FUNCȚIONEAZĂ ``` /SVSNICK [] ``` - Forțează schimbare de nickname -- **Fișier**: `m_svsnick.c` -- **Privilegiu**: PRIV_CHAN_LIMIT +- **Fișier**: `m_svsnick.c` (există dar NU e înregistrat în parser) +- **Status**: ❌ **NEFUNCȚIONAL** - Trebuie adăugat în parse.c -#### **SVSMODE** - Force mode change +#### **SVSMODE** - Force mode change ❌ NU FUNCȚIONEAZĂ ``` /SVSMODE ``` - Forțează schimbare moduri user/canal -- **Fișier**: `m_svsmode.c` -- **Privilegiu**: PRIV_CHAN_LIMIT +- **Fișier**: `m_svsmode.c` (există dar NU e înregistrat în parser) +- **Status**: ❌ **NEFUNCȚIONAL** - Trebuie adăugat în parse.c -#### **SVSIDENT** - Set ident +#### **SVSIDENT** - Set ident ❌ NU FUNCȚIONEAZĂ ``` /SVSIDENT ``` - Setează ident pentru user -- **Fișier**: `m_svsident.c` +- **Fișier**: `m_svsident.c` (există dar NU e înregistrat în parser) +- **Status**: ❌ **NEFUNCȚIONAL** - Trebuie adăugat în parse.c -#### **SVSQUIT** - Force user quit +#### **SVSQUIT** - Force user quit ❌ NU FUNCȚIONEAZĂ ``` /SVSQUIT : ``` - Forțează user să se deconecteze -- **Fișier**: `m_svsquit.c` +- **Fișier**: `m_svsquit.c` (există dar NU e înregistrat în parser) +- **Status**: ❌ **NEFUNCȚIONAL** - Trebuie adăugat în parse.c -#### **SWHOIS** - Set special whois line +#### **SWHOIS** - Set special whois line ❌ NU FUNCȚIONEAZĂ ``` /SWHOIS : ``` - Setează linie specială în WHOIS -- **Fișier**: `m_swhois.c` -- **Privilegiu**: PRIV_CHAN_LIMIT +- **Fișier**: `m_swhois.c` (există dar NU e înregistrat în parser) +- **Status**: ❌ **NEFUNCȚIONAL** - Trebuie adăugat în parse.c -#### **SETHOST** - Set virtual host +#### **SVSINFO** - Services info ⚠️ PARȚIAL +``` +/SVSINFO +``` +- Informații despre servicii +- **Fișier**: `m_svsinfo.c` +- **Status**: ⚠️ **PROTOCOL INTERN** - Folosit între servere și servicii + +#### **SVSNOOP** - Services noop ⚠️ PARȚIAL +``` +/SVSNOOP +``` +- Services no-op command +- **Fișier**: `m_svsnoop.c` +- **Status**: ⚠️ **PROTOCOL INTERN** - Folosit între servere + +--- + +### Comenzi Administrative (FUNCȚIONALE) + +#### **SETHOST** - Set virtual host ✅ FUNCȚIONEAZĂ ``` /SETHOST ``` - Schimbă hostname-ul virtual - **Fișier**: `m_sethost.c` - **Privilegiu**: PRIV_FREEFORM +- **Status**: ✅ **FUNCȚIONAL** --- @@ -1062,33 +1088,106 @@ Acestea sunt comenzi interne folosite între servere în protocol: - Actions: kill, gline, block, warn - **Status**: NU IMPLEMENTAT (complex) -#### **SAJOIN** - Force join +--- + +### Comenzi Services (SVS*) - PRIORITATE ÎNALTĂ! ⚠️ + +⚠️ **CRITICAL**: Aceste comenzi **EXISTĂ în cod** (`m_svs*.c`) dar **NU sunt activate**! +Trebuie **înregistrate în parse.c** pentru a funcționa! + +#### **SVSJOIN** - Force user to join channel +``` +/SVSJOIN <#channel> +``` +- Forțează user să intre pe canal +- **Fișier**: `m_svsjoin.c` ✅ EXISTĂ +- **Status**: ❌ **NU E ÎNREGISTRAT ÎN PARSE.C** +- **Fix**: Adaugă în parse.c tabel MSG + +#### **SVSPART** - Force user to part channel +``` +/SVSPART <#channel> +``` +- Forțează user să părăsească canalul +- **Fișier**: `m_svspart.c` ✅ EXISTĂ +- **Status**: ❌ **NU E ÎNREGISTRAT ÎN PARSE.C** + +#### **SVSNICK** - Force nick change +``` +/SVSNICK [] +``` +- Forțează schimbare de nickname +- **Fișier**: `m_svsnick.c` ✅ EXISTĂ +- **Status**: ❌ **NU E ÎNREGISTRAT ÎN PARSE.C** + +#### **SVSMODE** - Force mode change +``` +/SVSMODE +``` +- Forțează schimbare moduri user/canal +- **Fișier**: `m_svsmode.c` ✅ EXISTĂ +- **Status**: ❌ **NU E ÎNREGISTRAT ÎN PARSE.C** + +#### **SVSIDENT** - Set ident +``` +/SVSIDENT +``` +- Setează ident pentru user +- **Fișier**: `m_svsident.c` ✅ EXISTĂ +- **Status**: ❌ **NU E ÎNREGISTRAT ÎN PARSE.C** + +#### **SVSQUIT** - Force user quit +``` +/SVSQUIT : +``` +- Forțează user să se deconecteze +- **Fișier**: `m_svsquit.c` ✅ EXISTĂ +- **Status**: ❌ **NU E ÎNREGISTRAT ÎN PARSE.C** + +#### **SWHOIS** - Set special whois line +``` +/SWHOIS : +``` +- Setează linie specială în WHOIS +- **Fișier**: `m_swhois.c` ✅ EXISTĂ +- **Status**: ❌ **NU E ÎNREGISTRAT ÎN PARSE.C** + +**📝 NOTĂ**: Pentru a activa comenzile SVS*, trebuie: +1. Verificat că fișierele m_svs*.c sunt compilate în Makefile +2. Adăugat entries în parse.c (MSG table) +3. Recompilat IRCd + +--- + +### Aliasuri Simple + +#### **SAJOIN** - Force join (alias) ``` /SAJOIN <#channel> ``` - Alias pentru SVSJOIN -- **Status**: POATE FI ADĂUGAT (alias simplu) +- **Status**: DEPINDE DE SVSJOIN -#### **SAPART** - Force part +#### **SAPART** - Force part (alias) ``` /SAPART <#channel> ``` - Alias pentru SVSPART -- **Status**: POATE FI ADĂUGAT +- **Status**: DEPINDE DE SVSPART -#### **SANICK** - Force nick change +#### **SANICK** - Force nick change (alias) ``` /SANICK ``` - Alias pentru SVSNICK -- **Status**: POATE FI ADĂUGAT +- **Status**: DEPINDE DE SVSNICK -#### **SAMODE** - Force mode +#### **SAMODE** - Force mode (alias) ``` /SAMODE ``` - Alias pentru SVSMODE -- **Status**: POATE FI ADĂUGAT +- **Status**: DEPINDE DE SVSMODE --- @@ -1323,16 +1422,20 @@ ACCOUNT ### Statistici Comenzi -- **Comenzi User**: ~50 comenzi disponibile -- **Comenzi Oper**: ~40 comenzi administrative -- **Comenzi Server**: ~25 comenzi interne -- **Comenzi Services**: ~10 comenzi SVS* +- **Comenzi User**: ~50 comenzi disponibile ✅ +- **Comenzi Oper**: ~30 comenzi administrative ✅ **FUNCȚIONALE** +- **Comenzi SVS***: ~8 comenzi ❌ **NEFUNCȚIONALE** (există cod dar NU sunt activate) +- **Comenzi Server**: ~25 comenzi interne ✅ +- **TOTAL Funcțional**: ~105 comenzi active + +⚠️ **NOTĂ IMPORTANTĂ**: Comenzile SVS* (SVSJOIN, SVSPART, SVSNICK, etc.) **NU FUNCȚIONEAZĂ** în versiunea curentă! +Codul există în fișiere `m_svs*.c` dar comenzile **NU sunt înregistrate în parse.c**! ### Statistici Moduri -- **User Modes**: 15+ moduri disponibile -- **Channel Modes**: 30+ moduri disponibile -- **Extended Bans**: 5+ tipuri +- **User Modes**: 15+ moduri disponibile ✅ +- **Channel Modes**: 30+ moduri disponibile ✅ +- **Extended Bans**: 5+ tipuri ✅ ### Features Majore @@ -1349,6 +1452,16 @@ ACCOUNT ## 🚀 DEZVOLTARE VIITOARE +### Prioritate MAXIMĂ ⚠️ (Cod există, trebuie activat!) + +1. **SVS* Commands** - Services commands + - SVSJOIN, SVSPART, SVSNICK, SVSMODE + - SVSIDENT, SVSQUIT, SWHOIS + - **Status**: Cod există în `m_svs*.c` dar NU e înregistrat în parse.c + - **Efort**: SCĂZUT (doar înregistrare în parser) + - **Impact**: MARE (comenzi esențiale pentru servicii) + - **Timp estimat**: 2-3 ore (verificare + testare) + ### Prioritate ÎNALTĂ 1. **SPAMFILTER** - Anti-spam automat @@ -1359,7 +1472,7 @@ ACCOUNT ### Prioritate MEDIE 1. **KNOCK** - Request invite -2. **SA* aliases** - Simplified commands (SAJOIN, SAPART, etc.) +2. **SA* aliases** - Simplified commands (SAJOIN, SAPART, etc.) [DEPIND DE SVS*] 3. **+G mode** - Bad words on channel 4. **+L mode** - Redirect overflow @@ -1372,6 +1485,52 @@ ACCOUNT --- +## ⚠️ ATENȚIE - Comenzi SVS* NEFUNCȚIONALE! + +### Ce trebuie făcut pentru a activa SVS*: + +1. **Verificare fișiere**: + ```bash + ls -la ircd/m_svs*.c ircd/m_swhois.c + # Ar trebui să existe toate fișierele + ``` + +2. **Verificare Makefile**: + ```bash + grep "m_svs" ircd/Makefile.in + # Ar trebui să fie în lista de compilare + ``` + +3. **Adăugare în parse.c**: + ```c + // În ircd/parse.c, în tabelul de comenzi: + { MSG_SVSJOIN, TOK_SVSJOIN, 0, MAXPARA, MFLG_SLOW, 0, { + m_ignore, m_ignore, ms_svsjoin, m_ignore, m_ignore + }}, + // Similar pentru toate SVS* commands + ``` + +4. **Recompilare**: + ```bash + make clean && make + make install + ``` + +### De ce nu funcționează ACUM: + +- ✅ Codul **EXISTĂ** în `m_svs*.c` files +- ❌ Comenzile **NU SUNT ÎNREGISTRATE** în `parse.c` +- ❌ Parser-ul **NU ȘTIE** de aceste comenzi +- ❌ Când dai `/SVSJOIN`, primești: **"Unknown command"** + +### Impact: + +- **Servicii IRC** (X, ChanServ, NickServ) **NU POT** folosi SVS* pentru control users +- **Force join/part/nick** **NU FUNCȚIONEAZĂ** +- **Integration cu Anope/Atheme** **LIMITATĂ** + +--- + ## 📞 PENTRU ADMINI ### Activare Features