-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathopenads.ini.sample
More file actions
115 lines (102 loc) · 5.32 KB
/
Copy pathopenads.ini.sample
File metadata and controls
115 lines (102 loc) · 5.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# openads.ini — settings for the OpenADS server daemon.
#
# Point the daemon at this file with: openads_serverd --config openads.ini
# Any command-line flag given as well overrides the matching key here, so you
# can keep a baseline in the file and tweak one setting on the fly.
#
# `openads_serverd --setup` writes a file like this for you and (optionally)
# registers it as a service. Lines are `key = value`; `#`/`;` start comments;
# an optional `[server]` header is accepted and ignored.
[server]
# Bind address. 0.0.0.0 = all interfaces; 127.0.0.1 = local only.
host = 0.0.0.0
# TCP wire port clients connect to. 6262 is the historical ADS default.
# (If SAP's Advantage service is still running on this host, pick another,
# e.g. 6263, to avoid a bind clash.)
port = 6262
# listen() backlog.
backlog = 16
# Directory the engine serves tables from.
data = .
# Allow remote oads_*/Ads* filesystem ops (File/FErase/Directory/FOpen…).
# Default 0 = denied. WARNING: enables client read/write/delete under data=.
# EnableFileFunc = 0
# Legacy ERP path resolution (porting DBFCDX apps to remote ADS with no
# code changes). Default 0 = strict SAP-compatible resolution.
# When 1, every client-supplied path (tables, indexes, memos, file funcs,
# the connect dir itself) is resolved against the data= roots
# case-insensitively and ignoring the drive letter: a path that starts
# with a data= root is stripped and re-joined under that root
# ("C:/TEMP/Sub/t.dbf" with data=C:\temp serves "<data>\Sub\t.dbf"), and
# any other absolute path loses its drive letter and is joined under the
# root ("E:\CLIENT\F.DBF" serves "<data>\CLIENT\F.DBF"). One server
# instance then serves every client folder, and the same app binary still
# runs against local DBFCDX.
# legacy_paths = 0
# Studio web console: set a port to expose the browser admin UI / REST API.
# Leave commented out to disable it.
# http_port = 6263
# Studio logins (repeatable). Omit entirely to leave the console open.
# http_user = admin:change-me
# TCP wire authentication for AdsConnect60 (repeatable). When configured,
# every remote connection must supply a matching user/password.
# Use tls:// in the client URI to protect credentials in transit.
# auth_user = client:change-me
# Server error log (ads_err.dbf) — SAP-style operational log for SQL
# failures, remote error frames, and server start/stop. Directory only;
# the file name is always ads_err.dbf. Alias: error_assert_logs (SAP name).
# CLI: --error-log-path DIR Env: OPENADS_ERROR_LOG_PATH=DIR
# Default: C:\ on Windows, /var/log/advantage on Linux (falls back to a
# writable location if the default is not writable).
# error_log_path = C:\OpenADS\logs
# error_log_max = 1000
#
# Note: the transaction journal (openads.txlog / openads.lsnmap) is NOT
# controlled here — it always lives under each connection's data=
# directory. If data= is a drive root (C:\), journaling may be disabled
# on that connection (tables in subfolders still work). See docs/en/error-log.md.
# --- Multi-port (optional) ---
# Additional listeners with their own data directories. Each [port:NNNN]
# section creates a separate TCP listener on port NNNN that serves tables
# from the data= folder below it. Clients connecting to that port see
# only its data directory — different apps can share one server process
# while isolating their data. (LetoDB-style multi-port.)
#
# The primary [server] port (default 6262) always exists and uses the
# global data= above. Extra ports must not collide with it or with
# each other.
#
# [port:6263]
# data = C:\app1
#
# [port:6264]
# data = C:\app2
# --- Client-side keys (read by ace64.dll/ace32.dll, not the daemon) ---
# A copy of this file next to the DLL, next to the application .exe, or
# in the app working directory (or pointed to by the OPENADS_INI env var)
# configures the client side. Keys are case-insensitive and dashes are
# equivalent to underscores (remote-only-access = remote_only_access).
# The matching OPENADS_* environment variable always wins over the key
# here, so either mechanism works per machine.
#
# remote_only_access = 1 -- forbid local AdsOpenTable/AdsCreateTable
# (legacy local paths): they fail with AE_ACCESS_DENIED (Harbour RTE)
# instead of silently touching a file next to the app. Env:
# OPENADS_REMOTE_ONLY_ACCESS=1.
# Use `remote_only_access = log` (or 2) first: every local open/create
# is written to the audit log as a LOCALACCESS line but allowed, so
# you can inventory the offenders without breaking the app (deny mode
# RTEs inside an error handler that opens tables kill the app by
# error-handler recursion).
# resolve_verbose = 1 -- audit detail lines (env OPENADS_RESOLVE_VERBOSE)
# log = debug -- audit console level (env OPENADS_LOG)
# log_file = path -- audit log file (env OPENADS_LOG_FILE)
# trace = 1 -- SQL trigger trace (env OPENADS_TRACE)
# wire_trace = 1 -- wire trace to C:/tmp/cli_trace.log
# (env OPENADS_WIRE_TRACE)
# arc_trace = 1 -- ARC32 bring-up trace (env OPENADS_ARC_TRACE)
# tls_insecure = 1 -- skip TLS peer verification, dev only
# (env OPENADS_TLS_INSECURE)
# adi_v2 = 1 -- ADI v2 index writer (env OPENADS_ADI_V2)
# adt_cdx_index = 1 -- route ADT .adi bags through the CDX engine
# (env OPENADS_ADT_CDX_INDEX)