Xray-core/core/core.go

46 lines
1.3 KiB
Go
Raw Permalink Normal View History

2020-11-25 11:01:53 +00:00
// Package core provides an entry point to use Xray core functionalities.
//
// Xray makes it possible to accept incoming network connections with certain
// protocol, process the data, and send them through another connection with
// the same or a difference protocol on demand.
//
// It may be configured to work with multiple protocols at the same time, and
// uses the internal router to tunnel through different inbound and outbound
// connections.
package core
2020-12-04 01:36:16 +00:00
//go:generate go run github.com/xtls/xray-core/common/errors/errorgen
2020-11-25 11:01:53 +00:00
import (
"fmt"
2020-11-25 11:01:53 +00:00
"runtime"
2020-12-04 01:36:16 +00:00
"github.com/xtls/xray-core/common/serial"
2020-11-25 11:01:53 +00:00
)
var (
Version_x byte = 1
2023-03-09 13:55:09 +00:00
Version_y byte = 8
2023-04-17 23:22:12 +00:00
Version_z byte = 1
)
var (
2020-11-25 11:01:53 +00:00
build = "Custom"
codename = "Xray, Penetrates Everything."
intro = "A unified platform for anti-censorship."
)
// Version returns Xray's version as a string, in the form of "x.y.z" where x, y and z are numbers.
// ".z" part may be omitted in regular releases.
func Version() string {
return fmt.Sprintf("%v.%v.%v", Version_x, Version_y, Version_z)
2020-11-25 11:01:53 +00:00
}
// VersionStatement returns a list of strings representing the full version info.
func VersionStatement() []string {
return []string{
serial.Concat("Xray ", Version(), " (", codename, ") ", build, " (", runtime.Version(), " ", runtime.GOOS, "/", runtime.GOARCH, ")"),
intro,
}
}