gitlab.com/CoiaPrant/sqlite3@v1.19.1/internal/mptest/main_freebsd_386.go (about) 1 // Code generated by 'ccgo -export-defines "" -ignore-unsupported-alignment -o internal/mptest/main_freebsd_386.go -trace-translation-units testdata/sqlite-src-3390300/mptest/mptest.c -Itestdata/sqlite-amalgamation-3390300 -l gitlab.com/CoiaPrant/sqlite3/lib -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT. 2 3 package main 4 5 import ( 6 "math" 7 "reflect" 8 "sync/atomic" 9 "unsafe" 10 11 "modernc.org/libc" 12 "modernc.org/libc/sys/types" 13 "gitlab.com/CoiaPrant/sqlite3/lib" 14 ) 15 16 var _ = math.Pi 17 var _ reflect.Kind 18 var _ atomic.Value 19 var _ unsafe.Pointer 20 var _ *libc.TLS 21 var _ types.Size_t 22 23 func main() { libc.Start(main1) } 24 25 const ( 26 BIG_ENDIAN = 4321 27 BUFSIZ = 1024 28 BYTE_ORDER = 1234 29 CLOSE_RANGE_CLOEXEC = 4 30 DEFAULT_TIMEOUT = 10000 31 E2BIG = 7 32 EACCES = 13 33 EADDRINUSE = 48 34 EADDRNOTAVAIL = 49 35 EAFNOSUPPORT = 47 36 EAGAIN = 35 37 EALREADY = 37 38 EAUTH = 80 39 EBADF = 9 40 EBADMSG = 89 41 EBADRPC = 72 42 EBUSY = 16 43 ECANCELED = 85 44 ECAPMODE = 94 45 ECHILD = 10 46 ECONNABORTED = 53 47 ECONNREFUSED = 61 48 ECONNRESET = 54 49 EDEADLK = 11 50 EDESTADDRREQ = 39 51 EDOM = 33 52 EDOOFUS = 88 53 EDQUOT = 69 54 EEXIST = 17 55 EFAULT = 14 56 EFBIG = 27 57 EFTYPE = 79 58 EHOSTDOWN = 64 59 EHOSTUNREACH = 65 60 EIDRM = 82 61 EILSEQ = 86 62 EINPROGRESS = 36 63 EINTEGRITY = 97 64 EINTR = 4 65 EINVAL = 22 66 EIO = 5 67 EISCONN = 56 68 EISDIR = 21 69 ELAST = 97 70 ELOOP = 62 71 EMFILE = 24 72 EMLINK = 31 73 EMSGSIZE = 40 74 EMULTIHOP = 90 75 ENAMETOOLONG = 63 76 ENEEDAUTH = 81 77 ENETDOWN = 50 78 ENETRESET = 52 79 ENETUNREACH = 51 80 ENFILE = 23 81 ENOATTR = 87 82 ENOBUFS = 55 83 ENODEV = 19 84 ENOENT = 2 85 ENOEXEC = 8 86 ENOLCK = 77 87 ENOLINK = 91 88 ENOMEM = 12 89 ENOMSG = 83 90 ENOPROTOOPT = 42 91 ENOSPC = 28 92 ENOSYS = 78 93 ENOTBLK = 15 94 ENOTCAPABLE = 93 95 ENOTCONN = 57 96 ENOTDIR = 20 97 ENOTEMPTY = 66 98 ENOTRECOVERABLE = 95 99 ENOTSOCK = 38 100 ENOTSUP = 45 101 ENOTTY = 25 102 ENXIO = 6 103 EOF = -1 104 EOPNOTSUPP = 45 105 EOVERFLOW = 84 106 EOWNERDEAD = 96 107 EPERM = 1 108 EPFNOSUPPORT = 46 109 EPIPE = 32 110 EPROCLIM = 67 111 EPROCUNAVAIL = 76 112 EPROGMISMATCH = 75 113 EPROGUNAVAIL = 74 114 EPROTO = 92 115 EPROTONOSUPPORT = 43 116 EPROTOTYPE = 41 117 ERANGE = 34 118 EREMOTE = 71 119 EROFS = 30 120 ERPCMISMATCH = 73 121 ESHUTDOWN = 58 122 ESOCKTNOSUPPORT = 44 123 ESPIPE = 29 124 ESRCH = 3 125 ESTALE = 70 126 ETIMEDOUT = 60 127 ETOOMANYREFS = 59 128 ETXTBSY = 26 129 EUSERS = 68 130 EWOULDBLOCK = 35 131 EXDEV = 18 132 EXIT_FAILURE = 1 133 EXIT_SUCCESS = 0 134 FD_SETSIZE = 1024 135 FILENAME_MAX = 1024 136 FOPEN_MAX = 20 137 FTS5_TOKENIZE_AUX = 0x0008 138 FTS5_TOKENIZE_DOCUMENT = 0x0004 139 FTS5_TOKENIZE_PREFIX = 0x0002 140 FTS5_TOKENIZE_QUERY = 0x0001 141 FTS5_TOKEN_COLOCATED = 0x0001 142 FULLY_WITHIN = 2 143 F_LOCK = 1 144 F_OK = 0 145 F_TEST = 3 146 F_TLOCK = 2 147 F_ULOCK = 0 148 HAVE_USLEEP = 1 149 LITTLE_ENDIAN = 1234 150 L_INCR = 1 151 L_SET = 0 152 L_XTND = 2 153 L_ctermid = 1024 154 L_cuserid = 17 155 L_tmpnam = 1024 156 MX_ARG = 2 157 NDEBUG = 1 158 NOT_WITHIN = 0 159 PARTLY_WITHIN = 1 160 PDP_ENDIAN = 3412 161 P_tmpdir = "/tmp/" 162 RAND_MAX = 0x7fffffff 163 RFCENVG = 2048 164 RFCFDG = 4096 165 RFCNAMEG = 1024 166 RFENVG = 2 167 RFFDG = 4 168 RFFLAGS = 2416930932 169 RFHIGHPID = 262144 170 RFKERNELONLY = 268828672 171 RFLINUXTHPN = 65536 172 RFMEM = 32 173 RFNAMEG = 1 174 RFNOTEG = 8 175 RFNOWAIT = 64 176 RFPPWAIT = 2147483648 177 RFPROC = 16 178 RFPROCDESC = 268435456 179 RFSIGSHARE = 16384 180 RFSPAWN = 2147483648 181 RFSTOPPED = 131072 182 RFTHREAD = 8192 183 RFTSIGMASK = 0xFF 184 RFTSIGSHIFT = 20 185 RFTSIGZMB = 524288 186 R_OK = 0x04 187 SEEK_CUR = 1 188 SEEK_DATA = 3 189 SEEK_END = 2 190 SEEK_HOLE = 4 191 SEEK_SET = 0 192 SQLITE3_H = 0 193 SQLITE3_TEXT = 3 194 SQLITE_ABORT = 4 195 SQLITE_ABORT_ROLLBACK = 516 196 SQLITE_ACCESS_EXISTS = 0 197 SQLITE_ACCESS_READ = 2 198 SQLITE_ACCESS_READWRITE = 1 199 SQLITE_ALTER_TABLE = 26 200 SQLITE_ANALYZE = 28 201 SQLITE_ANY = 5 202 SQLITE_API = 0 203 SQLITE_APICALL = 0 204 SQLITE_ATTACH = 24 205 SQLITE_AUTH = 23 206 SQLITE_AUTH_USER = 279 207 SQLITE_BLOB = 4 208 SQLITE_BUSY = 5 209 SQLITE_BUSY_RECOVERY = 261 210 SQLITE_BUSY_SNAPSHOT = 517 211 SQLITE_BUSY_TIMEOUT = 773 212 SQLITE_CALLBACK = 0 213 SQLITE_CANTOPEN = 14 214 SQLITE_CANTOPEN_CONVPATH = 1038 215 SQLITE_CANTOPEN_DIRTYWAL = 1294 216 SQLITE_CANTOPEN_FULLPATH = 782 217 SQLITE_CANTOPEN_ISDIR = 526 218 SQLITE_CANTOPEN_NOTEMPDIR = 270 219 SQLITE_CANTOPEN_SYMLINK = 1550 220 SQLITE_CDECL = 0 221 SQLITE_CHANGESETAPPLY_INVERT = 0x0002 222 SQLITE_CHANGESETAPPLY_NOSAVEPOINT = 0x0001 223 SQLITE_CHANGESETSTART_INVERT = 0x0002 224 SQLITE_CHANGESET_ABORT = 2 225 SQLITE_CHANGESET_CONFLICT = 3 226 SQLITE_CHANGESET_CONSTRAINT = 4 227 SQLITE_CHANGESET_DATA = 1 228 SQLITE_CHANGESET_FOREIGN_KEY = 5 229 SQLITE_CHANGESET_NOTFOUND = 2 230 SQLITE_CHANGESET_OMIT = 0 231 SQLITE_CHANGESET_REPLACE = 1 232 SQLITE_CHECKPOINT_FULL = 1 233 SQLITE_CHECKPOINT_PASSIVE = 0 234 SQLITE_CHECKPOINT_RESTART = 2 235 SQLITE_CHECKPOINT_TRUNCATE = 3 236 SQLITE_CONFIG_COVERING_INDEX_SCAN = 20 237 SQLITE_CONFIG_GETMALLOC = 5 238 SQLITE_CONFIG_GETMUTEX = 11 239 SQLITE_CONFIG_GETPCACHE = 15 240 SQLITE_CONFIG_GETPCACHE2 = 19 241 SQLITE_CONFIG_HEAP = 8 242 SQLITE_CONFIG_LOG = 16 243 SQLITE_CONFIG_LOOKASIDE = 13 244 SQLITE_CONFIG_MALLOC = 4 245 SQLITE_CONFIG_MEMDB_MAXSIZE = 29 246 SQLITE_CONFIG_MEMSTATUS = 9 247 SQLITE_CONFIG_MMAP_SIZE = 22 248 SQLITE_CONFIG_MULTITHREAD = 2 249 SQLITE_CONFIG_MUTEX = 10 250 SQLITE_CONFIG_PAGECACHE = 7 251 SQLITE_CONFIG_PCACHE = 14 252 SQLITE_CONFIG_PCACHE2 = 18 253 SQLITE_CONFIG_PCACHE_HDRSZ = 24 254 SQLITE_CONFIG_PMASZ = 25 255 SQLITE_CONFIG_SCRATCH = 6 256 SQLITE_CONFIG_SERIALIZED = 3 257 SQLITE_CONFIG_SINGLETHREAD = 1 258 SQLITE_CONFIG_SMALL_MALLOC = 27 259 SQLITE_CONFIG_SORTERREF_SIZE = 28 260 SQLITE_CONFIG_SQLLOG = 21 261 SQLITE_CONFIG_STMTJRNL_SPILL = 26 262 SQLITE_CONFIG_URI = 17 263 SQLITE_CONFIG_WIN32_HEAPSIZE = 23 264 SQLITE_CONSTRAINT = 19 265 SQLITE_CONSTRAINT_CHECK = 275 266 SQLITE_CONSTRAINT_COMMITHOOK = 531 267 SQLITE_CONSTRAINT_DATATYPE = 3091 268 SQLITE_CONSTRAINT_FOREIGNKEY = 787 269 SQLITE_CONSTRAINT_FUNCTION = 1043 270 SQLITE_CONSTRAINT_NOTNULL = 1299 271 SQLITE_CONSTRAINT_PINNED = 2835 272 SQLITE_CONSTRAINT_PRIMARYKEY = 1555 273 SQLITE_CONSTRAINT_ROWID = 2579 274 SQLITE_CONSTRAINT_TRIGGER = 1811 275 SQLITE_CONSTRAINT_UNIQUE = 2067 276 SQLITE_CONSTRAINT_VTAB = 2323 277 SQLITE_COPY = 0 278 SQLITE_CORE = 1 279 SQLITE_CORRUPT = 11 280 SQLITE_CORRUPT_INDEX = 779 281 SQLITE_CORRUPT_SEQUENCE = 523 282 SQLITE_CORRUPT_VTAB = 267 283 SQLITE_CREATE_INDEX = 1 284 SQLITE_CREATE_TABLE = 2 285 SQLITE_CREATE_TEMP_INDEX = 3 286 SQLITE_CREATE_TEMP_TABLE = 4 287 SQLITE_CREATE_TEMP_TRIGGER = 5 288 SQLITE_CREATE_TEMP_VIEW = 6 289 SQLITE_CREATE_TRIGGER = 7 290 SQLITE_CREATE_VIEW = 8 291 SQLITE_CREATE_VTABLE = 29 292 SQLITE_DBCONFIG_DEFENSIVE = 1010 293 SQLITE_DBCONFIG_DQS_DDL = 1014 294 SQLITE_DBCONFIG_DQS_DML = 1013 295 SQLITE_DBCONFIG_ENABLE_FKEY = 1002 296 SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER = 1004 297 SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION = 1005 298 SQLITE_DBCONFIG_ENABLE_QPSG = 1007 299 SQLITE_DBCONFIG_ENABLE_TRIGGER = 1003 300 SQLITE_DBCONFIG_ENABLE_VIEW = 1015 301 SQLITE_DBCONFIG_LEGACY_ALTER_TABLE = 1012 302 SQLITE_DBCONFIG_LEGACY_FILE_FORMAT = 1016 303 SQLITE_DBCONFIG_LOOKASIDE = 1001 304 SQLITE_DBCONFIG_MAINDBNAME = 1000 305 SQLITE_DBCONFIG_MAX = 1017 306 SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE = 1006 307 SQLITE_DBCONFIG_RESET_DATABASE = 1009 308 SQLITE_DBCONFIG_TRIGGER_EQP = 1008 309 SQLITE_DBCONFIG_TRUSTED_SCHEMA = 1017 310 SQLITE_DBCONFIG_WRITABLE_SCHEMA = 1011 311 SQLITE_DBSTATUS_CACHE_HIT = 7 312 SQLITE_DBSTATUS_CACHE_MISS = 8 313 SQLITE_DBSTATUS_CACHE_SPILL = 12 314 SQLITE_DBSTATUS_CACHE_USED = 1 315 SQLITE_DBSTATUS_CACHE_USED_SHARED = 11 316 SQLITE_DBSTATUS_CACHE_WRITE = 9 317 SQLITE_DBSTATUS_DEFERRED_FKS = 10 318 SQLITE_DBSTATUS_LOOKASIDE_HIT = 4 319 SQLITE_DBSTATUS_LOOKASIDE_MISS_FULL = 6 320 SQLITE_DBSTATUS_LOOKASIDE_MISS_SIZE = 5 321 SQLITE_DBSTATUS_LOOKASIDE_USED = 0 322 SQLITE_DBSTATUS_MAX = 12 323 SQLITE_DBSTATUS_SCHEMA_USED = 2 324 SQLITE_DBSTATUS_STMT_USED = 3 325 SQLITE_DELETE = 9 326 SQLITE_DENY = 1 327 SQLITE_DEPRECATED = 0 328 SQLITE_DESERIALIZE_FREEONCLOSE = 1 329 SQLITE_DESERIALIZE_READONLY = 4 330 SQLITE_DESERIALIZE_RESIZEABLE = 2 331 SQLITE_DETACH = 25 332 SQLITE_DETERMINISTIC = 0x000000800 333 SQLITE_DIRECTONLY = 0x000080000 334 SQLITE_DONE = 101 335 SQLITE_DROP_INDEX = 10 336 SQLITE_DROP_TABLE = 11 337 SQLITE_DROP_TEMP_INDEX = 12 338 SQLITE_DROP_TEMP_TABLE = 13 339 SQLITE_DROP_TEMP_TRIGGER = 14 340 SQLITE_DROP_TEMP_VIEW = 15 341 SQLITE_DROP_TRIGGER = 16 342 SQLITE_DROP_VIEW = 17 343 SQLITE_DROP_VTABLE = 30 344 SQLITE_EMPTY = 16 345 SQLITE_ENABLE_COLUMN_METADATA = 1 346 SQLITE_ENABLE_FTS5 = 1 347 SQLITE_ENABLE_GEOPOLY = 1 348 SQLITE_ENABLE_MATH_FUNCTIONS = 1 349 SQLITE_ENABLE_MEMORY_MANAGEMENT = 1 350 SQLITE_ENABLE_OFFSET_SQL_FUNC = 1 351 SQLITE_ENABLE_PREUPDATE_HOOK = 1 352 SQLITE_ENABLE_RBU = 1 353 SQLITE_ENABLE_RTREE = 1 354 SQLITE_ENABLE_SESSION = 1 355 SQLITE_ENABLE_SNAPSHOT = 1 356 SQLITE_ENABLE_STAT4 = 1 357 SQLITE_ENABLE_UNLOCK_NOTIFY = 1 358 SQLITE_ERROR = 1 359 SQLITE_ERROR_MISSING_COLLSEQ = 257 360 SQLITE_ERROR_RETRY = 513 361 SQLITE_ERROR_SNAPSHOT = 769 362 SQLITE_EXPERIMENTAL = 0 363 SQLITE_FAIL = 3 364 SQLITE_FCNTL_BEGIN_ATOMIC_WRITE = 31 365 SQLITE_FCNTL_BUSYHANDLER = 15 366 SQLITE_FCNTL_CHUNK_SIZE = 6 367 SQLITE_FCNTL_CKPT_DONE = 37 368 SQLITE_FCNTL_CKPT_START = 39 369 SQLITE_FCNTL_CKSM_FILE = 41 370 SQLITE_FCNTL_COMMIT_ATOMIC_WRITE = 32 371 SQLITE_FCNTL_COMMIT_PHASETWO = 22 372 SQLITE_FCNTL_DATA_VERSION = 35 373 SQLITE_FCNTL_EXTERNAL_READER = 40 374 SQLITE_FCNTL_FILE_POINTER = 7 375 SQLITE_FCNTL_GET_LOCKPROXYFILE = 2 376 SQLITE_FCNTL_HAS_MOVED = 20 377 SQLITE_FCNTL_JOURNAL_POINTER = 28 378 SQLITE_FCNTL_LAST_ERRNO = 4 379 SQLITE_FCNTL_LOCKSTATE = 1 380 SQLITE_FCNTL_LOCK_TIMEOUT = 34 381 SQLITE_FCNTL_MMAP_SIZE = 18 382 SQLITE_FCNTL_OVERWRITE = 11 383 SQLITE_FCNTL_PDB = 30 384 SQLITE_FCNTL_PERSIST_WAL = 10 385 SQLITE_FCNTL_POWERSAFE_OVERWRITE = 13 386 SQLITE_FCNTL_PRAGMA = 14 387 SQLITE_FCNTL_RBU = 26 388 SQLITE_FCNTL_RESERVE_BYTES = 38 389 SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE = 33 390 SQLITE_FCNTL_SET_LOCKPROXYFILE = 3 391 SQLITE_FCNTL_SIZE_HINT = 5 392 SQLITE_FCNTL_SIZE_LIMIT = 36 393 SQLITE_FCNTL_SYNC = 21 394 SQLITE_FCNTL_SYNC_OMITTED = 8 395 SQLITE_FCNTL_TEMPFILENAME = 16 396 SQLITE_FCNTL_TRACE = 19 397 SQLITE_FCNTL_VFSNAME = 12 398 SQLITE_FCNTL_VFS_POINTER = 27 399 SQLITE_FCNTL_WAL_BLOCK = 24 400 SQLITE_FCNTL_WIN32_AV_RETRY = 9 401 SQLITE_FCNTL_WIN32_GET_HANDLE = 29 402 SQLITE_FCNTL_WIN32_SET_HANDLE = 23 403 SQLITE_FCNTL_ZIPVFS = 25 404 SQLITE_FLOAT = 2 405 SQLITE_FORMAT = 24 406 SQLITE_FULL = 13 407 SQLITE_FUNCTION = 31 408 SQLITE_GET_LOCKPROXYFILE = 2 409 SQLITE_IGNORE = 2 410 SQLITE_INDEX_CONSTRAINT_EQ = 2 411 SQLITE_INDEX_CONSTRAINT_FUNCTION = 150 412 SQLITE_INDEX_CONSTRAINT_GE = 32 413 SQLITE_INDEX_CONSTRAINT_GLOB = 66 414 SQLITE_INDEX_CONSTRAINT_GT = 4 415 SQLITE_INDEX_CONSTRAINT_IS = 72 416 SQLITE_INDEX_CONSTRAINT_ISNOT = 69 417 SQLITE_INDEX_CONSTRAINT_ISNOTNULL = 70 418 SQLITE_INDEX_CONSTRAINT_ISNULL = 71 419 SQLITE_INDEX_CONSTRAINT_LE = 8 420 SQLITE_INDEX_CONSTRAINT_LIKE = 65 421 SQLITE_INDEX_CONSTRAINT_LIMIT = 73 422 SQLITE_INDEX_CONSTRAINT_LT = 16 423 SQLITE_INDEX_CONSTRAINT_MATCH = 64 424 SQLITE_INDEX_CONSTRAINT_NE = 68 425 SQLITE_INDEX_CONSTRAINT_OFFSET = 74 426 SQLITE_INDEX_CONSTRAINT_REGEXP = 67 427 SQLITE_INDEX_SCAN_UNIQUE = 1 428 SQLITE_INNOCUOUS = 0x000200000 429 SQLITE_INSERT = 18 430 SQLITE_INTEGER = 1 431 SQLITE_INTERNAL = 2 432 SQLITE_INTERRUPT = 9 433 SQLITE_IOCAP_ATOMIC = 0x00000001 434 SQLITE_IOCAP_ATOMIC16K = 0x00000040 435 SQLITE_IOCAP_ATOMIC1K = 0x00000004 436 SQLITE_IOCAP_ATOMIC2K = 0x00000008 437 SQLITE_IOCAP_ATOMIC32K = 0x00000080 438 SQLITE_IOCAP_ATOMIC4K = 0x00000010 439 SQLITE_IOCAP_ATOMIC512 = 0x00000002 440 SQLITE_IOCAP_ATOMIC64K = 0x00000100 441 SQLITE_IOCAP_ATOMIC8K = 0x00000020 442 SQLITE_IOCAP_BATCH_ATOMIC = 0x00004000 443 SQLITE_IOCAP_IMMUTABLE = 0x00002000 444 SQLITE_IOCAP_POWERSAFE_OVERWRITE = 0x00001000 445 SQLITE_IOCAP_SAFE_APPEND = 0x00000200 446 SQLITE_IOCAP_SEQUENTIAL = 0x00000400 447 SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN = 0x00000800 448 SQLITE_IOERR = 10 449 SQLITE_IOERR_ACCESS = 3338 450 SQLITE_IOERR_AUTH = 7178 451 SQLITE_IOERR_BEGIN_ATOMIC = 7434 452 SQLITE_IOERR_BLOCKED = 2826 453 SQLITE_IOERR_CHECKRESERVEDLOCK = 3594 454 SQLITE_IOERR_CLOSE = 4106 455 SQLITE_IOERR_COMMIT_ATOMIC = 7690 456 SQLITE_IOERR_CONVPATH = 6666 457 SQLITE_IOERR_CORRUPTFS = 8458 458 SQLITE_IOERR_DATA = 8202 459 SQLITE_IOERR_DELETE = 2570 460 SQLITE_IOERR_DELETE_NOENT = 5898 461 SQLITE_IOERR_DIR_CLOSE = 4362 462 SQLITE_IOERR_DIR_FSYNC = 1290 463 SQLITE_IOERR_FSTAT = 1802 464 SQLITE_IOERR_FSYNC = 1034 465 SQLITE_IOERR_GETTEMPPATH = 6410 466 SQLITE_IOERR_LOCK = 3850 467 SQLITE_IOERR_MMAP = 6154 468 SQLITE_IOERR_NOMEM = 3082 469 SQLITE_IOERR_RDLOCK = 2314 470 SQLITE_IOERR_READ = 266 471 SQLITE_IOERR_ROLLBACK_ATOMIC = 7946 472 SQLITE_IOERR_SEEK = 5642 473 SQLITE_IOERR_SHMLOCK = 5130 474 SQLITE_IOERR_SHMMAP = 5386 475 SQLITE_IOERR_SHMOPEN = 4618 476 SQLITE_IOERR_SHMSIZE = 4874 477 SQLITE_IOERR_SHORT_READ = 522 478 SQLITE_IOERR_TRUNCATE = 1546 479 SQLITE_IOERR_UNLOCK = 2058 480 SQLITE_IOERR_VNODE = 6922 481 SQLITE_IOERR_WRITE = 778 482 SQLITE_LAST_ERRNO = 4 483 SQLITE_LIKE_DOESNT_MATCH_BLOBS = 1 484 SQLITE_LIMIT_ATTACHED = 7 485 SQLITE_LIMIT_COLUMN = 2 486 SQLITE_LIMIT_COMPOUND_SELECT = 4 487 SQLITE_LIMIT_EXPR_DEPTH = 3 488 SQLITE_LIMIT_FUNCTION_ARG = 6 489 SQLITE_LIMIT_LENGTH = 0 490 SQLITE_LIMIT_LIKE_PATTERN_LENGTH = 8 491 SQLITE_LIMIT_SQL_LENGTH = 1 492 SQLITE_LIMIT_TRIGGER_DEPTH = 10 493 SQLITE_LIMIT_VARIABLE_NUMBER = 9 494 SQLITE_LIMIT_VDBE_OP = 5 495 SQLITE_LIMIT_WORKER_THREADS = 11 496 SQLITE_LOCKED = 6 497 SQLITE_LOCKED_SHAREDCACHE = 262 498 SQLITE_LOCKED_VTAB = 518 499 SQLITE_LOCK_EXCLUSIVE = 4 500 SQLITE_LOCK_NONE = 0 501 SQLITE_LOCK_PENDING = 3 502 SQLITE_LOCK_RESERVED = 2 503 SQLITE_LOCK_SHARED = 1 504 SQLITE_MISMATCH = 20 505 SQLITE_MISUSE = 21 506 SQLITE_MUTEX_APPDEF = 1 507 SQLITE_MUTEX_FAST = 0 508 SQLITE_MUTEX_NOOP = 1 509 SQLITE_MUTEX_RECURSIVE = 1 510 SQLITE_MUTEX_STATIC_APP1 = 8 511 SQLITE_MUTEX_STATIC_APP2 = 9 512 SQLITE_MUTEX_STATIC_APP3 = 10 513 SQLITE_MUTEX_STATIC_LRU = 6 514 SQLITE_MUTEX_STATIC_LRU2 = 7 515 SQLITE_MUTEX_STATIC_MAIN = 2 516 SQLITE_MUTEX_STATIC_MASTER = 2 517 SQLITE_MUTEX_STATIC_MEM = 3 518 SQLITE_MUTEX_STATIC_MEM2 = 4 519 SQLITE_MUTEX_STATIC_OPEN = 4 520 SQLITE_MUTEX_STATIC_PMEM = 7 521 SQLITE_MUTEX_STATIC_PRNG = 5 522 SQLITE_MUTEX_STATIC_VFS1 = 11 523 SQLITE_MUTEX_STATIC_VFS2 = 12 524 SQLITE_MUTEX_STATIC_VFS3 = 13 525 SQLITE_NOLFS = 22 526 SQLITE_NOMEM = 7 527 SQLITE_NOTADB = 26 528 SQLITE_NOTFOUND = 12 529 SQLITE_NOTICE = 27 530 SQLITE_NOTICE_RECOVER_ROLLBACK = 539 531 SQLITE_NOTICE_RECOVER_WAL = 283 532 SQLITE_NULL = 5 533 SQLITE_OK = 0 534 SQLITE_OK_LOAD_PERMANENTLY = 256 535 SQLITE_OK_SYMLINK = 512 536 SQLITE_OPEN_AUTOPROXY = 0x00000020 537 SQLITE_OPEN_CREATE = 0x00000004 538 SQLITE_OPEN_DELETEONCLOSE = 0x00000008 539 SQLITE_OPEN_EXCLUSIVE = 0x00000010 540 SQLITE_OPEN_EXRESCODE = 0x02000000 541 SQLITE_OPEN_FULLMUTEX = 0x00010000 542 SQLITE_OPEN_MAIN_DB = 0x00000100 543 SQLITE_OPEN_MAIN_JOURNAL = 0x00000800 544 SQLITE_OPEN_MASTER_JOURNAL = 0x00004000 545 SQLITE_OPEN_MEMORY = 0x00000080 546 SQLITE_OPEN_NOFOLLOW = 0x01000000 547 SQLITE_OPEN_NOMUTEX = 0x00008000 548 SQLITE_OPEN_PRIVATECACHE = 0x00040000 549 SQLITE_OPEN_READONLY = 0x00000001 550 SQLITE_OPEN_READWRITE = 0x00000002 551 SQLITE_OPEN_SHAREDCACHE = 0x00020000 552 SQLITE_OPEN_SUBJOURNAL = 0x00002000 553 SQLITE_OPEN_SUPER_JOURNAL = 0x00004000 554 SQLITE_OPEN_TEMP_DB = 0x00000200 555 SQLITE_OPEN_TEMP_JOURNAL = 0x00001000 556 SQLITE_OPEN_TRANSIENT_DB = 0x00000400 557 SQLITE_OPEN_URI = 0x00000040 558 SQLITE_OPEN_WAL = 0x00080000 559 SQLITE_OS_UNIX = 1 560 SQLITE_PERM = 3 561 SQLITE_PRAGMA = 19 562 SQLITE_PREPARE_NORMALIZE = 0x02 563 SQLITE_PREPARE_NO_VTAB = 0x04 564 SQLITE_PREPARE_PERSISTENT = 0x01 565 SQLITE_PROTOCOL = 15 566 SQLITE_RANGE = 25 567 SQLITE_READ = 20 568 SQLITE_READONLY = 8 569 SQLITE_READONLY_CANTINIT = 1288 570 SQLITE_READONLY_CANTLOCK = 520 571 SQLITE_READONLY_DBMOVED = 1032 572 SQLITE_READONLY_DIRECTORY = 1544 573 SQLITE_READONLY_RECOVERY = 264 574 SQLITE_READONLY_ROLLBACK = 776 575 SQLITE_RECURSIVE = 33 576 SQLITE_REINDEX = 27 577 SQLITE_REPLACE = 5 578 SQLITE_ROLLBACK = 1 579 SQLITE_ROW = 100 580 SQLITE_SAVEPOINT = 32 581 SQLITE_SCANSTAT_EST = 2 582 SQLITE_SCANSTAT_EXPLAIN = 4 583 SQLITE_SCANSTAT_NAME = 3 584 SQLITE_SCANSTAT_NLOOP = 0 585 SQLITE_SCANSTAT_NVISIT = 1 586 SQLITE_SCANSTAT_SELECTID = 5 587 SQLITE_SCHEMA = 17 588 SQLITE_SELECT = 21 589 SQLITE_SERIALIZE_NOCOPY = 0x001 590 SQLITE_SESSION_CONFIG_STRMSIZE = 1 591 SQLITE_SESSION_OBJCONFIG_SIZE = 1 592 SQLITE_SET_LOCKPROXYFILE = 3 593 SQLITE_SHM_EXCLUSIVE = 8 594 SQLITE_SHM_LOCK = 2 595 SQLITE_SHM_NLOCK = 8 596 SQLITE_SHM_SHARED = 4 597 SQLITE_SHM_UNLOCK = 1 598 SQLITE_SOUNDEX = 1 599 SQLITE_SOURCE_ID = "2022-09-05 11:02:23 4635f4a69c8c2a8df242b384a992aea71224e39a2ccab42d8c0b0602f1e826e8" 600 SQLITE_STATUS_MALLOC_COUNT = 9 601 SQLITE_STATUS_MALLOC_SIZE = 5 602 SQLITE_STATUS_MEMORY_USED = 0 603 SQLITE_STATUS_PAGECACHE_OVERFLOW = 2 604 SQLITE_STATUS_PAGECACHE_SIZE = 7 605 SQLITE_STATUS_PAGECACHE_USED = 1 606 SQLITE_STATUS_PARSER_STACK = 6 607 SQLITE_STATUS_SCRATCH_OVERFLOW = 4 608 SQLITE_STATUS_SCRATCH_SIZE = 8 609 SQLITE_STATUS_SCRATCH_USED = 3 610 SQLITE_STDCALL = 0 611 SQLITE_STMTSTATUS_AUTOINDEX = 3 612 SQLITE_STMTSTATUS_FILTER_HIT = 8 613 SQLITE_STMTSTATUS_FILTER_MISS = 7 614 SQLITE_STMTSTATUS_FULLSCAN_STEP = 1 615 SQLITE_STMTSTATUS_MEMUSED = 99 616 SQLITE_STMTSTATUS_REPREPARE = 5 617 SQLITE_STMTSTATUS_RUN = 6 618 SQLITE_STMTSTATUS_SORT = 2 619 SQLITE_STMTSTATUS_VM_STEP = 4 620 SQLITE_SUBTYPE = 0x000100000 621 SQLITE_SYNC_DATAONLY = 0x00010 622 SQLITE_SYNC_FULL = 0x00003 623 SQLITE_SYNC_NORMAL = 0x00002 624 SQLITE_SYSAPI = 0 625 SQLITE_TESTCTRL_ALWAYS = 13 626 SQLITE_TESTCTRL_ASSERT = 12 627 SQLITE_TESTCTRL_BENIGN_MALLOC_HOOKS = 10 628 SQLITE_TESTCTRL_BITVEC_TEST = 8 629 SQLITE_TESTCTRL_BYTEORDER = 22 630 SQLITE_TESTCTRL_EXPLAIN_STMT = 19 631 SQLITE_TESTCTRL_EXTRA_SCHEMA_CHECKS = 29 632 SQLITE_TESTCTRL_FAULT_INSTALL = 9 633 SQLITE_TESTCTRL_FIRST = 5 634 SQLITE_TESTCTRL_IMPOSTER = 25 635 SQLITE_TESTCTRL_INTERNAL_FUNCTIONS = 17 636 SQLITE_TESTCTRL_ISINIT = 23 637 SQLITE_TESTCTRL_ISKEYWORD = 16 638 SQLITE_TESTCTRL_LAST = 33 639 SQLITE_TESTCTRL_LOCALTIME_FAULT = 18 640 SQLITE_TESTCTRL_LOGEST = 33 641 SQLITE_TESTCTRL_NEVER_CORRUPT = 20 642 SQLITE_TESTCTRL_ONCE_RESET_THRESHOLD = 19 643 SQLITE_TESTCTRL_OPTIMIZATIONS = 15 644 SQLITE_TESTCTRL_PARSER_COVERAGE = 26 645 SQLITE_TESTCTRL_PENDING_BYTE = 11 646 SQLITE_TESTCTRL_PRNG_RESET = 7 647 SQLITE_TESTCTRL_PRNG_RESTORE = 6 648 SQLITE_TESTCTRL_PRNG_SAVE = 5 649 SQLITE_TESTCTRL_PRNG_SEED = 28 650 SQLITE_TESTCTRL_RESERVE = 14 651 SQLITE_TESTCTRL_RESULT_INTREAL = 27 652 SQLITE_TESTCTRL_SCRATCHMALLOC = 17 653 SQLITE_TESTCTRL_SEEK_COUNT = 30 654 SQLITE_TESTCTRL_SORTER_MMAP = 24 655 SQLITE_TESTCTRL_TRACEFLAGS = 31 656 SQLITE_TESTCTRL_TUNE = 32 657 SQLITE_TESTCTRL_VDBE_COVERAGE = 21 658 SQLITE_TEXT = 3 659 SQLITE_THREADSAFE = 1 660 SQLITE_TOOBIG = 18 661 SQLITE_TRACE_CLOSE = 0x08 662 SQLITE_TRACE_PROFILE = 0x02 663 SQLITE_TRACE_ROW = 0x04 664 SQLITE_TRACE_STMT = 0x01 665 SQLITE_TRANSACTION = 22 666 SQLITE_TXN_NONE = 0 667 SQLITE_TXN_READ = 1 668 SQLITE_TXN_WRITE = 2 669 SQLITE_UPDATE = 23 670 SQLITE_UTF16 = 4 671 SQLITE_UTF16BE = 3 672 SQLITE_UTF16LE = 2 673 SQLITE_UTF16_ALIGNED = 8 674 SQLITE_UTF8 = 1 675 SQLITE_VERSION = "3.39.3" 676 SQLITE_VERSION_NUMBER = 3039003 677 SQLITE_VTAB_CONSTRAINT_SUPPORT = 1 678 SQLITE_VTAB_DIRECTONLY = 3 679 SQLITE_VTAB_INNOCUOUS = 2 680 SQLITE_WARNING = 28 681 SQLITE_WARNING_AUTOINDEX = 284 682 SQLITE_WIN32_DATA_DIRECTORY_TYPE = 1 683 SQLITE_WIN32_TEMP_DIRECTORY_TYPE = 2 684 STDERR_FILENO = 2 685 STDIN_FILENO = 0 686 STDOUT_FILENO = 1 687 SWAPOFF_FORCE = 0x00000001 688 TMP_MAX = 308915776 689 W_OK = 0x02 690 X_OK = 0x01 691 X_ACCMODE_T_DECLARED = 0 692 X_ASSERT_H_ = 0 693 X_BIG_ENDIAN = 4321 694 X_BLKCNT_T_DECLARED = 0 695 X_BLKSIZE_T_DECLARED = 0 696 X_BYTE_ORDER = 1234 697 X_CACHED_RUNES = 256 698 X_CAP_IOCTL_T_DECLARED = 0 699 X_CAP_RIGHTS_T_DECLARED = 0 700 X_CLOCKID_T_DECLARED = 0 701 X_CLOCK_T_DECLARED = 0 702 X_CRMASK = -256 703 X_CS_PATH = 1 704 X_CS_POSIX_V6_ILP32_OFF32_CFLAGS = 2 705 X_CS_POSIX_V6_ILP32_OFF32_LDFLAGS = 3 706 X_CS_POSIX_V6_ILP32_OFF32_LIBS = 4 707 X_CS_POSIX_V6_ILP32_OFFBIG_CFLAGS = 5 708 X_CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS = 6 709 X_CS_POSIX_V6_ILP32_OFFBIG_LIBS = 7 710 X_CS_POSIX_V6_LP64_OFF64_CFLAGS = 8 711 X_CS_POSIX_V6_LP64_OFF64_LDFLAGS = 9 712 X_CS_POSIX_V6_LP64_OFF64_LIBS = 10 713 X_CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS = 11 714 X_CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS = 12 715 X_CS_POSIX_V6_LPBIG_OFFBIG_LIBS = 13 716 X_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS = 14 717 X_CTYPE_A = 0x00000100 718 X_CTYPE_B = 0x00020000 719 X_CTYPE_C = 0x00000200 720 X_CTYPE_D = 0x00000400 721 X_CTYPE_G = 0x00000800 722 X_CTYPE_H_ = 0 723 X_CTYPE_I = 0x00080000 724 X_CTYPE_L = 0x00001000 725 X_CTYPE_N = 0x00400000 726 X_CTYPE_P = 0x00002000 727 X_CTYPE_Q = 0x00200000 728 X_CTYPE_R = 0x00040000 729 X_CTYPE_S = 0x00004000 730 X_CTYPE_SW0 = 0x20000000 731 X_CTYPE_SW1 = 0x40000000 732 X_CTYPE_SW2 = 0x80000000 733 X_CTYPE_SW3 = 0xc0000000 734 X_CTYPE_SWM = 0xe0000000 735 X_CTYPE_SWS = 30 736 X_CTYPE_T = 0x00100000 737 X_CTYPE_U = 0x00008000 738 X_CTYPE_X = 0x00010000 739 X_DEV_T_DECLARED = 0 740 X_ERRNO_T_DEFINED = 0 741 X_FFLAGS_T_DECLARED = 0 742 X_FILE_OFFSET_BITS = 64 743 X_FSBLKCNT_T_DECLARED = 0 744 X_FSTDIO = 0 745 X_FTRUNCATE_DECLARED = 0 746 X_FTS5_H = 0 747 X_GETOPT_DECLARED = 0 748 X_GID_T_DECLARED = 0 749 X_ID_T_DECLARED = 0 750 X_ILP32 = 1 751 X_INO_T_DECLARED = 0 752 X_INT16_T_DECLARED = 0 753 X_INT32_T_DECLARED = 0 754 X_INT64_T_DECLARED = 0 755 X_INT8_T_DECLARED = 0 756 X_INTMAX_T_DECLARED = 0 757 X_INTPTR_T_DECLARED = 0 758 X_IN_ADDR_T_DECLARED = 0 759 X_IN_PORT_T_DECLARED = 0 760 X_IOFBF = 0 761 X_IOLBF = 1 762 X_IONBF = 2 763 X_KEY_T_DECLARED = 0 764 X_LITTLE_ENDIAN = 1234 765 X_LOCALE_T_DEFINED = 0 766 X_LSEEK_DECLARED = 0 767 X_LWPID_T_DECLARED = 0 768 X_MACHINE_ENDIAN_H_ = 0 769 X_MACHINE_STDARG_H_ = 0 770 X_MACHINE__LIMITS_H_ = 0 771 X_MACHINE__TYPES_H_ = 0 772 X_MKDTEMP_DECLARED = 0 773 X_MKNOD_DECLARED = 0 774 X_MKSTEMP_DECLARED = 0 775 X_MKTEMP_DECLARED = 0 776 X_MMAP_DECLARED = 0 777 X_MODE_T_DECLARED = 0 778 X_MQD_T_DECLARED = 0 779 X_NLINK_T_DECLARED = 0 780 X_Nonnull = 0 781 X_Null_unspecified = 0 782 X_Nullable = 0 783 X_OFF64_T_DECLARED = 0 784 X_OFF_T_DECLARED = 0 785 X_OPTRESET_DECLARED = 0 786 X_PC_ACL_EXTENDED = 59 787 X_PC_ACL_NFS4 = 64 788 X_PC_ACL_PATH_MAX = 60 789 X_PC_ALLOC_SIZE_MIN = 10 790 X_PC_ASYNC_IO = 53 791 X_PC_CAP_PRESENT = 61 792 X_PC_CHOWN_RESTRICTED = 7 793 X_PC_FILESIZEBITS = 12 794 X_PC_INF_PRESENT = 62 795 X_PC_LINK_MAX = 1 796 X_PC_MAC_PRESENT = 63 797 X_PC_MAX_CANON = 2 798 X_PC_MAX_INPUT = 3 799 X_PC_MIN_HOLE_SIZE = 21 800 X_PC_NAME_MAX = 4 801 X_PC_NO_TRUNC = 8 802 X_PC_PATH_MAX = 5 803 X_PC_PIPE_BUF = 6 804 X_PC_PRIO_IO = 54 805 X_PC_REC_INCR_XFER_SIZE = 14 806 X_PC_REC_MAX_XFER_SIZE = 15 807 X_PC_REC_MIN_XFER_SIZE = 16 808 X_PC_REC_XFER_ALIGN = 17 809 X_PC_SYMLINK_MAX = 18 810 X_PC_SYNC_IO = 55 811 X_PC_VDISABLE = 9 812 X_PDP_ENDIAN = 3412 813 X_PID_T_DECLARED = 0 814 X_POSIX2_CHAR_TERM = 1 815 X_POSIX2_C_BIND = 200112 816 X_POSIX2_C_DEV = -1 817 X_POSIX2_FORT_DEV = -1 818 X_POSIX2_FORT_RUN = 200112 819 X_POSIX2_LOCALEDEF = -1 820 X_POSIX2_PBS = -1 821 X_POSIX2_PBS_ACCOUNTING = -1 822 X_POSIX2_PBS_CHECKPOINT = -1 823 X_POSIX2_PBS_LOCATE = -1 824 X_POSIX2_PBS_MESSAGE = -1 825 X_POSIX2_PBS_TRACK = -1 826 X_POSIX2_SW_DEV = -1 827 X_POSIX2_UPE = 200112 828 X_POSIX2_VERSION = 199212 829 X_POSIX_ADVISORY_INFO = 200112 830 X_POSIX_ASYNCHRONOUS_IO = 200112 831 X_POSIX_BARRIERS = 200112 832 X_POSIX_CHOWN_RESTRICTED = 1 833 X_POSIX_CLOCK_SELECTION = -1 834 X_POSIX_CPUTIME = 200112 835 X_POSIX_FSYNC = 200112 836 X_POSIX_IPV6 = 0 837 X_POSIX_JOB_CONTROL = 1 838 X_POSIX_MAPPED_FILES = 200112 839 X_POSIX_MEMLOCK = -1 840 X_POSIX_MEMLOCK_RANGE = 200112 841 X_POSIX_MEMORY_PROTECTION = 200112 842 X_POSIX_MESSAGE_PASSING = 200112 843 X_POSIX_MONOTONIC_CLOCK = 200112 844 X_POSIX_NO_TRUNC = 1 845 X_POSIX_PRIORITIZED_IO = -1 846 X_POSIX_PRIORITY_SCHEDULING = 0 847 X_POSIX_RAW_SOCKETS = 200112 848 X_POSIX_READER_WRITER_LOCKS = 200112 849 X_POSIX_REALTIME_SIGNALS = 200112 850 X_POSIX_REGEXP = 1 851 X_POSIX_SEMAPHORES = 200112 852 X_POSIX_SHARED_MEMORY_OBJECTS = 200112 853 X_POSIX_SHELL = 1 854 X_POSIX_SPAWN = 200112 855 X_POSIX_SPIN_LOCKS = 200112 856 X_POSIX_SPORADIC_SERVER = -1 857 X_POSIX_SYNCHRONIZED_IO = -1 858 X_POSIX_THREADS = 200112 859 X_POSIX_THREAD_ATTR_STACKADDR = 200112 860 X_POSIX_THREAD_ATTR_STACKSIZE = 200112 861 X_POSIX_THREAD_CPUTIME = 200112 862 X_POSIX_THREAD_PRIORITY_SCHEDULING = 200112 863 X_POSIX_THREAD_PRIO_INHERIT = 200112 864 X_POSIX_THREAD_PRIO_PROTECT = 200112 865 X_POSIX_THREAD_PROCESS_SHARED = 200112 866 X_POSIX_THREAD_SAFE_FUNCTIONS = -1 867 X_POSIX_THREAD_SPORADIC_SERVER = -1 868 X_POSIX_TIMEOUTS = 200112 869 X_POSIX_TIMERS = 200112 870 X_POSIX_TRACE = -1 871 X_POSIX_TRACE_EVENT_FILTER = -1 872 X_POSIX_TRACE_INHERIT = -1 873 X_POSIX_TRACE_LOG = -1 874 X_POSIX_TYPED_MEMORY_OBJECTS = -1 875 X_POSIX_VDISABLE = 0xff 876 X_POSIX_VERSION = 200112 877 X_PTHREAD_T_DECLARED = 0 878 X_QUAD_HIGHWORD = 1 879 X_QUAD_LOWWORD = 0 880 X_RLIM_T_DECLARED = 0 881 X_RSIZE_T_DEFINED = 0 882 X_RUNETYPE_H_ = 0 883 X_RUNE_MAGIC_1 = "RuneMagi" 884 X_RUNE_T_DECLARED = 0 885 X_SC_2_CHAR_TERM = 20 886 X_SC_2_C_BIND = 18 887 X_SC_2_C_DEV = 19 888 X_SC_2_FORT_DEV = 21 889 X_SC_2_FORT_RUN = 22 890 X_SC_2_LOCALEDEF = 23 891 X_SC_2_PBS = 59 892 X_SC_2_PBS_ACCOUNTING = 60 893 X_SC_2_PBS_CHECKPOINT = 61 894 X_SC_2_PBS_LOCATE = 62 895 X_SC_2_PBS_MESSAGE = 63 896 X_SC_2_PBS_TRACK = 64 897 X_SC_2_SW_DEV = 24 898 X_SC_2_UPE = 25 899 X_SC_2_VERSION = 17 900 X_SC_ADVISORY_INFO = 65 901 X_SC_AIO_LISTIO_MAX = 42 902 X_SC_AIO_MAX = 43 903 X_SC_AIO_PRIO_DELTA_MAX = 44 904 X_SC_ARG_MAX = 1 905 X_SC_ASYNCHRONOUS_IO = 28 906 X_SC_ATEXIT_MAX = 107 907 X_SC_BARRIERS = 66 908 X_SC_BC_BASE_MAX = 9 909 X_SC_BC_DIM_MAX = 10 910 X_SC_BC_SCALE_MAX = 11 911 X_SC_BC_STRING_MAX = 12 912 X_SC_CHILD_MAX = 2 913 X_SC_CLK_TCK = 3 914 X_SC_CLOCK_SELECTION = 67 915 X_SC_COLL_WEIGHTS_MAX = 13 916 X_SC_CPUSET_SIZE = 122 917 X_SC_CPUTIME = 68 918 X_SC_DELAYTIMER_MAX = 45 919 X_SC_EXPR_NEST_MAX = 14 920 X_SC_FILE_LOCKING = 69 921 X_SC_FSYNC = 38 922 X_SC_GETGR_R_SIZE_MAX = 70 923 X_SC_GETPW_R_SIZE_MAX = 71 924 X_SC_HOST_NAME_MAX = 72 925 X_SC_IOV_MAX = 56 926 X_SC_IPV6 = 118 927 X_SC_JOB_CONTROL = 6 928 X_SC_LINE_MAX = 15 929 X_SC_LOGIN_NAME_MAX = 73 930 X_SC_MAPPED_FILES = 29 931 X_SC_MEMLOCK = 30 932 X_SC_MEMLOCK_RANGE = 31 933 X_SC_MEMORY_PROTECTION = 32 934 X_SC_MESSAGE_PASSING = 33 935 X_SC_MONOTONIC_CLOCK = 74 936 X_SC_MQ_OPEN_MAX = 46 937 X_SC_MQ_PRIO_MAX = 75 938 X_SC_NGROUPS_MAX = 4 939 X_SC_NPROCESSORS_CONF = 57 940 X_SC_NPROCESSORS_ONLN = 58 941 X_SC_OPEN_MAX = 5 942 X_SC_PAGESIZE = 47 943 X_SC_PAGE_SIZE = 47 944 X_SC_PHYS_PAGES = 121 945 X_SC_PRIORITIZED_IO = 34 946 X_SC_PRIORITY_SCHEDULING = 35 947 X_SC_RAW_SOCKETS = 119 948 X_SC_READER_WRITER_LOCKS = 76 949 X_SC_REALTIME_SIGNALS = 36 950 X_SC_REGEXP = 77 951 X_SC_RE_DUP_MAX = 16 952 X_SC_RTSIG_MAX = 48 953 X_SC_SAVED_IDS = 7 954 X_SC_SEMAPHORES = 37 955 X_SC_SEM_NSEMS_MAX = 49 956 X_SC_SEM_VALUE_MAX = 50 957 X_SC_SHARED_MEMORY_OBJECTS = 39 958 X_SC_SHELL = 78 959 X_SC_SIGQUEUE_MAX = 51 960 X_SC_SPAWN = 79 961 X_SC_SPIN_LOCKS = 80 962 X_SC_SPORADIC_SERVER = 81 963 X_SC_STREAM_MAX = 26 964 X_SC_SYMLOOP_MAX = 120 965 X_SC_SYNCHRONIZED_IO = 40 966 X_SC_THREADS = 96 967 X_SC_THREAD_ATTR_STACKADDR = 82 968 X_SC_THREAD_ATTR_STACKSIZE = 83 969 X_SC_THREAD_CPUTIME = 84 970 X_SC_THREAD_DESTRUCTOR_ITERATIONS = 85 971 X_SC_THREAD_KEYS_MAX = 86 972 X_SC_THREAD_PRIORITY_SCHEDULING = 89 973 X_SC_THREAD_PRIO_INHERIT = 87 974 X_SC_THREAD_PRIO_PROTECT = 88 975 X_SC_THREAD_PROCESS_SHARED = 90 976 X_SC_THREAD_SAFE_FUNCTIONS = 91 977 X_SC_THREAD_SPORADIC_SERVER = 92 978 X_SC_THREAD_STACK_MIN = 93 979 X_SC_THREAD_THREADS_MAX = 94 980 X_SC_TIMEOUTS = 95 981 X_SC_TIMERS = 41 982 X_SC_TIMER_MAX = 52 983 X_SC_TRACE = 97 984 X_SC_TRACE_EVENT_FILTER = 98 985 X_SC_TRACE_INHERIT = 99 986 X_SC_TRACE_LOG = 100 987 X_SC_TTY_NAME_MAX = 101 988 X_SC_TYPED_MEMORY_OBJECTS = 102 989 X_SC_TZNAME_MAX = 27 990 X_SC_V6_ILP32_OFF32 = 103 991 X_SC_V6_ILP32_OFFBIG = 104 992 X_SC_V6_LP64_OFF64 = 105 993 X_SC_V6_LPBIG_OFFBIG = 106 994 X_SC_VERSION = 8 995 X_SC_XOPEN_CRYPT = 108 996 X_SC_XOPEN_ENH_I18N = 109 997 X_SC_XOPEN_LEGACY = 110 998 X_SC_XOPEN_REALTIME = 111 999 X_SC_XOPEN_REALTIME_THREADS = 112 1000 X_SC_XOPEN_SHM = 113 1001 X_SC_XOPEN_STREAMS = 114 1002 X_SC_XOPEN_UNIX = 115 1003 X_SC_XOPEN_VERSION = 116 1004 X_SC_XOPEN_XCU_VERSION = 117 1005 X_SELECT_DECLARED = 0 1006 X_SIGSET_T_DECLARED = 0 1007 X_SIG_MAXSIG = 128 1008 X_SIG_WORDS = 4 1009 X_SIZE_T_DECLARED = 0 1010 X_SQLITE3RTREE_H_ = 0 1011 X_SSIZE_T_DECLARED = 0 1012 X_STDFILE_DECLARED = 0 1013 X_STDIO_H_ = 0 1014 X_STDLIB_H_ = 0 1015 X_STDSTREAM_DECLARED = 0 1016 X_STRINGS_H_ = 0 1017 X_STRING_H_ = 0 1018 X_SUSECONDS_T_DECLARED = 0 1019 X_SWAB_DECLARED = 0 1020 X_SYS_CDEFS_H_ = 0 1021 X_SYS_ERRNO_H_ = 0 1022 X_SYS_SELECT_H_ = 0 1023 X_SYS_TIMESPEC_H_ = 0 1024 X_SYS_TYPES_H_ = 0 1025 X_SYS_UNISTD_H_ = 0 1026 X_SYS__ENDIAN_H_ = 0 1027 X_SYS__PTHREADTYPES_H_ = 0 1028 X_SYS__SIGSET_H_ = 0 1029 X_SYS__STDARG_H_ = 0 1030 X_SYS__STDINT_H_ = 0 1031 X_SYS__TIMESPEC_H_ = 0 1032 X_SYS__TIMEVAL_H_ = 0 1033 X_SYS__TYPES_H_ = 0 1034 X_TIMER_T_DECLARED = 0 1035 X_TIME_T_DECLARED = 0 1036 X_TRUNCATE_DECLARED = 0 1037 X_UID_T_DECLARED = 0 1038 X_UINT16_T_DECLARED = 0 1039 X_UINT32_T_DECLARED = 0 1040 X_UINT64_T_DECLARED = 0 1041 X_UINT8_T_DECLARED = 0 1042 X_UINTMAX_T_DECLARED = 0 1043 X_UINTPTR_T_DECLARED = 0 1044 X_UNISTD_H_ = 0 1045 X_USECONDS_T_DECLARED = 0 1046 X_V6_ILP32_OFF32 = -1 1047 X_V6_ILP32_OFFBIG = 0 1048 X_V6_LP64_OFF64 = 0 1049 X_V6_LPBIG_OFFBIG = -1 1050 X_VA_LIST_DECLARED = 0 1051 X_WCHAR_T_DECLARED = 0 1052 X_XLOCALE_CTYPE_H = 0 1053 X_XLOCALE_RUN_FUNCTIONS_DEFINED = 1 1054 X_XLOCALE_STRING1_H = 0 1055 X_XLOCALE_STRINGS1_H = 0 1056 X_XOPEN_CRYPT = -1 1057 X_XOPEN_ENH_I18N = -1 1058 X_XOPEN_LEGACY = -1 1059 X_XOPEN_REALTIME = -1 1060 X_XOPEN_REALTIME_THREADS = -1 1061 X_XOPEN_SHM = 1 1062 X_XOPEN_STREAMS = -1 1063 X_XOPEN_UNIX = -1 1064 I386 = 1 1065 Unix = 1 1066 ) 1067 1068 type ptrdiff_t = int32 1069 1070 type size_t = uint32 1071 1072 type wchar_t = int32 1073 1074 type va_list = uintptr 1075 1076 type sqlite_int64 = int64 1077 type sqlite_uint64 = uint64 1078 type sqlite3_int64 = sqlite_int64 1079 type sqlite3_uint64 = sqlite_uint64 1080 1081 type sqlite3_callback = uintptr 1082 1083 type sqlite3_file1 = struct{ pMethods uintptr } 1084 1085 type sqlite3_file = sqlite3_file1 1086 type sqlite3_io_methods1 = struct { 1087 iVersion int32 1088 xClose uintptr 1089 xRead uintptr 1090 xWrite uintptr 1091 xTruncate uintptr 1092 xSync uintptr 1093 xFileSize uintptr 1094 xLock uintptr 1095 xUnlock uintptr 1096 xCheckReservedLock uintptr 1097 xFileControl uintptr 1098 xSectorSize uintptr 1099 xDeviceCharacteristics uintptr 1100 xShmMap uintptr 1101 xShmLock uintptr 1102 xShmBarrier uintptr 1103 xShmUnmap uintptr 1104 xFetch uintptr 1105 xUnfetch uintptr 1106 } 1107 1108 type sqlite3_io_methods = sqlite3_io_methods1 1109 1110 type sqlite3_vfs1 = struct { 1111 iVersion int32 1112 szOsFile int32 1113 mxPathname int32 1114 pNext uintptr 1115 zName uintptr 1116 pAppData uintptr 1117 xOpen uintptr 1118 xDelete uintptr 1119 xAccess uintptr 1120 xFullPathname uintptr 1121 xDlOpen uintptr 1122 xDlError uintptr 1123 xDlSym uintptr 1124 xDlClose uintptr 1125 xRandomness uintptr 1126 xSleep uintptr 1127 xCurrentTime uintptr 1128 xGetLastError uintptr 1129 xCurrentTimeInt64 uintptr 1130 xSetSystemCall uintptr 1131 xGetSystemCall uintptr 1132 xNextSystemCall uintptr 1133 } 1134 1135 type sqlite3_vfs = sqlite3_vfs1 1136 type sqlite3_syscall_ptr = uintptr 1137 1138 type sqlite3_mem_methods1 = struct { 1139 xMalloc uintptr 1140 xFree uintptr 1141 xRealloc uintptr 1142 xSize uintptr 1143 xRoundup uintptr 1144 xInit uintptr 1145 xShutdown uintptr 1146 pAppData uintptr 1147 } 1148 1149 type sqlite3_mem_methods = sqlite3_mem_methods1 1150 1151 type sqlite3_destructor_type = uintptr 1152 1153 type sqlite3_vtab1 = struct { 1154 pModule uintptr 1155 nRef int32 1156 zErrMsg uintptr 1157 } 1158 1159 type sqlite3_vtab = sqlite3_vtab1 1160 type sqlite3_index_info1 = struct { 1161 nConstraint int32 1162 aConstraint uintptr 1163 nOrderBy int32 1164 aOrderBy uintptr 1165 aConstraintUsage uintptr 1166 idxNum int32 1167 idxStr uintptr 1168 needToFreeIdxStr int32 1169 orderByConsumed int32 1170 estimatedCost float64 1171 estimatedRows sqlite3_int64 1172 idxFlags int32 1173 colUsed sqlite3_uint64 1174 } 1175 1176 type sqlite3_index_info = sqlite3_index_info1 1177 type sqlite3_vtab_cursor1 = struct{ pVtab uintptr } 1178 1179 type sqlite3_vtab_cursor = sqlite3_vtab_cursor1 1180 type sqlite3_module1 = struct { 1181 iVersion int32 1182 xCreate uintptr 1183 xConnect uintptr 1184 xBestIndex uintptr 1185 xDisconnect uintptr 1186 xDestroy uintptr 1187 xOpen uintptr 1188 xClose uintptr 1189 xFilter uintptr 1190 xNext uintptr 1191 xEof uintptr 1192 xColumn uintptr 1193 xRowid uintptr 1194 xUpdate uintptr 1195 xBegin uintptr 1196 xSync uintptr 1197 xCommit uintptr 1198 xRollback uintptr 1199 xFindFunction uintptr 1200 xRename uintptr 1201 xSavepoint uintptr 1202 xRelease uintptr 1203 xRollbackTo uintptr 1204 xShadowName uintptr 1205 } 1206 1207 type sqlite3_module = sqlite3_module1 1208 1209 type sqlite3_index_constraint = struct { 1210 iColumn int32 1211 op uint8 1212 usable uint8 1213 _ [2]byte 1214 iTermOffset int32 1215 } 1216 1217 type sqlite3_index_orderby = struct { 1218 iColumn int32 1219 desc uint8 1220 _ [3]byte 1221 } 1222 1223 type sqlite3_index_constraint_usage = struct { 1224 argvIndex int32 1225 omit uint8 1226 _ [3]byte 1227 } 1228 1229 type sqlite3_mutex_methods1 = struct { 1230 xMutexInit uintptr 1231 xMutexEnd uintptr 1232 xMutexAlloc uintptr 1233 xMutexFree uintptr 1234 xMutexEnter uintptr 1235 xMutexTry uintptr 1236 xMutexLeave uintptr 1237 xMutexHeld uintptr 1238 xMutexNotheld uintptr 1239 } 1240 1241 type sqlite3_mutex_methods = sqlite3_mutex_methods1 1242 1243 type sqlite3_pcache_page1 = struct { 1244 pBuf uintptr 1245 pExtra uintptr 1246 } 1247 1248 type sqlite3_pcache_page = sqlite3_pcache_page1 1249 1250 type sqlite3_pcache_methods21 = struct { 1251 iVersion int32 1252 pArg uintptr 1253 xInit uintptr 1254 xShutdown uintptr 1255 xCreate uintptr 1256 xCachesize uintptr 1257 xPagecount uintptr 1258 xFetch uintptr 1259 xUnpin uintptr 1260 xRekey uintptr 1261 xTruncate uintptr 1262 xDestroy uintptr 1263 xShrink uintptr 1264 } 1265 1266 type sqlite3_pcache_methods2 = sqlite3_pcache_methods21 1267 1268 type sqlite3_pcache_methods1 = struct { 1269 pArg uintptr 1270 xInit uintptr 1271 xShutdown uintptr 1272 xCreate uintptr 1273 xCachesize uintptr 1274 xPagecount uintptr 1275 xFetch uintptr 1276 xUnpin uintptr 1277 xRekey uintptr 1278 xTruncate uintptr 1279 xDestroy uintptr 1280 } 1281 1282 type sqlite3_pcache_methods = sqlite3_pcache_methods1 1283 1284 type sqlite3_snapshot1 = struct{ hidden [48]uint8 } 1285 1286 type sqlite3_snapshot = sqlite3_snapshot1 1287 1288 type sqlite3_rtree_geometry1 = struct { 1289 pContext uintptr 1290 nParam int32 1291 aParam uintptr 1292 pUser uintptr 1293 xDelUser uintptr 1294 } 1295 1296 type sqlite3_rtree_geometry = sqlite3_rtree_geometry1 1297 type sqlite3_rtree_query_info1 = struct { 1298 pContext uintptr 1299 nParam int32 1300 aParam uintptr 1301 pUser uintptr 1302 xDelUser uintptr 1303 aCoord uintptr 1304 anQueue uintptr 1305 nCoord int32 1306 iLevel int32 1307 mxLevel int32 1308 iRowid sqlite3_int64 1309 rParentScore sqlite3_rtree_dbl 1310 eParentWithin int32 1311 eWithin int32 1312 rScore sqlite3_rtree_dbl 1313 apSqlParam uintptr 1314 } 1315 1316 type sqlite3_rtree_query_info = sqlite3_rtree_query_info1 1317 1318 type sqlite3_rtree_dbl = float64 1319 1320 type Fts5ExtensionApi1 = struct { 1321 iVersion int32 1322 xUserData uintptr 1323 xColumnCount uintptr 1324 xRowCount uintptr 1325 xColumnTotalSize uintptr 1326 xTokenize uintptr 1327 xPhraseCount uintptr 1328 xPhraseSize uintptr 1329 xInstCount uintptr 1330 xInst uintptr 1331 xRowid uintptr 1332 xColumnText uintptr 1333 xColumnSize uintptr 1334 xQueryPhrase uintptr 1335 xSetAuxdata uintptr 1336 xGetAuxdata uintptr 1337 xPhraseFirst uintptr 1338 xPhraseNext uintptr 1339 xPhraseFirstColumn uintptr 1340 xPhraseNextColumn uintptr 1341 } 1342 1343 type Fts5ExtensionApi = Fts5ExtensionApi1 1344 type Fts5PhraseIter1 = struct { 1345 a uintptr 1346 b uintptr 1347 } 1348 1349 type Fts5PhraseIter = Fts5PhraseIter1 1350 1351 type fts5_extension_function = uintptr 1352 type fts5_tokenizer1 = struct { 1353 xCreate uintptr 1354 xDelete uintptr 1355 xTokenize uintptr 1356 } 1357 1358 type fts5_tokenizer = fts5_tokenizer1 1359 1360 type fts5_api1 = struct { 1361 iVersion int32 1362 xCreateTokenizer uintptr 1363 xFindTokenizer uintptr 1364 xCreateFunction uintptr 1365 } 1366 1367 type fts5_api = fts5_api1 1368 1369 type fpos_t = int64 1370 1371 type rsize_t = size_t 1372 1373 type off_t = int64 1374 type ssize_t = int32 1375 1376 type off64_t = int64 1377 1378 type __sbuf = struct { 1379 _base uintptr 1380 _size int32 1381 } 1382 1383 type __sFILE = struct { 1384 _p uintptr 1385 _r int32 1386 _w int32 1387 _flags int16 1388 _file int16 1389 _bf struct { 1390 _base uintptr 1391 _size int32 1392 } 1393 _lbfsize int32 1394 _cookie uintptr 1395 _close uintptr 1396 _read uintptr 1397 _seek uintptr 1398 _write uintptr 1399 _ub struct { 1400 _base uintptr 1401 _size int32 1402 } 1403 _up uintptr 1404 _ur int32 1405 _ubuf [3]uint8 1406 _nbuf [1]uint8 1407 _lb struct { 1408 _base uintptr 1409 _size int32 1410 } 1411 _blksize int32 1412 _offset fpos_t 1413 _fl_mutex uintptr 1414 _fl_owner uintptr 1415 _fl_count int32 1416 _orientation int32 1417 _mbstate struct { 1418 _ [0]uint32 1419 __mbstate8 [128]int8 1420 } 1421 _flags2 int32 1422 } 1423 1424 type FILE = __sFILE 1425 type cookie_io_functions_t = struct { 1426 read uintptr 1427 write uintptr 1428 seek uintptr 1429 close uintptr 1430 } 1431 type pthread_once = struct { 1432 state int32 1433 mutex pthread_mutex_t 1434 } 1435 1436 type pthread_t = uintptr 1437 type pthread_attr_t = uintptr 1438 type pthread_mutex_t = uintptr 1439 type pthread_mutexattr_t = uintptr 1440 type pthread_cond_t = uintptr 1441 type pthread_condattr_t = uintptr 1442 type pthread_key_t = int32 1443 type pthread_once_t = pthread_once 1444 type pthread_rwlock_t = uintptr 1445 type pthread_rwlockattr_t = uintptr 1446 type pthread_barrier_t = uintptr 1447 type pthread_barrierattr_t = uintptr 1448 type pthread_spinlock_t = uintptr 1449 1450 type pthread_addr_t = uintptr 1451 type pthread_startroutine_t = uintptr 1452 1453 type u_char = uint8 1454 type u_short = uint16 1455 type u_int = uint32 1456 type u_long = uint32 1457 type ushort = uint16 1458 type uint = uint32 1459 1460 type int8_t = int8 1461 1462 type int16_t = int16 1463 1464 type int32_t = int32 1465 1466 type int64_t = int64 1467 1468 type uint8_t = uint8 1469 1470 type uint16_t = uint16 1471 1472 type uint32_t = uint32 1473 1474 type uint64_t = uint64 1475 1476 type intptr_t = int32 1477 type uintptr_t = uint32 1478 type intmax_t = int64 1479 type uintmax_t = uint64 1480 1481 type u_int8_t = uint8 1482 type u_int16_t = uint16 1483 type u_int32_t = uint32 1484 type u_int64_t = uint64 1485 1486 type u_quad_t = uint64 1487 type quad_t = int64 1488 type qaddr_t = uintptr 1489 1490 type caddr_t = uintptr 1491 type c_caddr_t = uintptr 1492 1493 type blksize_t = int32 1494 1495 type cpuwhich_t = int32 1496 type cpulevel_t = int32 1497 type cpusetid_t = int32 1498 1499 type blkcnt_t = int64 1500 1501 type clock_t = uint32 1502 1503 type clockid_t = int32 1504 1505 type critical_t = int32 1506 type daddr_t = int64 1507 1508 type dev_t = uint64 1509 1510 type fflags_t = uint32 1511 1512 type fixpt_t = uint32 1513 1514 type fsblkcnt_t = uint64 1515 type fsfilcnt_t = uint64 1516 1517 type gid_t = uint32 1518 1519 type in_addr_t = uint32 1520 1521 type in_port_t = uint16 1522 1523 type id_t = int64 1524 1525 type ino_t = uint64 1526 1527 type key_t = int32 1528 1529 type lwpid_t = int32 1530 1531 type mode_t = uint16 1532 1533 type accmode_t = int32 1534 1535 type nlink_t = uint64 1536 1537 type pid_t = int32 1538 1539 type register_t = int32 1540 1541 type rlim_t = int64 1542 1543 type sbintime_t = int64 1544 1545 type segsz_t = int32 1546 1547 type suseconds_t = int32 1548 1549 type time_t = int32 1550 1551 type timer_t = uintptr 1552 1553 type mqd_t = uintptr 1554 1555 type u_register_t = uint32 1556 1557 type uid_t = uint32 1558 1559 type useconds_t = uint32 1560 1561 type cap_ioctl_t = uint32 1562 1563 type kpaddr_t = uint64 1564 type kvaddr_t = uint64 1565 type ksize_t = uint64 1566 type kssize_t = int64 1567 1568 type vm_offset_t = uint32 1569 type vm_ooffset_t = uint64 1570 type vm_paddr_t = uint64 1571 type vm_pindex_t = uint64 1572 type vm_size_t = uint32 1573 1574 type rman_res_t = uint64 1575 1576 func __bitcount32(tls *libc.TLS, _x uint32) uint32 { 1577 _x = _x&uint32(0x55555555) + _x&0xaaaaaaaa>>1 1578 _x = _x&uint32(0x33333333) + _x&0xcccccccc>>2 1579 _x = (_x + _x>>4) & uint32(0x0f0f0f0f) 1580 _x = _x + _x>>8 1581 _x = (_x + _x>>16) & uint32(0x000000ff) 1582 return _x 1583 } 1584 1585 type __sigset = struct{ __bits [4]uint32 } 1586 1587 type timeval = struct { 1588 tv_sec time_t 1589 tv_usec suseconds_t 1590 } 1591 1592 type timespec = struct { 1593 tv_sec time_t 1594 tv_nsec int32 1595 } 1596 1597 type itimerspec = struct { 1598 it_interval struct { 1599 tv_sec time_t 1600 tv_nsec int32 1601 } 1602 it_value struct { 1603 tv_sec time_t 1604 tv_nsec int32 1605 } 1606 } 1607 1608 type fd_mask = uint32 1609 1610 type sigset_t = __sigset 1611 1612 type fd_set1 = struct{ __fds_bits [32]uint32 } 1613 1614 type fd_set = fd_set1 1615 1616 type crypt_data = struct { 1617 initialized int32 1618 __buf [256]int8 1619 } 1620 1621 type errno_t = int32 1622 1623 type rune_t = int32 1624 1625 type div_t = struct { 1626 quot int32 1627 rem int32 1628 } 1629 1630 type ldiv_t = struct { 1631 quot int32 1632 rem int32 1633 } 1634 1635 type lldiv_t = struct { 1636 quot int64 1637 rem int64 1638 } 1639 1640 type constraint_handler_t = uintptr 1641 1642 type locale_t = uintptr 1643 1644 type _RuneEntry = struct { 1645 __min int32 1646 __max int32 1647 __map int32 1648 __types uintptr 1649 } 1650 1651 type _RuneRange = struct { 1652 __nranges int32 1653 __ranges uintptr 1654 } 1655 1656 type _RuneLocale = struct { 1657 __magic [8]int8 1658 __encoding [32]int8 1659 __sgetrune uintptr 1660 __sputrune uintptr 1661 __invalid_rune int32 1662 __runetype [256]uint32 1663 __maplower [256]int32 1664 __mapupper [256]int32 1665 __runetype_ext _RuneRange 1666 __maplower_ext _RuneRange 1667 __mapupper_ext _RuneRange 1668 __variable uintptr 1669 __variable_len int32 1670 } 1671 1672 func __getCurrentRuneLocale(tls *libc.TLS) uintptr { 1673 if libc.X_ThreadRuneLocale != 0 { 1674 return libc.X_ThreadRuneLocale 1675 } 1676 return libc.X_CurrentRuneLocale 1677 } 1678 1679 func __maskrune(tls *libc.TLS, _c int32, _f uint32) int32 { 1680 return int32(func() uint32 { 1681 if _c < 0 || _c >= int32(1)<<8 { 1682 return libc.X___runetype(tls, _c) 1683 } 1684 return *(*uint32)(unsafe.Pointer(__getCurrentRuneLocale(tls) + 52 + uintptr(_c)*4)) 1685 }() & _f) 1686 } 1687 1688 func __sbmaskrune(tls *libc.TLS, _c int32, _f uint32) int32 { 1689 if _c < 0 || _c >= libc.X__mb_sb_limit { 1690 return 0 1691 } 1692 return int32(*(*uint32)(unsafe.Pointer(__getCurrentRuneLocale(tls) + 52 + uintptr(_c)*4)) & _f) 1693 } 1694 1695 func __sbistype(tls *libc.TLS, _c int32, _f uint32) int32 { 1696 return libc.BoolInt32(!!(__sbmaskrune(tls, _c, _f) != 0)) 1697 } 1698 1699 func __sbmaskrune_l(tls *libc.TLS, __c int32, __f uint32, __loc locale_t) int32 { 1700 bp := tls.Alloc(4) 1701 defer tls.Free(4) 1702 1703 var runes uintptr = libc.X__runes_for_locale(tls, __loc, bp) 1704 if __c < 0 || __c >= *(*int32)(unsafe.Pointer(bp)) { 1705 return 0 1706 } 1707 return int32(*(*uint32)(unsafe.Pointer(runes + 52 + uintptr(__c)*4)) & __f) 1708 } 1709 1710 func __sbistype_l(tls *libc.TLS, __c int32, __f uint32, __loc locale_t) int32 { 1711 return libc.BoolInt32(!!(__sbmaskrune_l(tls, __c, __f, __loc) != 0)) 1712 } 1713 1714 type Global = struct { 1715 argv0 uintptr 1716 zVfs uintptr 1717 zDbFile uintptr 1718 db uintptr 1719 zErrLog uintptr 1720 pErrLog uintptr 1721 zLog uintptr 1722 pLog uintptr 1723 zName [32]int8 1724 taskId int32 1725 iTrace int32 1726 bSqlTrace int32 1727 bIgnoreSqlErrors int32 1728 nError int32 1729 nTest int32 1730 iTimeout int32 1731 bSync int32 1732 } 1733 1734 var g Global 1735 1736 func printWithPrefix(tls *libc.TLS, pOut uintptr, zPrefix uintptr, zMsg uintptr) { 1737 bp := tls.Alloc(24) 1738 defer tls.Free(24) 1739 1740 for zMsg != 0 && *(*int8)(unsafe.Pointer(zMsg)) != 0 { 1741 var i int32 1742 for i = 0; *(*int8)(unsafe.Pointer(zMsg + uintptr(i))) != 0 && int32(*(*int8)(unsafe.Pointer(zMsg + uintptr(i)))) != '\n' && int32(*(*int8)(unsafe.Pointer(zMsg + uintptr(i)))) != '\r'; i++ { 1743 } 1744 libc.Xfprintf(tls, pOut, ts, libc.VaList(bp, zPrefix, i, zMsg)) 1745 zMsg += uintptr(i) 1746 for int32(*(*int8)(unsafe.Pointer(zMsg))) == '\n' || int32(*(*int8)(unsafe.Pointer(zMsg))) == '\r' { 1747 zMsg++ 1748 } 1749 } 1750 } 1751 1752 func safe_strcmp(tls *libc.TLS, a uintptr, b uintptr) int32 { 1753 if a == b { 1754 return 0 1755 } 1756 if a == uintptr(0) { 1757 return -1 1758 } 1759 if b == uintptr(0) { 1760 return 1 1761 } 1762 return libc.Xstrcmp(tls, a, b) 1763 } 1764 1765 func strglob(tls *libc.TLS, zGlob uintptr, z uintptr) int32 { 1766 var c int32 1767 var c2 int32 1768 var invert int32 1769 var seen int32 1770 1771 for libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1))))) != 0 { 1772 if c == '*' { 1773 for libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1))))) == '*' || c == '?' { 1774 if c == '?' && int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1)))) == 0 { 1775 return 0 1776 } 1777 } 1778 if c == 0 { 1779 return 1 1780 } else if c == '[' { 1781 for *(*int8)(unsafe.Pointer(z)) != 0 && strglob(tls, zGlob-uintptr(1), z) != 0 { 1782 z++ 1783 } 1784 return libc.Bool32(int32(*(*int8)(unsafe.Pointer(z))) != 0) 1785 } 1786 for libc.AssignInt32(&c2, int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1))))) != 0 { 1787 for c2 != c { 1788 c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1)))) 1789 if c2 == 0 { 1790 return 0 1791 } 1792 } 1793 if strglob(tls, zGlob, z) != 0 { 1794 return 1 1795 } 1796 } 1797 return 0 1798 } else if c == '?' { 1799 if int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1)))) == 0 { 1800 return 0 1801 } 1802 } else if c == '[' { 1803 var prior_c int32 = 0 1804 seen = 0 1805 invert = 0 1806 c = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1)))) 1807 if c == 0 { 1808 return 0 1809 } 1810 c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))) 1811 if c2 == '^' { 1812 invert = 1 1813 c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))) 1814 } 1815 if c2 == ']' { 1816 if c == ']' { 1817 seen = 1 1818 } 1819 c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))) 1820 } 1821 for c2 != 0 && c2 != ']' { 1822 if c2 == '-' && int32(*(*int8)(unsafe.Pointer(zGlob))) != ']' && int32(*(*int8)(unsafe.Pointer(zGlob))) != 0 && prior_c > 0 { 1823 c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))) 1824 if c >= prior_c && c <= c2 { 1825 seen = 1 1826 } 1827 prior_c = 0 1828 } else { 1829 if c == c2 { 1830 seen = 1 1831 } 1832 prior_c = c2 1833 } 1834 c2 = int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))) 1835 } 1836 if c2 == 0 || seen^invert == 0 { 1837 return 0 1838 } 1839 } else if c == '#' { 1840 if (int32(*(*int8)(unsafe.Pointer(z))) == '-' || int32(*(*int8)(unsafe.Pointer(z))) == '+') && __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + 1)))), uint32(X_CTYPE_D)) != 0 { 1841 z++ 1842 } 1843 if !(__sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(z)))), uint32(X_CTYPE_D)) != 0) { 1844 return 0 1845 } 1846 z++ 1847 for __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(z)))), uint32(X_CTYPE_D)) != 0 { 1848 z++ 1849 } 1850 } else { 1851 if c != int32(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1)))) { 1852 return 0 1853 } 1854 } 1855 } 1856 return libc.Bool32(int32(*(*int8)(unsafe.Pointer(z))) == 0) 1857 } 1858 1859 func maybeClose(tls *libc.TLS, pOut uintptr) { 1860 if pOut != libc.X__stdoutp && pOut != libc.X__stderrp { 1861 libc.Xfclose(tls, pOut) 1862 } 1863 } 1864 1865 func errorMessage(tls *libc.TLS, zFormat uintptr, va uintptr) { 1866 bp := tls.Alloc(38) 1867 defer tls.Free(38) 1868 1869 var ap va_list 1870 _ = ap 1871 var zMsg uintptr 1872 1873 ap = va 1874 zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 1875 _ = ap 1876 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+8, ts+8, libc.VaList(bp, uintptr(unsafe.Pointer(&g))+32)) 1877 if g.pLog != 0 { 1878 printWithPrefix(tls, g.pLog, bp+8, zMsg) 1879 libc.Xfflush(tls, g.pLog) 1880 } 1881 if g.pErrLog != 0 && safe_strcmp(tls, g.zErrLog, g.zLog) != 0 { 1882 printWithPrefix(tls, g.pErrLog, bp+8, zMsg) 1883 libc.Xfflush(tls, g.pErrLog) 1884 } 1885 sqlite3.Xsqlite3_free(tls, zMsg) 1886 g.nError++ 1887 } 1888 1889 func fatalError(tls *libc.TLS, zFormat uintptr, va uintptr) { 1890 bp := tls.Alloc(38) 1891 defer tls.Free(38) 1892 1893 var ap va_list 1894 _ = ap 1895 var zMsg uintptr 1896 1897 ap = va 1898 zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 1899 _ = ap 1900 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+8, ts+19, libc.VaList(bp, uintptr(unsafe.Pointer(&g))+32)) 1901 if g.pLog != 0 { 1902 printWithPrefix(tls, g.pLog, bp+8, zMsg) 1903 libc.Xfflush(tls, g.pLog) 1904 maybeClose(tls, g.pLog) 1905 } 1906 if g.pErrLog != 0 && safe_strcmp(tls, g.zErrLog, g.zLog) != 0 { 1907 printWithPrefix(tls, g.pErrLog, bp+8, zMsg) 1908 libc.Xfflush(tls, g.pErrLog) 1909 maybeClose(tls, g.pErrLog) 1910 } 1911 sqlite3.Xsqlite3_free(tls, zMsg) 1912 if g.db != 0 { 1913 var nTry int32 = 0 1914 g.iTimeout = 0 1915 for trySql(tls, ts+30, 0) == SQLITE_BUSY && 1916 libc.PostIncInt32(&nTry, 1) < 100 { 1917 sqlite3.Xsqlite3_sleep(tls, 10) 1918 } 1919 } 1920 sqlite3.Xsqlite3_close(tls, g.db) 1921 libc.Xexit(tls, 1) 1922 } 1923 1924 func logMessage(tls *libc.TLS, zFormat uintptr, va uintptr) { 1925 bp := tls.Alloc(38) 1926 defer tls.Free(38) 1927 1928 var ap va_list 1929 _ = ap 1930 var zMsg uintptr 1931 1932 ap = va 1933 zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 1934 _ = ap 1935 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+8, ts+60, libc.VaList(bp, uintptr(unsafe.Pointer(&g))+32)) 1936 if g.pLog != 0 { 1937 printWithPrefix(tls, g.pLog, bp+8, zMsg) 1938 libc.Xfflush(tls, g.pLog) 1939 } 1940 sqlite3.Xsqlite3_free(tls, zMsg) 1941 } 1942 1943 func clipLength(tls *libc.TLS, z uintptr) int32 { 1944 var n int32 = int32(libc.Xstrlen(tls, z)) 1945 for n > 0 && __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(n-1))))), uint32(X_CTYPE_S)) != 0 { 1946 n-- 1947 } 1948 return n 1949 } 1950 1951 func vfsNameFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { 1952 bp := tls.Alloc(4) 1953 defer tls.Free(4) 1954 1955 var db uintptr = sqlite3.Xsqlite3_context_db_handle(tls, context) 1956 *(*uintptr)(unsafe.Pointer(bp)) = uintptr(0) 1957 _ = argc 1958 _ = argv 1959 sqlite3.Xsqlite3_file_control(tls, db, ts+65, SQLITE_FCNTL_VFSNAME, bp) 1960 if *(*uintptr)(unsafe.Pointer(bp)) != 0 { 1961 sqlite3.Xsqlite3_result_text(tls, context, *(*uintptr)(unsafe.Pointer(bp)), -1, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{sqlite3.Xsqlite3_free}))) 1962 } 1963 } 1964 1965 func busyHandler(tls *libc.TLS, pCD uintptr, count int32) int32 { 1966 bp := tls.Alloc(8) 1967 defer tls.Free(8) 1968 1969 _ = pCD 1970 if count*10 > g.iTimeout { 1971 if g.iTimeout > 0 { 1972 errorMessage(tls, ts+70, libc.VaList(bp, g.iTimeout)) 1973 } 1974 return 0 1975 } 1976 sqlite3.Xsqlite3_sleep(tls, 10) 1977 return 1 1978 } 1979 1980 func sqlTraceCallback(tls *libc.TLS, NotUsed1 uintptr, zSql uintptr) { 1981 bp := tls.Alloc(16) 1982 defer tls.Free(16) 1983 1984 _ = NotUsed1 1985 logMessage(tls, ts+89, libc.VaList(bp, clipLength(tls, zSql), zSql)) 1986 } 1987 1988 func sqlErrorCallback(tls *libc.TLS, pArg uintptr, iErrCode int32, zMsg uintptr) { 1989 bp := tls.Alloc(24) 1990 defer tls.Free(24) 1991 1992 _ = pArg 1993 if iErrCode == SQLITE_ERROR && g.bIgnoreSqlErrors != 0 { 1994 return 1995 } 1996 if iErrCode&0xff == SQLITE_SCHEMA && g.iTrace < 3 { 1997 return 1998 } 1999 if g.iTimeout == 0 && iErrCode&0xff == SQLITE_BUSY && g.iTrace < 3 { 2000 return 2001 } 2002 if iErrCode&0xff == SQLITE_NOTICE { 2003 logMessage(tls, ts+96, libc.VaList(bp, zMsg)) 2004 } else { 2005 errorMessage(tls, ts+106, libc.VaList(bp+8, iErrCode, zMsg)) 2006 } 2007 } 2008 2009 func prepareSql(tls *libc.TLS, zFormat uintptr, va uintptr) uintptr { 2010 bp := tls.Alloc(20) 2011 defer tls.Free(20) 2012 2013 var ap va_list 2014 _ = ap 2015 var zSql uintptr 2016 var rc int32 2017 *(*uintptr)(unsafe.Pointer(bp + 16)) = uintptr(0) 2018 ap = va 2019 zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 2020 _ = ap 2021 rc = sqlite3.Xsqlite3_prepare_v2(tls, g.db, zSql, -1, bp+16, uintptr(0)) 2022 if rc != SQLITE_OK { 2023 sqlite3.Xsqlite3_finalize(tls, *(*uintptr)(unsafe.Pointer(bp + 16))) 2024 fatalError(tls, ts+122, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db), zSql)) 2025 } 2026 sqlite3.Xsqlite3_free(tls, zSql) 2027 return *(*uintptr)(unsafe.Pointer(bp + 16)) 2028 } 2029 2030 func runSql(tls *libc.TLS, zFormat uintptr, va uintptr) { 2031 bp := tls.Alloc(16) 2032 defer tls.Free(16) 2033 2034 var ap va_list 2035 _ = ap 2036 var zSql uintptr 2037 var rc int32 2038 ap = va 2039 zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 2040 _ = ap 2041 rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, uintptr(0), uintptr(0), uintptr(0)) 2042 if rc != SQLITE_OK { 2043 fatalError(tls, ts+122, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db), zSql)) 2044 } 2045 sqlite3.Xsqlite3_free(tls, zSql) 2046 } 2047 2048 func trySql(tls *libc.TLS, zFormat uintptr, va uintptr) int32 { 2049 var ap va_list 2050 _ = ap 2051 var zSql uintptr 2052 var rc int32 2053 ap = va 2054 zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 2055 _ = ap 2056 rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, uintptr(0), uintptr(0), uintptr(0)) 2057 sqlite3.Xsqlite3_free(tls, zSql) 2058 return rc 2059 } 2060 2061 type String1 = struct { 2062 z uintptr 2063 n int32 2064 nAlloc int32 2065 } 2066 2067 type String = String1 2068 2069 func stringFree(tls *libc.TLS, p uintptr) { 2070 if (*String)(unsafe.Pointer(p)).z != 0 { 2071 sqlite3.Xsqlite3_free(tls, (*String)(unsafe.Pointer(p)).z) 2072 } 2073 libc.Xmemset(tls, p, 0, uint32(unsafe.Sizeof(String{}))) 2074 } 2075 2076 func stringAppend(tls *libc.TLS, p uintptr, z uintptr, n int32) { 2077 if n < 0 { 2078 n = int32(libc.Xstrlen(tls, z)) 2079 } 2080 if (*String)(unsafe.Pointer(p)).n+n >= (*String)(unsafe.Pointer(p)).nAlloc { 2081 var nAlloc int32 = (*String)(unsafe.Pointer(p)).nAlloc*2 + n + 100 2082 var zNew uintptr = sqlite3.Xsqlite3_realloc(tls, (*String)(unsafe.Pointer(p)).z, nAlloc) 2083 if zNew == uintptr(0) { 2084 fatalError(tls, ts+129, 0) 2085 } 2086 (*String)(unsafe.Pointer(p)).z = zNew 2087 (*String)(unsafe.Pointer(p)).nAlloc = nAlloc 2088 } 2089 libc.Xmemcpy(tls, (*String)(unsafe.Pointer(p)).z+uintptr((*String)(unsafe.Pointer(p)).n), z, uint32(n)) 2090 *(*int32)(unsafe.Pointer(p + 4)) += n 2091 *(*int8)(unsafe.Pointer((*String)(unsafe.Pointer(p)).z + uintptr((*String)(unsafe.Pointer(p)).n))) = int8(0) 2092 } 2093 2094 func stringReset(tls *libc.TLS, p uintptr) { 2095 if (*String)(unsafe.Pointer(p)).z == uintptr(0) { 2096 stringAppend(tls, p, ts+143, 1) 2097 } 2098 (*String)(unsafe.Pointer(p)).n = 0 2099 *(*int8)(unsafe.Pointer((*String)(unsafe.Pointer(p)).z)) = int8(0) 2100 } 2101 2102 func stringAppendTerm(tls *libc.TLS, p uintptr, z uintptr) { 2103 var i int32 2104 if (*String)(unsafe.Pointer(p)).n != 0 { 2105 stringAppend(tls, p, ts+143, 1) 2106 } 2107 if z == uintptr(0) { 2108 stringAppend(tls, p, ts+145, 3) 2109 return 2110 } 2111 for i = 0; *(*int8)(unsafe.Pointer(z + uintptr(i))) != 0 && !(__sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(i))))), uint32(X_CTYPE_S)) != 0); i++ { 2112 } 2113 if i > 0 && int32(*(*int8)(unsafe.Pointer(z + uintptr(i)))) == 0 { 2114 stringAppend(tls, p, z, i) 2115 return 2116 } 2117 stringAppend(tls, p, ts+149, 1) 2118 for *(*int8)(unsafe.Pointer(z)) != 0 { 2119 for i = 0; *(*int8)(unsafe.Pointer(z + uintptr(i))) != 0 && int32(*(*int8)(unsafe.Pointer(z + uintptr(i)))) != '\''; i++ { 2120 } 2121 if *(*int8)(unsafe.Pointer(z + uintptr(i))) != 0 { 2122 stringAppend(tls, p, z, i+1) 2123 stringAppend(tls, p, ts+149, 1) 2124 z += uintptr(i + 1) 2125 } else { 2126 stringAppend(tls, p, z, i) 2127 break 2128 } 2129 } 2130 stringAppend(tls, p, ts+149, 1) 2131 } 2132 2133 func evalCallback(tls *libc.TLS, pCData uintptr, argc int32, argv uintptr, azCol uintptr) int32 { 2134 var p uintptr = pCData 2135 var i int32 2136 _ = azCol 2137 for i = 0; i < argc; i++ { 2138 stringAppendTerm(tls, p, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4))) 2139 } 2140 return 0 2141 } 2142 2143 func evalSql(tls *libc.TLS, p uintptr, zFormat uintptr, va uintptr) int32 { 2144 bp := tls.Alloc(42) 2145 defer tls.Free(42) 2146 2147 var ap va_list 2148 _ = ap 2149 var zSql uintptr 2150 var rc int32 2151 *(*uintptr)(unsafe.Pointer(bp + 8)) = uintptr(0) 2152 ap = va 2153 zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 2154 _ = ap 2155 2156 rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, *(*uintptr)(unsafe.Pointer(&struct { 2157 f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 2158 }{evalCallback})), p, bp+8) 2159 sqlite3.Xsqlite3_free(tls, zSql) 2160 if rc != 0 { 2161 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]int8{})), bp+12, ts+151, libc.VaList(bp, rc)) 2162 stringAppendTerm(tls, p, bp+12) 2163 if *(*uintptr)(unsafe.Pointer(bp + 8)) != 0 { 2164 stringAppendTerm(tls, p, *(*uintptr)(unsafe.Pointer(bp + 8))) 2165 sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 8))) 2166 } 2167 } 2168 return rc 2169 } 2170 2171 func evalFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { 2172 bp := tls.Alloc(16) 2173 defer tls.Free(16) 2174 2175 var db uintptr = sqlite3.Xsqlite3_context_db_handle(tls, context) 2176 var zSql uintptr = sqlite3.Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv))) 2177 2178 *(*uintptr)(unsafe.Pointer(bp + 12)) = uintptr(0) 2179 var rc int32 2180 _ = argc 2181 libc.Xmemset(tls, bp, 0, uint32(unsafe.Sizeof(String{}))) 2182 rc = sqlite3.Xsqlite3_exec(tls, db, zSql, *(*uintptr)(unsafe.Pointer(&struct { 2183 f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 2184 }{evalCallback})), bp, bp+12) 2185 if *(*uintptr)(unsafe.Pointer(bp + 12)) != 0 { 2186 sqlite3.Xsqlite3_result_error(tls, context, *(*uintptr)(unsafe.Pointer(bp + 12)), -1) 2187 sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 12))) 2188 } else if rc != 0 { 2189 sqlite3.Xsqlite3_result_error_code(tls, context, rc) 2190 } else { 2191 sqlite3.Xsqlite3_result_text(tls, context, (*String)(unsafe.Pointer(bp)).z, -1, libc.UintptrFromInt32(-1)) 2192 } 2193 stringFree(tls, bp) 2194 } 2195 2196 func startScript(tls *libc.TLS, iClient int32, pzScript uintptr, pTaskId uintptr, pzTaskName uintptr) int32 { 2197 bp := tls.Alloc(80) 2198 defer tls.Free(80) 2199 2200 var pStmt uintptr = uintptr(0) 2201 var taskId int32 2202 var rc int32 2203 var totalTime int32 = 0 2204 2205 *(*uintptr)(unsafe.Pointer(pzScript)) = uintptr(0) 2206 g.iTimeout = 0 2207 for 1 != 0 { 2208 rc = trySql(tls, ts+161, 0) 2209 if rc == SQLITE_BUSY { 2210 sqlite3.Xsqlite3_sleep(tls, 10) 2211 totalTime = totalTime + 10 2212 continue 2213 } 2214 if rc != SQLITE_OK { 2215 fatalError(tls, ts+177, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db))) 2216 } 2217 if g.nError != 0 || g.nTest != 0 { 2218 runSql(tls, ts+196, 2219 libc.VaList(bp+8, g.nError, g.nTest)) 2220 g.nError = 0 2221 g.nTest = 0 2222 } 2223 pStmt = prepareSql(tls, ts+249, libc.VaList(bp+24, iClient)) 2224 rc = sqlite3.Xsqlite3_step(tls, pStmt) 2225 sqlite3.Xsqlite3_finalize(tls, pStmt) 2226 if rc == SQLITE_ROW { 2227 runSql(tls, ts+295, libc.VaList(bp+32, iClient)) 2228 g.iTimeout = DEFAULT_TIMEOUT 2229 runSql(tls, ts+326, 0) 2230 return SQLITE_DONE 2231 } 2232 pStmt = prepareSql(tls, 2233 ts+346, libc.VaList(bp+40, iClient)) 2234 rc = sqlite3.Xsqlite3_step(tls, pStmt) 2235 if rc == SQLITE_ROW { 2236 var n int32 = sqlite3.Xsqlite3_column_bytes(tls, pStmt, 0) 2237 *(*uintptr)(unsafe.Pointer(pzScript)) = sqlite3.Xsqlite3_malloc(tls, n+1) 2238 libc.Xstrcpy(tls, *(*uintptr)(unsafe.Pointer(pzScript)), sqlite3.Xsqlite3_column_text(tls, pStmt, 0)) 2239 *(*int32)(unsafe.Pointer(pTaskId)) = libc.AssignInt32(&taskId, sqlite3.Xsqlite3_column_int(tls, pStmt, 1)) 2240 *(*uintptr)(unsafe.Pointer(pzTaskName)) = sqlite3.Xsqlite3_mprintf(tls, ts+438, libc.VaList(bp+48, sqlite3.Xsqlite3_column_text(tls, pStmt, 2))) 2241 sqlite3.Xsqlite3_finalize(tls, pStmt) 2242 runSql(tls, 2243 ts+441, libc.VaList(bp+56, taskId)) 2244 g.iTimeout = DEFAULT_TIMEOUT 2245 runSql(tls, ts+326, 0) 2246 return SQLITE_OK 2247 } 2248 sqlite3.Xsqlite3_finalize(tls, pStmt) 2249 if rc == SQLITE_DONE { 2250 if totalTime > 30000 { 2251 errorMessage(tls, ts+524, 0) 2252 runSql(tls, ts+573, libc.VaList(bp+64, iClient)) 2253 sqlite3.Xsqlite3_close(tls, g.db) 2254 libc.Xexit(tls, 1) 2255 } 2256 for trySql(tls, ts+613, 0) == SQLITE_BUSY { 2257 sqlite3.Xsqlite3_sleep(tls, 10) 2258 totalTime = totalTime + 10 2259 } 2260 sqlite3.Xsqlite3_sleep(tls, 100) 2261 totalTime = totalTime + 100 2262 continue 2263 } 2264 fatalError(tls, ts+438, libc.VaList(bp+72, sqlite3.Xsqlite3_errmsg(tls, g.db))) 2265 } 2266 g.iTimeout = DEFAULT_TIMEOUT 2267 return int32(0) 2268 } 2269 2270 func finishScript(tls *libc.TLS, iClient int32, taskId int32, bShutdown int32) int32 { 2271 bp := tls.Alloc(16) 2272 defer tls.Free(16) 2273 2274 runSql(tls, 2275 ts+620, libc.VaList(bp, taskId)) 2276 if bShutdown != 0 { 2277 runSql(tls, ts+295, libc.VaList(bp+8, iClient)) 2278 } 2279 return SQLITE_OK 2280 } 2281 2282 func startClient(tls *libc.TLS, iClient int32) { 2283 bp := tls.Alloc(96) 2284 defer tls.Free(96) 2285 2286 runSql(tls, ts+701, libc.VaList(bp, iClient)) 2287 if sqlite3.Xsqlite3_changes(tls, g.db) != 0 { 2288 var zSys uintptr 2289 var rc int32 2290 zSys = sqlite3.Xsqlite3_mprintf(tls, ts+743, 2291 libc.VaList(bp+8, g.argv0, g.zDbFile, iClient, g.iTrace)) 2292 if g.bSqlTrace != 0 { 2293 zSys = sqlite3.Xsqlite3_mprintf(tls, ts+774, libc.VaList(bp+40, zSys)) 2294 } 2295 if g.bSync != 0 { 2296 zSys = sqlite3.Xsqlite3_mprintf(tls, ts+788, libc.VaList(bp+48, zSys)) 2297 } 2298 if g.zVfs != 0 { 2299 zSys = sqlite3.Xsqlite3_mprintf(tls, ts+798, libc.VaList(bp+56, zSys, g.zVfs)) 2300 } 2301 if g.iTrace >= 2 { 2302 logMessage(tls, ts+812, libc.VaList(bp+72, zSys)) 2303 } 2304 zSys = sqlite3.Xsqlite3_mprintf(tls, ts+825, libc.VaList(bp+80, zSys)) 2305 rc = libc.Xsystem(tls, zSys) 2306 if rc != 0 { 2307 errorMessage(tls, ts+830, libc.VaList(bp+88, rc)) 2308 } 2309 sqlite3.Xsqlite3_free(tls, zSys) 2310 } 2311 } 2312 2313 func readFile(tls *libc.TLS, zFilename uintptr) uintptr { 2314 bp := tls.Alloc(8) 2315 defer tls.Free(8) 2316 2317 var in uintptr = libc.Xfopen(tls, zFilename, ts+864) 2318 var sz int32 2319 var z uintptr 2320 if in == uintptr(0) { 2321 fatalError(tls, ts+867, libc.VaList(bp, zFilename)) 2322 } 2323 libc.Xfseek(tls, in, 0, SEEK_END) 2324 sz = libc.Xftell(tls, in) 2325 libc.Xrewind(tls, in) 2326 z = sqlite3.Xsqlite3_malloc(tls, sz+1) 2327 sz = int32(libc.Xfread(tls, z, uint32(1), uint32(sz), in)) 2328 *(*int8)(unsafe.Pointer(z + uintptr(sz))) = int8(0) 2329 libc.Xfclose(tls, in) 2330 return z 2331 } 2332 2333 func tokenLength(tls *libc.TLS, z uintptr, pnLine uintptr) int32 { 2334 var n int32 = 0 2335 if __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(z)))), uint32(X_CTYPE_S)) != 0 || int32(*(*int8)(unsafe.Pointer(z))) == '/' && int32(*(*int8)(unsafe.Pointer(z + 1))) == '*' { 2336 var inC int32 = 0 2337 var c int32 2338 if int32(*(*int8)(unsafe.Pointer(z))) == '/' { 2339 inC = 1 2340 n = 2 2341 } 2342 for libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(z + uintptr(libc.PostIncInt32(&n, 1)))))) != 0 { 2343 if c == '\n' { 2344 *(*int32)(unsafe.Pointer(pnLine))++ 2345 } 2346 if __sbistype(tls, int32(uint8(c)), uint32(X_CTYPE_S)) != 0 { 2347 continue 2348 } 2349 if inC != 0 && c == '*' && int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == '/' { 2350 n++ 2351 inC = 0 2352 } else if !(inC != 0) && c == '/' && int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == '*' { 2353 n++ 2354 inC = 1 2355 } else if !(inC != 0) { 2356 break 2357 } 2358 } 2359 n-- 2360 } else if int32(*(*int8)(unsafe.Pointer(z))) == '-' && int32(*(*int8)(unsafe.Pointer(z + 1))) == '-' { 2361 for n = 2; *(*int8)(unsafe.Pointer(z + uintptr(n))) != 0 && int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) != '\n'; n++ { 2362 } 2363 if *(*int8)(unsafe.Pointer(z + uintptr(n))) != 0 { 2364 *(*int32)(unsafe.Pointer(pnLine))++ 2365 n++ 2366 } 2367 } else if int32(*(*int8)(unsafe.Pointer(z))) == '"' || int32(*(*int8)(unsafe.Pointer(z))) == '\'' { 2368 var delim int32 = int32(*(*int8)(unsafe.Pointer(z))) 2369 for n = 1; *(*int8)(unsafe.Pointer(z + uintptr(n))) != 0; n++ { 2370 if int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == '\n' { 2371 *(*int32)(unsafe.Pointer(pnLine))++ 2372 } 2373 if int32(*(*int8)(unsafe.Pointer(z + uintptr(n)))) == delim { 2374 n++ 2375 if int32(*(*int8)(unsafe.Pointer(z + uintptr(n+1)))) != delim { 2376 break 2377 } 2378 } 2379 } 2380 } else { 2381 var c int32 2382 for n = 1; libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(z + uintptr(n))))) != 0 && !(__sbistype(tls, int32(uint8(c)), uint32(X_CTYPE_S)) != 0) && c != '"' && c != '\'' && c != ';'; n++ { 2383 } 2384 } 2385 return n 2386 } 2387 2388 func extractToken(tls *libc.TLS, zIn uintptr, nIn int32, zOut uintptr, nOut int32) int32 { 2389 var i int32 2390 if nIn <= 0 { 2391 *(*int8)(unsafe.Pointer(zOut)) = int8(0) 2392 return 0 2393 } 2394 for i = 0; i < nIn && i < nOut-1 && !(__sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(zIn + uintptr(i))))), uint32(X_CTYPE_S)) != 0); i++ { 2395 *(*int8)(unsafe.Pointer(zOut + uintptr(i))) = *(*int8)(unsafe.Pointer(zIn + uintptr(i))) 2396 } 2397 *(*int8)(unsafe.Pointer(zOut + uintptr(i))) = int8(0) 2398 return i 2399 } 2400 2401 func findEnd(tls *libc.TLS, z uintptr, pnLine uintptr) int32 { 2402 var n int32 = 0 2403 for *(*int8)(unsafe.Pointer(z + uintptr(n))) != 0 && (libc.Xstrncmp(tls, z+uintptr(n), ts+896, uint32(5)) != 0 || !(__sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(n+5))))), uint32(X_CTYPE_S)) != 0)) { 2404 n = n + tokenLength(tls, z+uintptr(n), pnLine) 2405 } 2406 return n 2407 } 2408 2409 func findEndif(tls *libc.TLS, z uintptr, stopAtElse int32, pnLine uintptr) int32 { 2410 var n int32 = 0 2411 for *(*int8)(unsafe.Pointer(z + uintptr(n))) != 0 { 2412 var len int32 = tokenLength(tls, z+uintptr(n), pnLine) 2413 if libc.Xstrncmp(tls, z+uintptr(n), ts+902, uint32(7)) == 0 && __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(n+7))))), uint32(X_CTYPE_S)) != 0 || 2414 stopAtElse != 0 && libc.Xstrncmp(tls, z+uintptr(n), ts+910, uint32(6)) == 0 && __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(n+6))))), uint32(X_CTYPE_S)) != 0 { 2415 return n + len 2416 } 2417 if libc.Xstrncmp(tls, z+uintptr(n), ts+917, uint32(4)) == 0 && __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(z + uintptr(n+4))))), uint32(X_CTYPE_S)) != 0 { 2418 var skip int32 = findEndif(tls, z+uintptr(n)+uintptr(len), 0, pnLine) 2419 n = n + (skip + len) 2420 } else { 2421 n = n + len 2422 } 2423 } 2424 return n 2425 } 2426 2427 func waitForClient(tls *libc.TLS, iClient int32, iTimeout int32, zErrPrefix uintptr) { 2428 bp := tls.Alloc(32) 2429 defer tls.Free(32) 2430 2431 var pStmt uintptr 2432 var rc int32 2433 if iClient > 0 { 2434 pStmt = prepareSql(tls, 2435 ts+922, 2436 libc.VaList(bp, iClient)) 2437 } else { 2438 pStmt = prepareSql(tls, 2439 ts+1018, 0) 2440 } 2441 g.iTimeout = 0 2442 for (libc.AssignInt32(&rc, sqlite3.Xsqlite3_step(tls, pStmt)) == SQLITE_BUSY || rc == SQLITE_ROW) && 2443 iTimeout > 0 { 2444 sqlite3.Xsqlite3_reset(tls, pStmt) 2445 sqlite3.Xsqlite3_sleep(tls, 50) 2446 iTimeout = iTimeout - 50 2447 } 2448 sqlite3.Xsqlite3_finalize(tls, pStmt) 2449 g.iTimeout = DEFAULT_TIMEOUT 2450 if rc != SQLITE_DONE { 2451 if zErrPrefix == uintptr(0) { 2452 zErrPrefix = ts + 1099 2453 } 2454 if iClient > 0 { 2455 errorMessage(tls, ts+1100, libc.VaList(bp+8, zErrPrefix, iClient)) 2456 } else { 2457 errorMessage(tls, ts+1132, libc.VaList(bp+24, zErrPrefix)) 2458 } 2459 } 2460 } 2461 2462 func filenameTail(tls *libc.TLS, z uintptr) uintptr { 2463 var i int32 2464 var j int32 2465 for i = libc.AssignInt32(&j, 0); *(*int8)(unsafe.Pointer(z + uintptr(i))) != 0; i++ { 2466 if int32(*(*int8)(unsafe.Pointer(z + uintptr(i)))) == '/' { 2467 j = i + 1 2468 } 2469 } 2470 return z + uintptr(j) 2471 } 2472 2473 func booleanValue(tls *libc.TLS, zArg uintptr) int32 { 2474 bp := tls.Alloc(8) 2475 defer tls.Free(8) 2476 2477 var i int32 2478 if zArg == uintptr(0) { 2479 return 0 2480 } 2481 for i = 0; int32(*(*int8)(unsafe.Pointer(zArg + uintptr(i)))) >= '0' && int32(*(*int8)(unsafe.Pointer(zArg + uintptr(i)))) <= '9'; i++ { 2482 } 2483 if i > 0 && int32(*(*int8)(unsafe.Pointer(zArg + uintptr(i)))) == 0 { 2484 return libc.Xatoi(tls, zArg) 2485 } 2486 if sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1166) == 0 || sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1169) == 0 { 2487 return 1 2488 } 2489 if sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1173) == 0 || sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1177) == 0 { 2490 return 0 2491 } 2492 errorMessage(tls, ts+1180, libc.VaList(bp, zArg)) 2493 return 0 2494 } 2495 2496 func test_breakpoint(tls *libc.TLS) { 2497 atomic.AddInt32(&cnt, 1) 2498 } 2499 2500 var cnt int32 = 0 2501 2502 func runScript(tls *libc.TLS, iClient int32, taskId int32, zScript uintptr, zFilename uintptr) { 2503 bp := tls.Alloc(1606) 2504 defer tls.Free(1606) 2505 2506 *(*int32)(unsafe.Pointer(bp + 372)) = 1 2507 var prevLine int32 = 1 2508 var ii int32 = 0 2509 var iBegin int32 = 0 2510 var n int32 2511 var c int32 2512 var j int32 2513 var len int32 2514 var nArg int32 2515 2516 libc.Xmemset(tls, bp+360, 0, uint32(unsafe.Sizeof(String{}))) 2517 stringReset(tls, bp+360) 2518 for libc.AssignInt32(&c, int32(*(*int8)(unsafe.Pointer(zScript + uintptr(ii))))) != 0 { 2519 prevLine = *(*int32)(unsafe.Pointer(bp + 372)) 2520 len = tokenLength(tls, zScript+uintptr(ii), bp+372) 2521 if __sbistype(tls, int32(uint8(c)), uint32(X_CTYPE_S)) != 0 || c == '/' && int32(*(*int8)(unsafe.Pointer(zScript + uintptr(ii+1)))) == '*' { 2522 ii = ii + len 2523 continue 2524 } 2525 if c != '-' || int32(*(*int8)(unsafe.Pointer(zScript + uintptr(ii+1)))) != '-' || !(__sbistype(tls, int32(*(*int8)(unsafe.Pointer(zScript + uintptr(ii+2)))), uint32(X_CTYPE_A)) != 0) { 2526 ii = ii + len 2527 continue 2528 } 2529 2530 if ii > iBegin { 2531 var zSql uintptr = sqlite3.Xsqlite3_mprintf(tls, ts+1202, libc.VaList(bp, ii-iBegin, zScript+uintptr(iBegin))) 2532 evalSql(tls, bp+360, zSql, 0) 2533 sqlite3.Xsqlite3_free(tls, zSql) 2534 iBegin = ii + len 2535 } 2536 2537 if g.iTrace >= 2 { 2538 logMessage(tls, ts+1202, libc.VaList(bp+16, len, zScript+uintptr(ii))) 2539 } 2540 n = extractToken(tls, zScript+uintptr(ii)+uintptr(2), len-2, bp+376, int32(unsafe.Sizeof([30]int8{}))) 2541 for nArg = 0; n < len-2 && nArg < MX_ARG; nArg++ { 2542 for n < len-2 && __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(zScript + uintptr(ii+2+n))))), uint32(X_CTYPE_S)) != 0 { 2543 n++ 2544 } 2545 if n >= len-2 { 2546 break 2547 } 2548 n = n + extractToken(tls, zScript+uintptr(ii)+uintptr(2)+uintptr(n), len-2-n, 2549 bp+406+uintptr(nArg)*100, int32(unsafe.Sizeof([100]int8{}))) 2550 } 2551 for j = nArg; j < MX_ARG; j++ { 2552 *(*int8)(unsafe.Pointer(bp + 406 + uintptr(libc.PostIncInt32(&j, 1))*100)) = int8(0) 2553 } 2554 2555 if libc.Xstrcmp(tls, bp+376, ts+1207) == 0 { 2556 sqlite3.Xsqlite3_sleep(tls, libc.Xatoi(tls, bp+406)) 2557 } else if libc.Xstrcmp(tls, bp+376, ts+1213) == 0 { 2558 var rc int32 = libc.Xatoi(tls, bp+406) 2559 finishScript(tls, iClient, taskId, 1) 2560 if rc == 0 { 2561 sqlite3.Xsqlite3_close(tls, g.db) 2562 } 2563 libc.Xexit(tls, rc) 2564 } else if libc.Xstrcmp(tls, bp+376, ts+1218) == 0 { 2565 if g.iTrace == 1 { 2566 logMessage(tls, ts+1202, libc.VaList(bp+32, len-1, zScript+uintptr(ii))) 2567 } 2568 stringReset(tls, bp+360) 2569 } else if libc.Xstrcmp(tls, bp+376, ts+1227) == 0 && iClient > 0 { 2570 finishScript(tls, iClient, taskId, 1) 2571 } else if libc.Xstrcmp(tls, bp+376, ts+1234) == 0 { 2572 stringReset(tls, bp+360) 2573 } else if libc.Xstrcmp(tls, bp+376, ts+1240) == 0 { 2574 var jj int32 2575 var zAns uintptr = zScript + uintptr(ii) 2576 for jj = 7; jj < len-1 && __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(zAns + uintptr(jj))))), uint32(X_CTYPE_S)) != 0; jj++ { 2577 } 2578 zAns += uintptr(jj) 2579 if len-jj-1 != (*String)(unsafe.Pointer(bp+360)).n || libc.Xstrncmp(tls, (*String)(unsafe.Pointer(bp+360)).z, zAns, uint32(len-jj-1)) != 0 { 2580 errorMessage(tls, ts+1246, 2581 libc.VaList(bp+48, prevLine, zFilename, len-jj-1, zAns, (*String)(unsafe.Pointer(bp+360)).z)) 2582 } 2583 g.nTest++ 2584 stringReset(tls, bp+360) 2585 } else if libc.Xstrcmp(tls, bp+376, ts+1291) == 0 || libc.Xstrcmp(tls, bp+376, ts+1296) == 0 { 2586 var jj int32 2587 var zAns uintptr = zScript + uintptr(ii) 2588 var zCopy uintptr 2589 var isGlob int32 = libc.Bool32(int32(*(*int8)(unsafe.Pointer(bp + 376))) == 'g') 2590 for jj = 9 - 3*isGlob; jj < len-1 && __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(zAns + uintptr(jj))))), uint32(X_CTYPE_S)) != 0; jj++ { 2591 } 2592 zAns += uintptr(jj) 2593 zCopy = sqlite3.Xsqlite3_mprintf(tls, ts+1202, libc.VaList(bp+88, len-jj-1, zAns)) 2594 if libc.Bool32(sqlite3.Xsqlite3_strglob(tls, zCopy, (*String)(unsafe.Pointer(bp+360)).z) == 0)^isGlob != 0 { 2595 errorMessage(tls, ts+1304, 2596 libc.VaList(bp+104, prevLine, zFilename, zCopy, (*String)(unsafe.Pointer(bp+360)).z)) 2597 } 2598 sqlite3.Xsqlite3_free(tls, zCopy) 2599 g.nTest++ 2600 stringReset(tls, bp+360) 2601 } else if libc.Xstrcmp(tls, bp+376, ts+1347) == 0 { 2602 logMessage(tls, ts+438, libc.VaList(bp+136, (*String)(unsafe.Pointer(bp+360)).z)) 2603 } else if libc.Xstrcmp(tls, bp+376, ts+1354) == 0 { 2604 var zNewFile uintptr 2605 var zNewScript uintptr 2606 var zToDel uintptr = uintptr(0) 2607 zNewFile = bp + 406 2608 if !(int32(*(*int8)(unsafe.Pointer(zNewFile))) == '/') { 2609 var k int32 2610 for k = int32(libc.Xstrlen(tls, zFilename)) - 1; k >= 0 && !(int32(*(*int8)(unsafe.Pointer(zFilename + uintptr(k)))) == '/'); k-- { 2611 } 2612 if k > 0 { 2613 zNewFile = libc.AssignUintptr(&zToDel, sqlite3.Xsqlite3_mprintf(tls, ts+1361, libc.VaList(bp+144, k, zFilename, zNewFile))) 2614 } 2615 } 2616 zNewScript = readFile(tls, zNewFile) 2617 if g.iTrace != 0 { 2618 logMessage(tls, ts+1369, libc.VaList(bp+168, zNewFile)) 2619 } 2620 runScript(tls, 0, 0, zNewScript, zNewFile) 2621 sqlite3.Xsqlite3_free(tls, zNewScript) 2622 if g.iTrace != 0 { 2623 logMessage(tls, ts+1388, libc.VaList(bp+176, zNewFile)) 2624 } 2625 sqlite3.Xsqlite3_free(tls, zToDel) 2626 } else if libc.Xstrcmp(tls, bp+376, ts+1405) == 0 { 2627 var jj int32 2628 for jj = 7; jj < len && __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(zScript + uintptr(ii+jj))))), uint32(X_CTYPE_S)) != 0; jj++ { 2629 } 2630 logMessage(tls, ts+1202, libc.VaList(bp+184, len-jj, zScript+uintptr(ii)+uintptr(jj))) 2631 } else if libc.Xstrcmp(tls, bp+376, ts+1411) == 0 { 2632 var jj int32 2633 var rc int32 2634 var pStmt uintptr 2635 for jj = 4; jj < len && __sbistype(tls, int32(uint8(*(*int8)(unsafe.Pointer(zScript + uintptr(ii+jj))))), uint32(X_CTYPE_S)) != 0; jj++ { 2636 } 2637 pStmt = prepareSql(tls, ts+1414, libc.VaList(bp+200, len-jj, zScript+uintptr(ii)+uintptr(jj))) 2638 rc = sqlite3.Xsqlite3_step(tls, pStmt) 2639 if rc != SQLITE_ROW || sqlite3.Xsqlite3_column_int(tls, pStmt, 0) == 0 { 2640 ii = ii + findEndif(tls, zScript+uintptr(ii)+uintptr(len), 1, bp+372) 2641 } 2642 sqlite3.Xsqlite3_finalize(tls, pStmt) 2643 } else if libc.Xstrcmp(tls, bp+376, ts+1426) == 0 { 2644 ii = ii + findEndif(tls, zScript+uintptr(ii)+uintptr(len), 0, bp+372) 2645 } else if libc.Xstrcmp(tls, bp+376, ts+1431) == 0 { 2646 } else if libc.Xstrcmp(tls, bp+376, ts+1437) == 0 && iClient == 0 { 2647 var iNewClient int32 = libc.Xatoi(tls, bp+406) 2648 if iNewClient > 0 { 2649 startClient(tls, iNewClient) 2650 } 2651 } else if libc.Xstrcmp(tls, bp+376, ts+1443) == 0 && iClient == 0 { 2652 var iTimeout int32 2653 if nArg >= 2 { 2654 iTimeout = libc.Xatoi(tls, bp+406+1*100) 2655 } else { 2656 iTimeout = 10000 2657 } 2658 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([1000]int8{})), bp+606, ts+1448, 2659 libc.VaList(bp+216, prevLine, zFilename)) 2660 waitForClient(tls, libc.Xatoi(tls, bp+406), iTimeout, bp+606) 2661 } else if libc.Xstrcmp(tls, bp+376, ts+1463) == 0 && iClient == 0 { 2662 var iTarget int32 = libc.Xatoi(tls, bp+406) 2663 var iEnd int32 2664 var zTask uintptr 2665 var zTName uintptr 2666 iEnd = findEnd(tls, zScript+uintptr(ii)+uintptr(len), bp+372) 2667 if iTarget < 0 { 2668 errorMessage(tls, ts+1468, 2669 libc.VaList(bp+232, prevLine, zFilename, iTarget)) 2670 } else { 2671 zTask = sqlite3.Xsqlite3_mprintf(tls, ts+1202, libc.VaList(bp+256, iEnd, zScript+uintptr(ii)+uintptr(len))) 2672 if nArg > 1 { 2673 zTName = sqlite3.Xsqlite3_mprintf(tls, ts+438, libc.VaList(bp+272, bp+406+1*100)) 2674 } else { 2675 zTName = sqlite3.Xsqlite3_mprintf(tls, ts+1505, libc.VaList(bp+280, filenameTail(tls, zFilename), prevLine)) 2676 } 2677 startClient(tls, iTarget) 2678 runSql(tls, 2679 ts+1511, libc.VaList(bp+296, iTarget, zTask, zTName)) 2680 sqlite3.Xsqlite3_free(tls, zTask) 2681 sqlite3.Xsqlite3_free(tls, zTName) 2682 } 2683 iEnd = iEnd + tokenLength(tls, zScript+uintptr(ii)+uintptr(len)+uintptr(iEnd), bp+372) 2684 len = len + iEnd 2685 iBegin = ii + len 2686 } else if libc.Xstrcmp(tls, bp+376, ts+1567) == 0 { 2687 test_breakpoint(tls) 2688 } else if libc.Xstrcmp(tls, bp+376, ts+1578) == 0 { 2689 g.bIgnoreSqlErrors = func() int32 { 2690 if nArg >= 1 { 2691 return libc.BoolInt32(!(booleanValue(tls, bp+406) != 0)) 2692 } 2693 return 1 2694 }() 2695 } else { 2696 errorMessage(tls, ts+1594, 2697 libc.VaList(bp+320, prevLine, zFilename, bp+376)) 2698 } 2699 ii = ii + len 2700 } 2701 if iBegin < ii { 2702 var zSql uintptr = sqlite3.Xsqlite3_mprintf(tls, ts+1202, libc.VaList(bp+344, ii-iBegin, zScript+uintptr(iBegin))) 2703 runSql(tls, zSql, 0) 2704 sqlite3.Xsqlite3_free(tls, zSql) 2705 } 2706 stringFree(tls, bp+360) 2707 } 2708 2709 func findOption(tls *libc.TLS, azArg uintptr, pnArg uintptr, zOption uintptr, hasArg int32) uintptr { 2710 bp := tls.Alloc(8) 2711 defer tls.Free(8) 2712 2713 var i int32 2714 var j int32 2715 var zReturn uintptr = uintptr(0) 2716 var nArg int32 = *(*int32)(unsafe.Pointer(pnArg)) 2717 2718 for i = 0; i < nArg; i++ { 2719 var z uintptr 2720 if i+hasArg >= nArg { 2721 break 2722 } 2723 z = *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)) 2724 if int32(*(*int8)(unsafe.Pointer(z))) != '-' { 2725 continue 2726 } 2727 z++ 2728 if int32(*(*int8)(unsafe.Pointer(z))) == '-' { 2729 if int32(*(*int8)(unsafe.Pointer(z + 1))) == 0 { 2730 break 2731 } 2732 z++ 2733 } 2734 if libc.Xstrcmp(tls, z, zOption) == 0 { 2735 if hasArg != 0 && i == nArg-1 { 2736 fatalError(tls, ts+1630, libc.VaList(bp, z)) 2737 } 2738 if hasArg != 0 { 2739 zReturn = *(*uintptr)(unsafe.Pointer(azArg + uintptr(i+1)*4)) 2740 } else { 2741 zReturn = *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)) 2742 } 2743 j = i + 1 + libc.Bool32(hasArg != 0) 2744 for j < nArg { 2745 *(*uintptr)(unsafe.Pointer(azArg + uintptr(libc.PostIncInt32(&i, 1))*4)) = *(*uintptr)(unsafe.Pointer(azArg + uintptr(libc.PostIncInt32(&j, 1))*4)) 2746 } 2747 *(*int32)(unsafe.Pointer(pnArg)) = i 2748 return zReturn 2749 } 2750 } 2751 return zReturn 2752 } 2753 2754 func usage(tls *libc.TLS, argv0 uintptr) { 2755 bp := tls.Alloc(8) 2756 defer tls.Free(8) 2757 2758 var i int32 2759 var zTail uintptr = argv0 2760 for i = 0; *(*int8)(unsafe.Pointer(argv0 + uintptr(i))) != 0; i++ { 2761 if int32(*(*int8)(unsafe.Pointer(argv0 + uintptr(i)))) == '/' { 2762 zTail = argv0 + uintptr(i) + uintptr(1) 2763 } 2764 } 2765 libc.Xfprintf(tls, libc.X__stderrp, ts+1678, libc.VaList(bp, zTail)) 2766 libc.Xfprintf(tls, libc.X__stderrp, 2767 ts+1717, 0) 2768 libc.Xexit(tls, 1) 2769 } 2770 2771 func unrecognizedArguments(tls *libc.TLS, argv0 uintptr, nArg int32, azArg uintptr) { 2772 bp := tls.Alloc(16) 2773 defer tls.Free(16) 2774 2775 var i int32 2776 libc.Xfprintf(tls, libc.X__stderrp, ts+2289, libc.VaList(bp, argv0)) 2777 for i = 0; i < nArg; i++ { 2778 libc.Xfprintf(tls, libc.X__stderrp, ts+2317, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)))) 2779 } 2780 libc.Xfprintf(tls, libc.X__stderrp, ts+2321, 0) 2781 libc.Xexit(tls, 1) 2782 } 2783 2784 func main1(tls *libc.TLS, argc int32, argv uintptr) int32 { 2785 bp := tls.Alloc(248) 2786 defer tls.Free(248) 2787 2788 var zClient uintptr 2789 var iClient int32 2790 2791 var i int32 2792 var openFlags int32 = SQLITE_OPEN_READWRITE 2793 var rc int32 2794 2795 var zTrace uintptr 2796 var zCOption uintptr 2797 var zJMode uintptr 2798 var zNRep uintptr 2799 var nRep int32 = 1 2800 var iRep int32 2801 var iTmout int32 = 0 2802 var zTmout uintptr 2803 2804 g.argv0 = *(*uintptr)(unsafe.Pointer(argv)) 2805 g.iTrace = 1 2806 if argc < 2 { 2807 usage(tls, *(*uintptr)(unsafe.Pointer(argv))) 2808 } 2809 g.zDbFile = *(*uintptr)(unsafe.Pointer(argv + 1*4)) 2810 if strglob(tls, ts+2323, g.zDbFile) != 0 { 2811 usage(tls, *(*uintptr)(unsafe.Pointer(argv))) 2812 } 2813 if libc.Xstrcmp(tls, sqlite3.Xsqlite3_sourceid(tls), ts+2330) != 0 { 2814 libc.Xfprintf(tls, libc.X__stderrp, 2815 ts+2415, 2816 libc.VaList(bp, sqlite3.Xsqlite3_sourceid(tls), ts+2330)) 2817 libc.Xexit(tls, 1) 2818 } 2819 *(*int32)(unsafe.Pointer(bp + 232)) = argc - 2 2820 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([32]int8{})), uintptr(unsafe.Pointer(&g))+32, ts+2475, libc.VaList(bp+16, libc.Xgetpid(tls))) 2821 zJMode = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2487, 1) 2822 zNRep = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2499, 1) 2823 if zNRep != 0 { 2824 nRep = libc.Xatoi(tls, zNRep) 2825 } 2826 if nRep < 1 { 2827 nRep = 1 2828 } 2829 g.zVfs = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2506, 1) 2830 zClient = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2510, 1) 2831 g.zErrLog = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2517, 1) 2832 g.zLog = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2524, 1) 2833 zTrace = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2528, 1) 2834 if zTrace != 0 { 2835 g.iTrace = libc.Xatoi(tls, zTrace) 2836 } 2837 if findOption(tls, argv+uintptr(2)*4, bp+232, ts+2534, 0) != uintptr(0) { 2838 g.iTrace = 0 2839 } 2840 zTmout = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2540, 1) 2841 if zTmout != 0 { 2842 iTmout = libc.Xatoi(tls, zTmout) 2843 } 2844 g.bSqlTrace = libc.Bool32(findOption(tls, argv+uintptr(2)*4, bp+232, ts+2548, 0) != uintptr(0)) 2845 g.bSync = libc.Bool32(findOption(tls, argv+uintptr(2)*4, bp+232, ts+2557, 0) != uintptr(0)) 2846 if g.zErrLog != 0 { 2847 g.pErrLog = libc.Xfopen(tls, g.zErrLog, ts+2562) 2848 } else { 2849 g.pErrLog = libc.X__stderrp 2850 } 2851 if g.zLog != 0 { 2852 g.pLog = libc.Xfopen(tls, g.zLog, ts+2562) 2853 } else { 2854 g.pLog = libc.X__stdoutp 2855 } 2856 2857 sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_LOG, libc.VaList(bp+24, *(*uintptr)(unsafe.Pointer(&struct { 2858 f func(*libc.TLS, uintptr, int32, uintptr) 2859 }{sqlErrorCallback})), 0)) 2860 if zClient != 0 { 2861 iClient = libc.Xatoi(tls, zClient) 2862 if iClient < 1 { 2863 fatalError(tls, ts+2564, libc.VaList(bp+40, iClient)) 2864 } 2865 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([32]int8{})), uintptr(unsafe.Pointer(&g))+32, ts+2591, 2866 libc.VaList(bp+48, libc.Xgetpid(tls), iClient)) 2867 } else { 2868 var nTry int32 = 0 2869 if g.iTrace > 0 { 2870 libc.Xprintf(tls, ts+2607, libc.VaList(bp+64, *(*uintptr)(unsafe.Pointer(argv)))) 2871 for i = 1; i < argc; i++ { 2872 libc.Xprintf(tls, ts+2317, libc.VaList(bp+72, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4)))) 2873 } 2874 libc.Xprintf(tls, ts+2321, 0) 2875 libc.Xprintf(tls, ts+2617, 0) 2876 for i = 0; libc.AssignUintptr(&zCOption, sqlite3.Xsqlite3_compileoption_get(tls, i)) != uintptr(0); i++ { 2877 libc.Xprintf(tls, ts+2722, libc.VaList(bp+80, zCOption)) 2878 } 2879 libc.Xfflush(tls, libc.X__stdoutp) 2880 } 2881 iClient = 0 2882 for __ccgo := true; __ccgo; __ccgo = rc != 0 && libc.PreIncInt32(&nTry, 1) < 60 && sqlite3.Xsqlite3_sleep(tls, 1000) > 0 { 2883 if nTry%5 == 4 { 2884 libc.Xprintf(tls, ts+2735, 2885 libc.VaList(bp+88, func() uintptr { 2886 if nTry > 5 { 2887 return ts + 2764 2888 } 2889 return ts + 1099 2890 }(), g.zDbFile)) 2891 } 2892 rc = libc.Xunlink(tls, g.zDbFile) 2893 if rc != 0 && *(*int32)(unsafe.Pointer(libc.X__error(tls))) == ENOENT { 2894 rc = 0 2895 } 2896 } 2897 if rc != 0 { 2898 fatalError(tls, ts+2771, 2899 libc.VaList(bp+104, g.zDbFile, nTry)) 2900 } 2901 openFlags = openFlags | SQLITE_OPEN_CREATE 2902 } 2903 rc = sqlite3.Xsqlite3_open_v2(tls, g.zDbFile, uintptr(unsafe.Pointer(&g))+12, openFlags, g.zVfs) 2904 if rc != 0 { 2905 fatalError(tls, ts+2812, libc.VaList(bp+120, g.zDbFile)) 2906 } 2907 if iTmout > 0 { 2908 sqlite3.Xsqlite3_busy_timeout(tls, g.db, iTmout) 2909 } 2910 2911 if zJMode != 0 { 2912 runSql(tls, ts+2829, libc.VaList(bp+128, zJMode)) 2913 } 2914 if !(g.bSync != 0) { 2915 trySql(tls, ts+2853, 0) 2916 } 2917 sqlite3.Xsqlite3_enable_load_extension(tls, g.db, 1) 2918 sqlite3.Xsqlite3_busy_handler(tls, g.db, *(*uintptr)(unsafe.Pointer(&struct { 2919 f func(*libc.TLS, uintptr, int32) int32 2920 }{busyHandler})), uintptr(0)) 2921 sqlite3.Xsqlite3_create_function(tls, g.db, ts+2876, 0, SQLITE_UTF8, uintptr(0), 2922 *(*uintptr)(unsafe.Pointer(&struct { 2923 f func(*libc.TLS, uintptr, int32, uintptr) 2924 }{vfsNameFunc})), uintptr(0), uintptr(0)) 2925 sqlite3.Xsqlite3_create_function(tls, g.db, ts+2884, 1, SQLITE_UTF8, uintptr(0), 2926 *(*uintptr)(unsafe.Pointer(&struct { 2927 f func(*libc.TLS, uintptr, int32, uintptr) 2928 }{evalFunc})), uintptr(0), uintptr(0)) 2929 g.iTimeout = DEFAULT_TIMEOUT 2930 if g.bSqlTrace != 0 { 2931 sqlite3.Xsqlite3_trace(tls, g.db, *(*uintptr)(unsafe.Pointer(&struct { 2932 f func(*libc.TLS, uintptr, uintptr) 2933 }{sqlTraceCallback})), uintptr(0)) 2934 } 2935 if iClient > 0 { 2936 if *(*int32)(unsafe.Pointer(bp + 232)) > 0 { 2937 unrecognizedArguments(tls, *(*uintptr)(unsafe.Pointer(argv)), *(*int32)(unsafe.Pointer(bp + 232)), argv+uintptr(2)*4) 2938 } 2939 if g.iTrace != 0 { 2940 logMessage(tls, ts+2889, 0) 2941 } 2942 for 1 != 0 { 2943 *(*uintptr)(unsafe.Pointer(bp + 244)) = uintptr(0) 2944 rc = startScript(tls, iClient, bp+236, bp+240, bp+244) 2945 if rc == SQLITE_DONE { 2946 break 2947 } 2948 if g.iTrace != 0 { 2949 logMessage(tls, ts+2902, libc.VaList(bp+136, *(*uintptr)(unsafe.Pointer(bp + 244)), *(*int32)(unsafe.Pointer(bp + 240)))) 2950 } 2951 runScript(tls, iClient, *(*int32)(unsafe.Pointer(bp + 240)), *(*uintptr)(unsafe.Pointer(bp + 236)), *(*uintptr)(unsafe.Pointer(bp + 244))) 2952 if g.iTrace != 0 { 2953 logMessage(tls, ts+2916, libc.VaList(bp+152, *(*uintptr)(unsafe.Pointer(bp + 244)), *(*int32)(unsafe.Pointer(bp + 240)))) 2954 } 2955 finishScript(tls, iClient, *(*int32)(unsafe.Pointer(bp + 240)), 0) 2956 sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 244))) 2957 sqlite3.Xsqlite3_sleep(tls, 10) 2958 } 2959 if g.iTrace != 0 { 2960 logMessage(tls, ts+2928, 0) 2961 } 2962 } else { 2963 var pStmt uintptr 2964 var iTimeout int32 2965 if *(*int32)(unsafe.Pointer(bp + 232)) == 0 { 2966 fatalError(tls, ts+2939, 0) 2967 } 2968 if *(*int32)(unsafe.Pointer(bp + 232)) > 1 { 2969 unrecognizedArguments(tls, *(*uintptr)(unsafe.Pointer(argv)), *(*int32)(unsafe.Pointer(bp + 232)), argv+uintptr(2)*4) 2970 } 2971 runSql(tls, 2972 ts+2963, 0) 2973 *(*uintptr)(unsafe.Pointer(bp + 236)) = readFile(tls, *(*uintptr)(unsafe.Pointer(argv + 2*4))) 2974 for iRep = 1; iRep <= nRep; iRep++ { 2975 if g.iTrace != 0 { 2976 logMessage(tls, ts+3399, libc.VaList(bp+168, *(*uintptr)(unsafe.Pointer(argv + 2*4)), iRep)) 2977 } 2978 runScript(tls, 0, 0, *(*uintptr)(unsafe.Pointer(bp + 236)), *(*uintptr)(unsafe.Pointer(argv + 2*4))) 2979 if g.iTrace != 0 { 2980 logMessage(tls, ts+3427, libc.VaList(bp+184, *(*uintptr)(unsafe.Pointer(argv + 2*4)), iRep)) 2981 } 2982 } 2983 sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 236))) 2984 waitForClient(tls, 0, 2000, ts+3453) 2985 trySql(tls, ts+3473, 0) 2986 sqlite3.Xsqlite3_sleep(tls, 10) 2987 g.iTimeout = 0 2988 iTimeout = 1000 2989 for (libc.AssignInt32(&rc, trySql(tls, ts+3502, 0)) == SQLITE_BUSY || 2990 rc == SQLITE_ROW) && iTimeout > 0 { 2991 sqlite3.Xsqlite3_sleep(tls, 10) 2992 iTimeout = iTimeout - 10 2993 } 2994 sqlite3.Xsqlite3_sleep(tls, 100) 2995 pStmt = prepareSql(tls, ts+3523, 0) 2996 iTimeout = 1000 2997 for libc.AssignInt32(&rc, sqlite3.Xsqlite3_step(tls, pStmt)) == SQLITE_BUSY && iTimeout > 0 { 2998 sqlite3.Xsqlite3_sleep(tls, 10) 2999 iTimeout = iTimeout - 10 3000 } 3001 if rc == SQLITE_ROW { 3002 *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 80)) += sqlite3.Xsqlite3_column_int(tls, pStmt, 0) 3003 *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 84)) += sqlite3.Xsqlite3_column_int(tls, pStmt, 1) 3004 } 3005 sqlite3.Xsqlite3_finalize(tls, pStmt) 3006 } 3007 sqlite3.Xsqlite3_close(tls, g.db) 3008 maybeClose(tls, g.pLog) 3009 maybeClose(tls, g.pErrLog) 3010 if iClient == 0 { 3011 libc.Xprintf(tls, ts+3558, libc.VaList(bp+200, g.nError, g.nTest)) 3012 libc.Xprintf(tls, ts+3594, libc.VaList(bp+216, *(*uintptr)(unsafe.Pointer(argv)))) 3013 for i = 1; i < argc; i++ { 3014 libc.Xprintf(tls, ts+2317, libc.VaList(bp+224, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4)))) 3015 } 3016 libc.Xprintf(tls, ts+2321, 0) 3017 } 3018 return libc.Bool32(g.nError > 0) 3019 } 3020 3021 var ts1 = "%s%.*s\n\x00%s:ERROR: \x00%s:FATAL: \x00UPDATE client SET wantHalt=1;\x00%s: \x00main\x00timeout after %dms\x00[%.*s]\x00(info) %s\x00(errcode=%d) %s\x00%s\n%s\n\x00out of memory\x00 \x00nil\x00'\x00error(%d)\x00BEGIN IMMEDIATE\x00in startScript: %s\x00UPDATE counters SET nError=nError+%d, nTest=nTest+%d\x00SELECT 1 FROM client WHERE id=%d AND wantHalt\x00DELETE FROM client WHERE id=%d\x00COMMIT TRANSACTION;\x00SELECT script, id, name FROM task WHERE client=%d AND starttime IS NULL ORDER BY id LIMIT 1\x00%s\x00UPDATE task SET starttime=strftime('%%Y-%%m-%%d %%H:%%M:%%f','now') WHERE id=%d;\x00Waited over 30 seconds with no work. Giving up.\x00DELETE FROM client WHERE id=%d; COMMIT;\x00COMMIT\x00UPDATE task SET endtime=strftime('%%Y-%%m-%%d %%H:%%M:%%f','now') WHERE id=%d;\x00INSERT OR IGNORE INTO client VALUES(%d,0)\x00%s \"%s\" --client %d --trace %d\x00%z --sqltrace\x00%z --sync\x00%z --vfs \"%s\"\x00system('%q')\x00%z &\x00system() fails with error code %d\x00rb\x00cannot open \"%s\" for reading\x00--end\x00--endif\x00--else\x00--if\x00SELECT 1 FROM task WHERE client=%d AND client IN (SELECT id FROM client) AND endtime IS NULL\x00SELECT 1 FROM task WHERE client IN (SELECT id FROM client) AND endtime IS NULL\x00\x00%stimeout waiting for client %d\x00%stimeout waiting for all clients\x00on\x00yes\x00off\x00no\x00unknown boolean: [%s]\x00%.*s\x00sleep\x00exit\x00testcase\x00finish\x00reset\x00match\x00line %d of %s:\nExpected [%.*s]\n Got [%s]\x00glob\x00notglob\x00line %d of %s:\nExpected [%s]\n Got [%s]\x00output\x00source\x00%.*s/%s\x00begin script [%s]\n\x00end script [%s]\n\x00print\x00if\x00SELECT %.*s\x00else\x00endif\x00start\x00wait\x00line %d of %s\n\x00task\x00line %d of %s: bad client number: %d\x00%s:%d\x00INSERT INTO task(client,script,name) VALUES(%d,'%q',%Q)\x00breakpoint\x00show-sql-errors\x00line %d of %s: unknown command --%s\x00command-line option \"--%s\" requires an argument\x00Usage: %s DATABASE ?OPTIONS? ?SCRIPT?\n\x00Options:\n --errlog FILENAME Write errors to FILENAME\n --journalmode MODE Use MODE as the journal_mode\n --log FILENAME Log messages to FILENAME\n --quiet Suppress unnecessary output\n --vfs NAME Use NAME as the VFS\n --repeat N Repeat the test N times\n --sqltrace Enable SQL tracing\n --sync Enable synchronous disk writes\n --timeout MILLISEC Busy timeout is MILLISEC\n --trace BOOLEAN Enable or disable tracing\n\x00%s: unrecognized arguments:\x00 %s\x00\n\x00*.test\x002022-09-05 11:02:23 4635f4a69c8c2a8df242b384a992aea71224e39a2ccab42d8c0b0602f1e826e8\x00SQLite library and header mismatch\nLibrary: %s\nHeader: %s\n\x00%05d.mptest\x00journalmode\x00repeat\x00vfs\x00client\x00errlog\x00log\x00trace\x00quiet\x00timeout\x00sqltrace\x00sync\x00a\x00illegal client number: %d\n\x00%05d.client%02d\x00BEGIN: %s\x00With SQLite 3.39.3 2022-09-05 11:02:23 4635f4a69c8c2a8df242b384a992aea71224e39a2ccab42d8c0b0602f1e826e8\n\x00-DSQLITE_%s\n\x00... %strying to unlink '%s'\n\x00still \x00unable to unlink '%s' after %d attempts\n\x00cannot open [%s]\x00PRAGMA journal_mode=%Q;\x00PRAGMA synchronous=OFF\x00vfsname\x00eval\x00start-client\x00begin %s (%d)\x00end %s (%d)\x00end-client\x00missing script filename\x00DROP TABLE IF EXISTS task;\nDROP TABLE IF EXISTS counters;\nDROP TABLE IF EXISTS client;\nCREATE TABLE task(\n id INTEGER PRIMARY KEY,\n name TEXT,\n client INTEGER,\n starttime DATE,\n endtime DATE,\n script TEXT\n);CREATE INDEX task_i1 ON task(client, starttime);\nCREATE INDEX task_i2 ON task(client, endtime);\nCREATE TABLE counters(nError,nTest);\nINSERT INTO counters VALUES(0,0);\nCREATE TABLE client(id INTEGER PRIMARY KEY, wantHalt);\n\x00begin script [%s] cycle %d\n\x00end script [%s] cycle %d\n\x00during shutdown...\n\x00UPDATE client SET wantHalt=1\x00SELECT 1 FROM client\x00SELECT nError, nTest FROM counters\x00Summary: %d errors out of %d tests\n\x00END: %s\x00" 3022 var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data