ircu2/REBRAND_v1.3.0.md

392 lines
9.7 KiB
Markdown

# REBRAND v1.3.0 - UnderChat în loc de Nefarious
## 🎨 REBRANDING COMPLET
**Data:** 14 Februarie 2026
**Versiune:** v1.3.0
**Severitate:** 📝 Cosmetică (dar necesită recompilare)
---
## 🐛 PROBLEMA RAPORTATĂ
**Utilizator a observat:**
```
[14:39] * Joins: iRO (iRO@Nefarious-2F378ED1.eushells.ro)
```
**Problema:** Prefixul "Nefarious-" apare în hostname-urile ascunse (cloaked hostnames).
**Cerință:** Schimbarea prefixului de la "Nefarious-" la "UnderChat-" pentru branding consistent.
---
## 🔍 ANALIZĂ TEHNICĂ
### Unde este definit prefixul?
Hostname-urile ascunse (host hiding/cloaking) sunt generate în codul sursă folosind mai multe setări din `ircd/ircd_features.c`:
#### **1. HOST_HIDING_PREFIX** (Linia 753)
```c
F_S(HOST_HIDING_PREFIX, 0, "Nefarious", 0),
```
**Funcție:** Prefixul folosit în algoritmul de host hiding
**Format rezultat:** `Nefarious-HASH.domain.tld`
#### **2. HIDDEN_HOST** (Linia 538)
```c
F_S(HIDDEN_HOST, FEAT_CASE, "Users.Nefarious", 0),
```
**Funcție:** Hostname ascuns implicit pentru utilizatori normali
**Format rezultat:** `Users.Nefarious`
#### **3. HIDDEN_OPERHOST** (Linia 751)
```c
F_S(HIDDEN_OPERHOST, FEAT_CASE, "Staff.Nefarious", 0),
```
**Funcție:** Hostname ascuns pentru operatori
**Format rezultat:** `Staff.Nefarious`
#### **4. HIS_SERVERNAME** (Linia 635)
```c
F_S(HIS_SERVERNAME, 0, "*.Nefarious", feature_notify_servername),
```
**Funcție:** Nume server ascuns în WHOIS/WHO pentru protecție topologie
**Format rezultat:** `*.Nefarious`
#### **5. NETWORK** (Linia 640)
```c
F_S(NETWORK, 0, "Nefarious", set_isupport_network),
```
**Funcție:** Numele rețelei IRC (trimis în ISUPPORT)
**Format rezultat:** `:server 005 user NETWORK=Nefarious`
---
## ✅ MODIFICĂRI IMPLEMENTATE
### Fișiere modificate:
#### 1. **ircd/ircd_features.c**
```c
// ÎNAINTE:
F_S(HOST_HIDING_PREFIX, 0, "Nefarious", 0),
F_S(HIDDEN_HOST, FEAT_CASE, "Users.Nefarious", 0),
F_S(HIDDEN_OPERHOST, FEAT_CASE, "Staff.Nefarious", 0),
F_S(HIS_SERVERNAME, 0, "*.Nefarious", feature_notify_servername),
F_S(NETWORK, 0, "Nefarious", set_isupport_network),
// DUPĂ:
F_S(HOST_HIDING_PREFIX, 0, "UnderChat", 0),
F_S(HIDDEN_HOST, FEAT_CASE, "Users.UnderChat", 0),
F_S(HIDDEN_OPERHOST, FEAT_CASE, "Staff.UnderChat", 0),
F_S(HIS_SERVERNAME, 0, "*.UnderChat", feature_notify_servername),
F_S(NETWORK, 0, "UnderChat", set_isupport_network),
```
**Comentarii actualizate:**
```c
/* UnderChat FEAT_'s */
/* Some misc. UnderChat default paths */
```
#### 2. **ircd/m_help.c**
```c
// ÎNAINTE:
send_reply(sptr, RPL_HELPSTART, "*", "Nefarious Help System");
send_reply(sptr, RPL_HELPSTART, cmd, "Nefarious Help System");
// DUPĂ:
send_reply(sptr, RPL_HELPSTART, "*", "UnderChat Help System");
send_reply(sptr, RPL_HELPSTART, cmd, "UnderChat Help System");
```
#### 3. **include/ircd_features.h**
```c
// Comentarii actualizate:
/* UnderChat FEAT_'s */
/* Some misc. UnderChat default paths */
```
#### 4. **include/numeric.h**
```c
// Comentarii actualizate în toate definițiile:
#define RPL_BOUNCE 10 /* UnderChat extension */
#define RPL_STATSELINE 223 /* UnderChat extension */
#define RPL_CHKHEAD 286 /* QuakeNet - Asuka / UnderChat */
#define RPL_CHANUSER 287 /* QuakeNet - Asuka / UnderChat */
#define RPL_DATASTR 290 /* QuakeNet - Asuka / UnderChat */
#define RPL_ENDOFCHECK 291 /* QuakeNet - Asuka / UnderChat */
#define ERR_SEARCHNOMATCH 292 /* QuakeNet - Asuka / UnderChat */
#define RPL_WHOISSERVICE 310 /* UnderChat extension */
#define RPL_WHOISPRIVDEAF 316 /* UnderChat extension */
#define RPL_WHOISMARKS 339 /* UnderChat extension */
#define RPL_WHOISKILL 343 /* UnderChat extension */
#define RPL_EXCEPTLIST 348 /* IRCnet/UnderChat extension */
#define RPL_ENDOFEXCEPTLIST 349 /* IRCnet/UnderChat extension */
#define RPL_IRCOPSHEADER 386 /* UnderChat extension */
#define RPL_IRCOPS 387 /* UnderChat extension */
#define RPL_ENDOFIRCOPS 388 /* UnderChat extension */
#define ERR_SSLONLYCHAN 469 /* UnderChat extension */
#define ERR_OPERONLYCHAN 470 /* UnderChat extension */
```
---
## 🎯 REZULTAT VIZIBIL
### ÎNAINTE (v1.2.2):
```
[14:39] * Joins: iRO (iRO@Nefarious-2F378ED1.eushells.ro)
* iRO is iRO@Nefarious-2F378ED1.eushells.ro * iRO
/WHOIS iRO
iRO is iRO@Nefarious-2F378ED1.eushells.ro * iRO
iRO on *.Nefarious :The Nefarious World
/VERSION
Nefarious Network
```
### DUPĂ (v1.3.0):
```
[14:39] * Joins: iRO (iRO@UnderChat-2F378ED1.eushells.ro)
* iRO is iRO@UnderChat-2F378ED1.eushells.ro * iRO
/WHOIS iRO
iRO is iRO@UnderChat-2F378ED1.eushells.ro * iRO
iRO on *.UnderChat :The UnderChat World
/VERSION
UnderChat Network
```
### Exemplu host hiding:
```
ÎNAINTE: user@Nefarious-A1B2C3D4.provider.com
DUPĂ: user@UnderChat-A1B2C3D4.provider.com
```
---
## 🚀 UPGRADE PENTRU UTILIZATORI
### ⚠️ **IMPORTANT: RECOMPILARE OBLIGATORIE!**
Modificările sunt în **codul sursă C**, nu în configurație. Trebuie să recompilezi serverul pentru a aplica schimbările.
### Pași de upgrade:
```bash
# 1. Oprește serverul (dacă rulează)
killall ircd
# 2. Actualizează repository-ul
cd ~/ircu2
git pull origin main
git checkout v1.3.0
# 3. Backup configurația existentă
cp /home/ircd/ircd/lib/ircd.conf /home/ircd/ircd.conf.backup-$(date +%Y%m%d-%H%M%S)
# 4. RECOMPILARE COMPLETĂ
make clean
./configure --prefix=/home/ircd/ircd --with-maxcon=400
make
make install
# 5. Pornește serverul cu noua versiune
/home/ircd/ircd/bin/ircd -f /home/ircd/ircd/lib/ircd.conf
# 6. Verifică versiunea
ps aux | grep ircd
```
### Alternativ - Reinstalare completă:
```bash
cd ~/ircu2
git pull origin main
git checkout v1.3.0
# Backup config
cp /home/ircd/ircd/lib/ircd.conf /tmp/ircd.conf.backup
# Reinstalează (recompilează automat)
./install.sh
# Restaurează config dacă ai modificări custom
# sau configurează din nou interactiv
```
---
## 🧪 VERIFICARE DUPĂ UPGRADE
### 1. Verifică versiunea compilată:
```bash
/home/ircd/ircd/bin/ircd -v
# Ar trebui să afișeze informații despre versiune
```
### 2. Verifică că serverul rulează:
```bash
ps aux | grep ircd
```
### 3. Conectează-te și testează:
```irc
# Conectează-te la server
/SERVER madrid.es.eu.underchat.org 6667
# Testează hostname-ul tău
/WHOIS NickTau
# Ar trebui să vezi: NickTau@UnderChat-HASH.domain
# Verifică network name
/LUSERS
# Ar trebui să vadă referințe la "UnderChat"
```
### 4. Testează sistemul de help:
```irc
/HELP
# Ar trebui să afișeze:
# *** UnderChat Help System
```
---
## 📊 IMPACT
### Ce se schimbă vizibil:
-**Hostname-uri:** `UnderChat-` în loc de `Nefarious-`
-**Network name:** `UnderChat` în loc de `Nefarious`
-**Server name în WHOIS:** `*.UnderChat`
-**Hidden hosts:** `Users.UnderChat`, `Staff.UnderChat`
-**Help system:** "UnderChat Help System"
### Ce NU se schimbă:
- ❌ Configurația existentă (`ircd.conf`)
- ❌ Comportamentul serverului
- ❌ Compatibilitatea cu alte servere P10
- ❌ Comenzile IRC
- ❌ Funcționalitatea
---
## 🔧 DEBUGGING
### Problemă: Încă văd "Nefarious" după upgrade
**Cauză:** Nu ai recompilat serverul sau rulezi versiunea veche.
**Soluție:**
```bash
# Verifică ce proces rulează
ps aux | grep ircd
# Oprește procesul vechi
killall ircd
# Verifică calea binarului
which ircd
# Pornește versiunea nouă explicit
/home/ircd/ircd/bin/ircd -f /home/ircd/ircd/lib/ircd.conf
# Verifică din nou
ps aux | grep ircd
```
### Problemă: Erori la compilare
**Soluție:**
```bash
# Curăță și reîncearcă
cd ~/ircu2
make clean
make distclean
./configure --prefix=/home/ircd/ircd --with-maxcon=400
make
make install
```
---
## 📚 CONFIGURARE OVERRIDE (OPȚIONAL)
Dacă vrei să customizezi hostname-urile DUPĂ instalare, poți supra-scrie valorile în `ircd.conf`:
```conf
features {
# Override host hiding prefix
"HOST_HIDING_PREFIX" = "MyNetwork";
# Override hidden host
"HIDDEN_HOST" = "Users.MyNetwork.org";
# Override oper hidden host
"HIDDEN_OPERHOST" = "Staff.MyNetwork.org";
# Override network name
"NETWORK" = "MyNetwork";
};
```
**NOTĂ:** Aceste override-uri se aplică DOAR după ce ai compilat cu valorile default din cod!
---
## ✅ CHECKLIST UPGRADE
- [ ] Backup configurație existentă
- [ ] `git pull origin main`
- [ ] `git checkout v1.3.0`
- [ ] Oprire server existent (`killall ircd`)
- [ ] Recompilare completă (`make clean && ./configure && make && make install`)
- [ ] Pornire server nou (`/home/ircd/ircd/bin/ircd -f ...`)
- [ ] Verificare hostname în `/WHOIS`
- [ ] Verificare network name în `/LUSERS`
- [ ] Verificare help system (`/HELP`)
- [ ] Test conectare clienți
- [ ] Test link server-to-server (dacă aplicabil)
---
## 🎉 BENEFICII
### ÎNAINTE:
- ❌ Branding "Nefarious" (software original)
- ❌ Confuzie pentru utilizatori
- ❌ Nu reflectă identitatea rețelei
### DUPĂ:
- ✅ Branding "UnderChat" consistent
- ✅ Identitate clară a rețelei
- ✅ Profesionalism sporit
- ✅ Recunoaștere brand
---
## 📝 VERSIUNI
| Versiune | Data | Tip | Descriere |
|----------|------|-----|-----------|
| v1.2.0 | 13 Feb 2026 | Feature | Curățare + Link server-to-server |
| v1.2.1 | 13 Feb 2026 | Fix | Link server-to-server funcțional |
| v1.2.2 | 13 Feb 2026 | Security | Parola operator criptată MD5 |
| **v1.3.0** | **14 Feb 2026** | **Rebrand** | **UnderChat în loc de Nefarious** |
---
**Commit:** `REBRAND: Schimbăm 'Nefarious' în 'UnderChat' - Host hiding prefix + Network name`
**Tag:** `v1.3.0`
**Status:** ✅ PRODUCTION READY (necesită recompilare)
---
**⚠️ RECOMPILARE OBLIGATORIE DUPĂ UPGRADE!** 🔄