@miraj181/ipingyou 2.0.1 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2026 skmirajulislam
3
+ Copyright (c) 2026 Sk Mirajul Islam
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@miraj181/ipingyou",
3
- "version": "2.0.1",
3
+ "version": "2.0.3",
4
4
  "description": "SecureLink-CLI — Secure peer-to-peer remote access via SSH & Cloudflare Tunnels",
5
5
  "main": "src/cli.js",
6
6
  "bin": {
package/src/cli.js CHANGED
@@ -26,11 +26,7 @@ import { detectOS, checkDependencies } from './lib/platform.js';
26
26
  import { installShutdownHandlers, executePanicMode } from './lib/cleanup.js';
27
27
  import { startHostMode } from './modes/host.js';
28
28
  import { startClientMode } from './modes/client.js';
29
- import { execa } from 'execa';
30
- import path from 'node:path';
31
- import { fileURLToPath } from 'node:url';
32
29
 
33
- const __dirname = path.dirname(fileURLToPath(import.meta.url));
34
30
 
35
31
  // ─── ASCII Banner ────────────────────────────────────────────
36
32
  function showBanner() {
@@ -21,7 +21,7 @@ import os from 'node:os';
21
21
  import crypto from 'node:crypto';
22
22
  import { decrypt, encrypt } from '../lib/crypto.js';
23
23
  import { trackPID, untrackPID, addCleanupHook } from '../lib/cleanup.js';
24
- import { createSpinner, sshSpinner, networkSpinner, fileTransferSpinner, showConnectionTrace, animatedSteps, simulateTransferProgress } from '../lib/animations.js';
24
+ import { createSpinner, sshSpinner, networkSpinner, fileTransferSpinner, showConnectionTrace, simulateTransferProgress } from '../lib/animations.js';
25
25
  import { getConfig, saveAlias } from '../lib/config.js';
26
26
  import open from 'open';
27
27
 
@@ -701,7 +701,7 @@ async function performReverseForward(username, hostname, privateKeyPath) {
701
701
  const spinner = createSpinner(`Forwarding Host:${remotePort} ➔ Localhost:${localPort}...`, networkSpinner).start();
702
702
 
703
703
  try {
704
- const child = execa('ssh', sshArgs, { stdio: 'pipe' });
704
+ const child = execa('ssh', sshArgs, { stdio: 'inherit' });
705
705
  trackPID(child.pid);
706
706
  spinner.succeed(`Reverse tunnel active! Host can access your app at ${chalk.bold.green('localhost:' + remotePort)}`);
707
707
  console.log(chalk.dim(' Press Ctrl+C to terminate the reverse tunnel.'));
package/src/modes/host.js CHANGED
@@ -24,7 +24,6 @@ import { trackPID, untrackPID, setRevokeOnExit, addCleanupHook } from '../lib/cl
24
24
  import { detectOS } from '../lib/platform.js';
25
25
  import { createSpinner, cryptoSpinner, tunnelSpinner, networkSpinner, typeText } from '../lib/animations.js';
26
26
  import { startChatServer, openLocalChatUI } from '../lib/chat.js';
27
- import open from 'open';
28
27
 
29
28
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
30
29
  let BROKER_URL = process.env.BROKER_URL || 'https://ipingyou.onrender.com';
@@ -157,8 +156,7 @@ async function spawnTunnelSupervised(targetUrl, onUrlGenerated) {
157
156
 
158
157
  // ─── Ephemeral SSH Key Management ────────────────────────────
159
158
  async function generateEphemeralKey() {
160
- const osInfo = detectOS();
161
- const tmpDir = osInfo.isWindows ? process.env.TEMP : '/tmp';
159
+ const tmpDir = os.tmpdir();
162
160
  const keyPath = path.join(tmpDir, `ipingyou_${Date.now()}`);
163
161
 
164
162
  await execa('ssh-keygen', ['-t', 'ed25519', '-C', 'ipingyou-ephemeral', '-f', keyPath, '-N', '']);