FoxiGram/TMessagesProj/jni/voip/webrtc/base/process/process_handle.cc
instant992 8e79f2ee9c FoxiGram: Telegram client with built-in Xray VLESS proxy
Based on Nekogram. Key additions:
- Rebrand to FoxiGram (app name, APK name, applicationId com.foxigram.app)
- Embedded Xray (VLESS+Reality) proxy client via JNI libxray.so
- Bundled hidden one-tap proxies (LTE + WiFi), read-only in UI
- Auto-restore proxy on restart, rebind to active network (LTE/WiFi)
- Server credentials externalized to git-ignored XrayServers.java (+ template)
- libxray Go source included; compiled .so, keystore, google-services.json ignored
2026-06-08 16:41:07 +04:00

40 lines
1 KiB
C++

// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "base/process/process_handle.h"
#include <stdint.h>
#include "base/logging.h"
#include "build/build_config.h"
namespace base {
namespace {
ProcessId g_pid_outside_of_namespace = kNullProcessId;
} // namespace
std::ostream& operator<<(std::ostream& os, const UniqueProcId& obj) {
os << obj.GetUnsafeValue();
return os;
}
UniqueProcId GetUniqueIdForProcess() {
// Used for logging. Must not use LogMessage or any of the macros that call
// into it.
return (g_pid_outside_of_namespace != kNullProcessId)
? UniqueProcId(g_pid_outside_of_namespace)
: UniqueProcId(GetCurrentProcId());
}
#if defined(OS_LINUX) || defined(OS_AIX)
void InitUniqueIdForProcessInPidNamespace(ProcessId pid_outside_of_namespace) {
DCHECK(pid_outside_of_namespace != kNullProcessId);
g_pid_outside_of_namespace = pid_outside_of_namespace;
}
#endif
} // namespace base