Skip to content

Commit 63f946c

Browse files
committed
feat: refactor SNI wildcard handling in FormatHostsService
1 parent 3149423 commit 63f946c

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

src/modules/subscription-template/generators/format-hosts.service.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,11 @@ import { IFormattedHost } from './interfaces/formatted-hosts.interface';
2525

2626
@Injectable()
2727
export class FormatHostsService {
28-
constructor(private readonly queryBus: QueryBus) {}
28+
private readonly nanoid: ReturnType<typeof customAlphabet>;
29+
30+
constructor(private readonly queryBus: QueryBus) {
31+
this.nanoid = customAlphabet('0123456789abcdefghjkmnopqrstuvwxyz', 10);
32+
}
2933

3034
public async generateFormattedHosts(
3135
config: XRayConfig,
@@ -184,7 +188,6 @@ export class FormatHostsService {
184188
const realitySettings = inbound.streamSettings?.realitySettings;
185189
sniFromConfig = realitySettings?.serverNames?.[0];
186190
fingerprintFromConfig = realitySettings?.fingerprint;
187-
// publicKeyFromConfig = realitySettings?.publicKey || realitySettings?.password;
188191

189192
publicKeyFromConfig = publicKeyMap.get(inbound.tag);
190193

@@ -242,9 +245,7 @@ export class FormatHostsService {
242245
}
243246

244247
if (sni.includes('*.')) {
245-
const nanoid = customAlphabet('0123456789abcdefghjkmnopqrstuvwxyz', 10);
246-
247-
sni = sni.replace('*', nanoid());
248+
sni = sni.replace('*', this.nanoid());
248249
}
249250

250251
// Fingerprint

0 commit comments

Comments
 (0)