gitlab.com/CoiaPrant/sqlite3@v1.19.1/internal/mptest/main_freebsd_arm.go (about) 1 // Code generated by 'ccgo -export-defines "" -ignore-unsupported-alignment -o internal/mptest/main_freebsd_arm.go -trace-translation-units testdata/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 = 1000000 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__TYPES_H_ = 0 771 X_MKDTEMP_DECLARED = 0 772 X_MKNOD_DECLARED = 0 773 X_MKSTEMP_DECLARED = 0 774 X_MKTEMP_DECLARED = 0 775 X_MMAP_DECLARED = 0 776 X_MODE_T_DECLARED = 0 777 X_MQD_T_DECLARED = 0 778 X_NLINK_T_DECLARED = 0 779 X_Nonnull = 0 780 X_Null_unspecified = 0 781 X_Nullable = 0 782 X_OFF64_T_DECLARED = 0 783 X_OFF_T_DECLARED = 0 784 X_OPTRESET_DECLARED = 0 785 X_PC_ACL_EXTENDED = 59 786 X_PC_ACL_NFS4 = 64 787 X_PC_ACL_PATH_MAX = 60 788 X_PC_ALLOC_SIZE_MIN = 10 789 X_PC_ASYNC_IO = 53 790 X_PC_CAP_PRESENT = 61 791 X_PC_CHOWN_RESTRICTED = 7 792 X_PC_FILESIZEBITS = 12 793 X_PC_INF_PRESENT = 62 794 X_PC_LINK_MAX = 1 795 X_PC_MAC_PRESENT = 63 796 X_PC_MAX_CANON = 2 797 X_PC_MAX_INPUT = 3 798 X_PC_MIN_HOLE_SIZE = 21 799 X_PC_NAME_MAX = 4 800 X_PC_NO_TRUNC = 8 801 X_PC_PATH_MAX = 5 802 X_PC_PIPE_BUF = 6 803 X_PC_PRIO_IO = 54 804 X_PC_REC_INCR_XFER_SIZE = 14 805 X_PC_REC_MAX_XFER_SIZE = 15 806 X_PC_REC_MIN_XFER_SIZE = 16 807 X_PC_REC_XFER_ALIGN = 17 808 X_PC_SYMLINK_MAX = 18 809 X_PC_SYNC_IO = 55 810 X_PC_VDISABLE = 9 811 X_PDP_ENDIAN = 3412 812 X_PID_T_DECLARED = 0 813 X_POSIX2_CHAR_TERM = 1 814 X_POSIX2_C_BIND = 200112 815 X_POSIX2_C_DEV = -1 816 X_POSIX2_FORT_DEV = -1 817 X_POSIX2_FORT_RUN = 200112 818 X_POSIX2_LOCALEDEF = -1 819 X_POSIX2_PBS = -1 820 X_POSIX2_PBS_ACCOUNTING = -1 821 X_POSIX2_PBS_CHECKPOINT = -1 822 X_POSIX2_PBS_LOCATE = -1 823 X_POSIX2_PBS_MESSAGE = -1 824 X_POSIX2_PBS_TRACK = -1 825 X_POSIX2_SW_DEV = -1 826 X_POSIX2_UPE = 200112 827 X_POSIX2_VERSION = 199212 828 X_POSIX_ADVISORY_INFO = 200112 829 X_POSIX_ASYNCHRONOUS_IO = 200112 830 X_POSIX_BARRIERS = 200112 831 X_POSIX_CHOWN_RESTRICTED = 1 832 X_POSIX_CLOCK_SELECTION = -1 833 X_POSIX_CPUTIME = 200112 834 X_POSIX_FSYNC = 200112 835 X_POSIX_IPV6 = 0 836 X_POSIX_JOB_CONTROL = 1 837 X_POSIX_MAPPED_FILES = 200112 838 X_POSIX_MEMLOCK = -1 839 X_POSIX_MEMLOCK_RANGE = 200112 840 X_POSIX_MEMORY_PROTECTION = 200112 841 X_POSIX_MESSAGE_PASSING = 200112 842 X_POSIX_MONOTONIC_CLOCK = 200112 843 X_POSIX_NO_TRUNC = 1 844 X_POSIX_PRIORITIZED_IO = -1 845 X_POSIX_PRIORITY_SCHEDULING = 0 846 X_POSIX_RAW_SOCKETS = 200112 847 X_POSIX_READER_WRITER_LOCKS = 200112 848 X_POSIX_REALTIME_SIGNALS = 200112 849 X_POSIX_REGEXP = 1 850 X_POSIX_SEMAPHORES = 200112 851 X_POSIX_SHARED_MEMORY_OBJECTS = 200112 852 X_POSIX_SHELL = 1 853 X_POSIX_SPAWN = 200112 854 X_POSIX_SPIN_LOCKS = 200112 855 X_POSIX_SPORADIC_SERVER = -1 856 X_POSIX_SYNCHRONIZED_IO = -1 857 X_POSIX_THREADS = 200112 858 X_POSIX_THREAD_ATTR_STACKADDR = 200112 859 X_POSIX_THREAD_ATTR_STACKSIZE = 200112 860 X_POSIX_THREAD_CPUTIME = 200112 861 X_POSIX_THREAD_PRIORITY_SCHEDULING = 200112 862 X_POSIX_THREAD_PRIO_INHERIT = 200112 863 X_POSIX_THREAD_PRIO_PROTECT = 200112 864 X_POSIX_THREAD_PROCESS_SHARED = 200112 865 X_POSIX_THREAD_SAFE_FUNCTIONS = -1 866 X_POSIX_THREAD_SPORADIC_SERVER = -1 867 X_POSIX_TIMEOUTS = 200112 868 X_POSIX_TIMERS = 200112 869 X_POSIX_TRACE = -1 870 X_POSIX_TRACE_EVENT_FILTER = -1 871 X_POSIX_TRACE_INHERIT = -1 872 X_POSIX_TRACE_LOG = -1 873 X_POSIX_TYPED_MEMORY_OBJECTS = -1 874 X_POSIX_VDISABLE = 0xff 875 X_POSIX_VERSION = 200112 876 X_PTHREAD_T_DECLARED = 0 877 X_QUAD_HIGHWORD = 1 878 X_QUAD_LOWWORD = 0 879 X_RLIM_T_DECLARED = 0 880 X_RSIZE_T_DEFINED = 0 881 X_RUNETYPE_H_ = 0 882 X_RUNE_MAGIC_1 = "RuneMagi" 883 X_RUNE_T_DECLARED = 0 884 X_SC_2_CHAR_TERM = 20 885 X_SC_2_C_BIND = 18 886 X_SC_2_C_DEV = 19 887 X_SC_2_FORT_DEV = 21 888 X_SC_2_FORT_RUN = 22 889 X_SC_2_LOCALEDEF = 23 890 X_SC_2_PBS = 59 891 X_SC_2_PBS_ACCOUNTING = 60 892 X_SC_2_PBS_CHECKPOINT = 61 893 X_SC_2_PBS_LOCATE = 62 894 X_SC_2_PBS_MESSAGE = 63 895 X_SC_2_PBS_TRACK = 64 896 X_SC_2_SW_DEV = 24 897 X_SC_2_UPE = 25 898 X_SC_2_VERSION = 17 899 X_SC_ADVISORY_INFO = 65 900 X_SC_AIO_LISTIO_MAX = 42 901 X_SC_AIO_MAX = 43 902 X_SC_AIO_PRIO_DELTA_MAX = 44 903 X_SC_ARG_MAX = 1 904 X_SC_ASYNCHRONOUS_IO = 28 905 X_SC_ATEXIT_MAX = 107 906 X_SC_BARRIERS = 66 907 X_SC_BC_BASE_MAX = 9 908 X_SC_BC_DIM_MAX = 10 909 X_SC_BC_SCALE_MAX = 11 910 X_SC_BC_STRING_MAX = 12 911 X_SC_CHILD_MAX = 2 912 X_SC_CLK_TCK = 3 913 X_SC_CLOCK_SELECTION = 67 914 X_SC_COLL_WEIGHTS_MAX = 13 915 X_SC_CPUSET_SIZE = 122 916 X_SC_CPUTIME = 68 917 X_SC_DELAYTIMER_MAX = 45 918 X_SC_EXPR_NEST_MAX = 14 919 X_SC_FILE_LOCKING = 69 920 X_SC_FSYNC = 38 921 X_SC_GETGR_R_SIZE_MAX = 70 922 X_SC_GETPW_R_SIZE_MAX = 71 923 X_SC_HOST_NAME_MAX = 72 924 X_SC_IOV_MAX = 56 925 X_SC_IPV6 = 118 926 X_SC_JOB_CONTROL = 6 927 X_SC_LINE_MAX = 15 928 X_SC_LOGIN_NAME_MAX = 73 929 X_SC_MAPPED_FILES = 29 930 X_SC_MEMLOCK = 30 931 X_SC_MEMLOCK_RANGE = 31 932 X_SC_MEMORY_PROTECTION = 32 933 X_SC_MESSAGE_PASSING = 33 934 X_SC_MONOTONIC_CLOCK = 74 935 X_SC_MQ_OPEN_MAX = 46 936 X_SC_MQ_PRIO_MAX = 75 937 X_SC_NGROUPS_MAX = 4 938 X_SC_NPROCESSORS_CONF = 57 939 X_SC_NPROCESSORS_ONLN = 58 940 X_SC_OPEN_MAX = 5 941 X_SC_PAGESIZE = 47 942 X_SC_PAGE_SIZE = 47 943 X_SC_PHYS_PAGES = 121 944 X_SC_PRIORITIZED_IO = 34 945 X_SC_PRIORITY_SCHEDULING = 35 946 X_SC_RAW_SOCKETS = 119 947 X_SC_READER_WRITER_LOCKS = 76 948 X_SC_REALTIME_SIGNALS = 36 949 X_SC_REGEXP = 77 950 X_SC_RE_DUP_MAX = 16 951 X_SC_RTSIG_MAX = 48 952 X_SC_SAVED_IDS = 7 953 X_SC_SEMAPHORES = 37 954 X_SC_SEM_NSEMS_MAX = 49 955 X_SC_SEM_VALUE_MAX = 50 956 X_SC_SHARED_MEMORY_OBJECTS = 39 957 X_SC_SHELL = 78 958 X_SC_SIGQUEUE_MAX = 51 959 X_SC_SPAWN = 79 960 X_SC_SPIN_LOCKS = 80 961 X_SC_SPORADIC_SERVER = 81 962 X_SC_STREAM_MAX = 26 963 X_SC_SYMLOOP_MAX = 120 964 X_SC_SYNCHRONIZED_IO = 40 965 X_SC_THREADS = 96 966 X_SC_THREAD_ATTR_STACKADDR = 82 967 X_SC_THREAD_ATTR_STACKSIZE = 83 968 X_SC_THREAD_CPUTIME = 84 969 X_SC_THREAD_DESTRUCTOR_ITERATIONS = 85 970 X_SC_THREAD_KEYS_MAX = 86 971 X_SC_THREAD_PRIORITY_SCHEDULING = 89 972 X_SC_THREAD_PRIO_INHERIT = 87 973 X_SC_THREAD_PRIO_PROTECT = 88 974 X_SC_THREAD_PROCESS_SHARED = 90 975 X_SC_THREAD_SAFE_FUNCTIONS = 91 976 X_SC_THREAD_SPORADIC_SERVER = 92 977 X_SC_THREAD_STACK_MIN = 93 978 X_SC_THREAD_THREADS_MAX = 94 979 X_SC_TIMEOUTS = 95 980 X_SC_TIMERS = 41 981 X_SC_TIMER_MAX = 52 982 X_SC_TRACE = 97 983 X_SC_TRACE_EVENT_FILTER = 98 984 X_SC_TRACE_INHERIT = 99 985 X_SC_TRACE_LOG = 100 986 X_SC_TTY_NAME_MAX = 101 987 X_SC_TYPED_MEMORY_OBJECTS = 102 988 X_SC_TZNAME_MAX = 27 989 X_SC_V6_ILP32_OFF32 = 103 990 X_SC_V6_ILP32_OFFBIG = 104 991 X_SC_V6_LP64_OFF64 = 105 992 X_SC_V6_LPBIG_OFFBIG = 106 993 X_SC_VERSION = 8 994 X_SC_XOPEN_CRYPT = 108 995 X_SC_XOPEN_ENH_I18N = 109 996 X_SC_XOPEN_LEGACY = 110 997 X_SC_XOPEN_REALTIME = 111 998 X_SC_XOPEN_REALTIME_THREADS = 112 999 X_SC_XOPEN_SHM = 113 1000 X_SC_XOPEN_STREAMS = 114 1001 X_SC_XOPEN_UNIX = 115 1002 X_SC_XOPEN_VERSION = 116 1003 X_SC_XOPEN_XCU_VERSION = 117 1004 X_SELECT_DECLARED = 0 1005 X_SIGSET_T_DECLARED = 0 1006 X_SIG_MAXSIG = 128 1007 X_SIG_WORDS = 4 1008 X_SIZE_T_DECLARED = 0 1009 X_SQLITE3RTREE_H_ = 0 1010 X_SSIZE_T_DECLARED = 0 1011 X_STDFILE_DECLARED = 0 1012 X_STDIO_H_ = 0 1013 X_STDLIB_H_ = 0 1014 X_STDSTREAM_DECLARED = 0 1015 X_STRINGS_H_ = 0 1016 X_STRING_H_ = 0 1017 X_SUSECONDS_T_DECLARED = 0 1018 X_SWAB_DECLARED = 0 1019 X_SYS_CDEFS_H_ = 0 1020 X_SYS_ERRNO_H_ = 0 1021 X_SYS_SELECT_H_ = 0 1022 X_SYS_TIMESPEC_H_ = 0 1023 X_SYS_TYPES_H_ = 0 1024 X_SYS_UNISTD_H_ = 0 1025 X_SYS__ENDIAN_H_ = 0 1026 X_SYS__PTHREADTYPES_H_ = 0 1027 X_SYS__SIGSET_H_ = 0 1028 X_SYS__STDARG_H_ = 0 1029 X_SYS__STDINT_H_ = 0 1030 X_SYS__TIMESPEC_H_ = 0 1031 X_SYS__TIMEVAL_H_ = 0 1032 X_SYS__TYPES_H_ = 0 1033 X_TIMER_T_DECLARED = 0 1034 X_TIME_T_DECLARED = 0 1035 X_TRUNCATE_DECLARED = 0 1036 X_UID_T_DECLARED = 0 1037 X_UINT16_T_DECLARED = 0 1038 X_UINT32_T_DECLARED = 0 1039 X_UINT64_T_DECLARED = 0 1040 X_UINT8_T_DECLARED = 0 1041 X_UINTMAX_T_DECLARED = 0 1042 X_UINTPTR_T_DECLARED = 0 1043 X_UNISTD_H_ = 0 1044 X_USECONDS_T_DECLARED = 0 1045 X_V6_ILP32_OFF32 = -1 1046 X_V6_ILP32_OFFBIG = 0 1047 X_V6_LP64_OFF64 = 0 1048 X_V6_LPBIG_OFFBIG = -1 1049 X_VA_LIST_DECLARED = 0 1050 X_WCHAR_T_DECLARED = 0 1051 X_XLOCALE_CTYPE_H = 0 1052 X_XLOCALE_RUN_FUNCTIONS_DEFINED = 1 1053 X_XLOCALE_STRING1_H = 0 1054 X_XLOCALE_STRINGS1_H = 0 1055 X_XOPEN_CRYPT = -1 1056 X_XOPEN_ENH_I18N = -1 1057 X_XOPEN_LEGACY = -1 1058 X_XOPEN_REALTIME = -1 1059 X_XOPEN_REALTIME_THREADS = -1 1060 X_XOPEN_SHM = 1 1061 X_XOPEN_STREAMS = -1 1062 X_XOPEN_UNIX = -1 1063 Unix = 1 1064 ) 1065 1066 type ptrdiff_t = int32 1067 1068 type size_t = uint32 1069 1070 type wchar_t = uint32 1071 1072 type va_list = uintptr 1073 1074 type sqlite_int64 = int64 1075 type sqlite_uint64 = uint64 1076 type sqlite3_int64 = sqlite_int64 1077 type sqlite3_uint64 = sqlite_uint64 1078 1079 type sqlite3_callback = uintptr 1080 1081 type sqlite3_file1 = struct{ pMethods uintptr } 1082 1083 type sqlite3_file = sqlite3_file1 1084 type sqlite3_io_methods1 = struct { 1085 iVersion int32 1086 xClose uintptr 1087 xRead uintptr 1088 xWrite uintptr 1089 xTruncate uintptr 1090 xSync uintptr 1091 xFileSize uintptr 1092 xLock uintptr 1093 xUnlock uintptr 1094 xCheckReservedLock uintptr 1095 xFileControl uintptr 1096 xSectorSize uintptr 1097 xDeviceCharacteristics uintptr 1098 xShmMap uintptr 1099 xShmLock uintptr 1100 xShmBarrier uintptr 1101 xShmUnmap uintptr 1102 xFetch uintptr 1103 xUnfetch uintptr 1104 } 1105 1106 type sqlite3_io_methods = sqlite3_io_methods1 1107 1108 type sqlite3_vfs1 = struct { 1109 iVersion int32 1110 szOsFile int32 1111 mxPathname int32 1112 pNext uintptr 1113 zName uintptr 1114 pAppData uintptr 1115 xOpen uintptr 1116 xDelete uintptr 1117 xAccess uintptr 1118 xFullPathname uintptr 1119 xDlOpen uintptr 1120 xDlError uintptr 1121 xDlSym uintptr 1122 xDlClose uintptr 1123 xRandomness uintptr 1124 xSleep uintptr 1125 xCurrentTime uintptr 1126 xGetLastError uintptr 1127 xCurrentTimeInt64 uintptr 1128 xSetSystemCall uintptr 1129 xGetSystemCall uintptr 1130 xNextSystemCall uintptr 1131 } 1132 1133 type sqlite3_vfs = sqlite3_vfs1 1134 type sqlite3_syscall_ptr = uintptr 1135 1136 type sqlite3_mem_methods1 = struct { 1137 xMalloc uintptr 1138 xFree uintptr 1139 xRealloc uintptr 1140 xSize uintptr 1141 xRoundup uintptr 1142 xInit uintptr 1143 xShutdown uintptr 1144 pAppData uintptr 1145 } 1146 1147 type sqlite3_mem_methods = sqlite3_mem_methods1 1148 1149 type sqlite3_destructor_type = uintptr 1150 1151 type sqlite3_vtab1 = struct { 1152 pModule uintptr 1153 nRef int32 1154 zErrMsg uintptr 1155 } 1156 1157 type sqlite3_vtab = sqlite3_vtab1 1158 type sqlite3_index_info1 = struct { 1159 nConstraint int32 1160 aConstraint uintptr 1161 nOrderBy int32 1162 aOrderBy uintptr 1163 aConstraintUsage uintptr 1164 idxNum int32 1165 idxStr uintptr 1166 needToFreeIdxStr int32 1167 orderByConsumed int32 1168 _ [4]byte 1169 estimatedCost float64 1170 estimatedRows sqlite3_int64 1171 idxFlags int32 1172 _ [4]byte 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 _ [4]byte 1315 } 1316 1317 type sqlite3_rtree_query_info = sqlite3_rtree_query_info1 1318 1319 type sqlite3_rtree_dbl = float64 1320 1321 type Fts5ExtensionApi1 = struct { 1322 iVersion int32 1323 xUserData uintptr 1324 xColumnCount uintptr 1325 xRowCount uintptr 1326 xColumnTotalSize uintptr 1327 xTokenize uintptr 1328 xPhraseCount uintptr 1329 xPhraseSize uintptr 1330 xInstCount uintptr 1331 xInst uintptr 1332 xRowid uintptr 1333 xColumnText uintptr 1334 xColumnSize uintptr 1335 xQueryPhrase uintptr 1336 xSetAuxdata uintptr 1337 xGetAuxdata uintptr 1338 xPhraseFirst uintptr 1339 xPhraseNext uintptr 1340 xPhraseFirstColumn uintptr 1341 xPhraseNextColumn uintptr 1342 } 1343 1344 type Fts5ExtensionApi = Fts5ExtensionApi1 1345 type Fts5PhraseIter1 = struct { 1346 a uintptr 1347 b uintptr 1348 } 1349 1350 type Fts5PhraseIter = Fts5PhraseIter1 1351 1352 type fts5_extension_function = uintptr 1353 type fts5_tokenizer1 = struct { 1354 xCreate uintptr 1355 xDelete uintptr 1356 xTokenize uintptr 1357 } 1358 1359 type fts5_tokenizer = fts5_tokenizer1 1360 1361 type fts5_api1 = struct { 1362 iVersion int32 1363 xCreateTokenizer uintptr 1364 xFindTokenizer uintptr 1365 xCreateFunction uintptr 1366 } 1367 1368 type fts5_api = fts5_api1 1369 1370 type fpos_t = int64 1371 1372 type rsize_t = size_t 1373 1374 type off_t = int64 1375 type ssize_t = int32 1376 1377 type off64_t = int64 1378 1379 type __sbuf = struct { 1380 _base uintptr 1381 _size int32 1382 } 1383 1384 type __sFILE = struct { 1385 _p uintptr 1386 _r int32 1387 _w int32 1388 _flags int16 1389 _file int16 1390 _bf struct { 1391 _base uintptr 1392 _size int32 1393 } 1394 _lbfsize int32 1395 _cookie uintptr 1396 _close uintptr 1397 _read uintptr 1398 _seek uintptr 1399 _write uintptr 1400 _ub struct { 1401 _base uintptr 1402 _size int32 1403 } 1404 _up uintptr 1405 _ur int32 1406 _ubuf [3]uint8 1407 _nbuf [1]uint8 1408 _lb struct { 1409 _base uintptr 1410 _size int32 1411 } 1412 _blksize int32 1413 _offset fpos_t 1414 _fl_mutex uintptr 1415 _fl_owner uintptr 1416 _fl_count int32 1417 _orientation int32 1418 _mbstate struct { 1419 _ [0]uint64 1420 __mbstate8 [128]uint8 1421 } 1422 _flags2 int32 1423 _ [4]byte 1424 } 1425 1426 type FILE = __sFILE 1427 type cookie_io_functions_t = struct { 1428 read uintptr 1429 write uintptr 1430 seek uintptr 1431 close uintptr 1432 } 1433 type pthread_once = struct { 1434 state int32 1435 mutex pthread_mutex_t 1436 } 1437 1438 type pthread_t = uintptr 1439 type pthread_attr_t = uintptr 1440 type pthread_mutex_t = uintptr 1441 type pthread_mutexattr_t = uintptr 1442 type pthread_cond_t = uintptr 1443 type pthread_condattr_t = uintptr 1444 type pthread_key_t = int32 1445 type pthread_once_t = pthread_once 1446 type pthread_rwlock_t = uintptr 1447 type pthread_rwlockattr_t = uintptr 1448 type pthread_barrier_t = uintptr 1449 type pthread_barrierattr_t = uintptr 1450 type pthread_spinlock_t = uintptr 1451 1452 type pthread_addr_t = uintptr 1453 type pthread_startroutine_t = uintptr 1454 1455 type u_char = uint8 1456 type u_short = uint16 1457 type u_int = uint32 1458 type u_long = uint32 1459 type ushort = uint16 1460 type uint = uint32 1461 1462 type int8_t = int8 1463 1464 type int16_t = int16 1465 1466 type int32_t = int32 1467 1468 type int64_t = int64 1469 1470 type uint8_t = uint8 1471 1472 type uint16_t = uint16 1473 1474 type uint32_t = uint32 1475 1476 type uint64_t = uint64 1477 1478 type intptr_t = int32 1479 type uintptr_t = uint32 1480 type intmax_t = int64 1481 type uintmax_t = uint64 1482 1483 type u_int8_t = uint8 1484 type u_int16_t = uint16 1485 type u_int32_t = uint32 1486 type u_int64_t = uint64 1487 1488 type u_quad_t = uint64 1489 type quad_t = int64 1490 type qaddr_t = uintptr 1491 1492 type caddr_t = uintptr 1493 type c_caddr_t = uintptr 1494 1495 type blksize_t = int32 1496 1497 type cpuwhich_t = int32 1498 type cpulevel_t = int32 1499 type cpusetid_t = int32 1500 1501 type blkcnt_t = int64 1502 1503 type clock_t = uint32 1504 1505 type clockid_t = int32 1506 1507 type critical_t = int32 1508 type daddr_t = int64 1509 1510 type dev_t = uint64 1511 1512 type fflags_t = uint32 1513 1514 type fixpt_t = uint32 1515 1516 type fsblkcnt_t = uint64 1517 type fsfilcnt_t = uint64 1518 1519 type gid_t = uint32 1520 1521 type in_addr_t = uint32 1522 1523 type in_port_t = uint16 1524 1525 type id_t = int64 1526 1527 type ino_t = uint64 1528 1529 type key_t = int32 1530 1531 type lwpid_t = int32 1532 1533 type mode_t = uint16 1534 1535 type accmode_t = int32 1536 1537 type nlink_t = uint64 1538 1539 type pid_t = int32 1540 1541 type register_t = int32 1542 1543 type rlim_t = int64 1544 1545 type sbintime_t = int64 1546 1547 type segsz_t = int32 1548 1549 type suseconds_t = int32 1550 1551 type time_t = int64 1552 1553 type timer_t = uintptr 1554 1555 type mqd_t = uintptr 1556 1557 type u_register_t = uint32 1558 1559 type uid_t = uint32 1560 1561 type useconds_t = uint32 1562 1563 type cap_ioctl_t = uint32 1564 1565 type kpaddr_t = uint64 1566 type kvaddr_t = uint64 1567 type ksize_t = uint64 1568 type kssize_t = int64 1569 1570 type vm_offset_t = uint32 1571 type vm_ooffset_t = uint64 1572 type vm_paddr_t = uint32 1573 type vm_pindex_t = uint64 1574 type vm_size_t = uint32 1575 1576 type rman_res_t = uint64 1577 1578 func __bitcount32(tls *libc.TLS, _x uint32) uint32 { 1579 _x = _x&uint32(0x55555555) + _x&0xaaaaaaaa>>1 1580 _x = _x&uint32(0x33333333) + _x&0xcccccccc>>2 1581 _x = (_x + _x>>4) & uint32(0x0f0f0f0f) 1582 _x = _x + _x>>8 1583 _x = (_x + _x>>16) & uint32(0x000000ff) 1584 return _x 1585 } 1586 1587 type __sigset = struct{ __bits [4]uint32 } 1588 1589 type timeval = struct { 1590 tv_sec time_t 1591 tv_usec suseconds_t 1592 _ [4]byte 1593 } 1594 1595 type timespec = struct { 1596 tv_sec time_t 1597 tv_nsec int32 1598 _ [4]byte 1599 } 1600 1601 type itimerspec = struct { 1602 it_interval struct { 1603 tv_sec time_t 1604 tv_nsec int32 1605 _ [4]byte 1606 } 1607 it_value struct { 1608 tv_sec time_t 1609 tv_nsec int32 1610 _ [4]byte 1611 } 1612 } 1613 1614 type fd_mask = uint32 1615 1616 type sigset_t = __sigset 1617 1618 type fd_set1 = struct{ __fds_bits [32]uint32 } 1619 1620 type fd_set = fd_set1 1621 1622 type crypt_data = struct { 1623 initialized int32 1624 __buf [256]uint8 1625 } 1626 1627 type errno_t = int32 1628 1629 type rune_t = int32 1630 1631 type div_t = struct { 1632 quot int32 1633 rem int32 1634 } 1635 1636 type ldiv_t = struct { 1637 quot int32 1638 rem int32 1639 } 1640 1641 type lldiv_t = struct { 1642 quot int64 1643 rem int64 1644 } 1645 1646 type constraint_handler_t = uintptr 1647 1648 type locale_t = uintptr 1649 1650 type _RuneEntry = struct { 1651 __min int32 1652 __max int32 1653 __map int32 1654 __types uintptr 1655 } 1656 1657 type _RuneRange = struct { 1658 __nranges int32 1659 __ranges uintptr 1660 } 1661 1662 type _RuneLocale = struct { 1663 __magic [8]uint8 1664 __encoding [32]uint8 1665 __sgetrune uintptr 1666 __sputrune uintptr 1667 __invalid_rune int32 1668 __runetype [256]uint32 1669 __maplower [256]int32 1670 __mapupper [256]int32 1671 __runetype_ext _RuneRange 1672 __maplower_ext _RuneRange 1673 __mapupper_ext _RuneRange 1674 __variable uintptr 1675 __variable_len int32 1676 } 1677 1678 func __getCurrentRuneLocale(tls *libc.TLS) uintptr { 1679 if libc.X_ThreadRuneLocale != 0 { 1680 return libc.X_ThreadRuneLocale 1681 } 1682 return libc.X_CurrentRuneLocale 1683 } 1684 1685 func __maskrune(tls *libc.TLS, _c int32, _f uint32) int32 { 1686 return int32(func() uint32 { 1687 if _c < 0 || _c >= int32(1)<<8 { 1688 return libc.X___runetype(tls, _c) 1689 } 1690 return *(*uint32)(unsafe.Pointer(__getCurrentRuneLocale(tls) + 52 + uintptr(_c)*4)) 1691 }() & _f) 1692 } 1693 1694 func __sbmaskrune(tls *libc.TLS, _c int32, _f uint32) int32 { 1695 if _c < 0 || _c >= libc.X__mb_sb_limit { 1696 return 0 1697 } 1698 return int32(*(*uint32)(unsafe.Pointer(__getCurrentRuneLocale(tls) + 52 + uintptr(_c)*4)) & _f) 1699 } 1700 1701 func __sbistype(tls *libc.TLS, _c int32, _f uint32) int32 { 1702 return libc.BoolInt32(!!(__sbmaskrune(tls, _c, _f) != 0)) 1703 } 1704 1705 func __sbmaskrune_l(tls *libc.TLS, __c int32, __f uint32, __loc locale_t) int32 { 1706 bp := tls.Alloc(4) 1707 defer tls.Free(4) 1708 1709 var runes uintptr = libc.X__runes_for_locale(tls, __loc, bp) 1710 if __c < 0 || __c >= *(*int32)(unsafe.Pointer(bp)) { 1711 return 0 1712 } 1713 return int32(*(*uint32)(unsafe.Pointer(runes + 52 + uintptr(__c)*4)) & __f) 1714 } 1715 1716 func __sbistype_l(tls *libc.TLS, __c int32, __f uint32, __loc locale_t) int32 { 1717 return libc.BoolInt32(!!(__sbmaskrune_l(tls, __c, __f, __loc) != 0)) 1718 } 1719 1720 type Global = struct { 1721 argv0 uintptr 1722 zVfs uintptr 1723 zDbFile uintptr 1724 db uintptr 1725 zErrLog uintptr 1726 pErrLog uintptr 1727 zLog uintptr 1728 pLog uintptr 1729 zName [32]uint8 1730 taskId int32 1731 iTrace int32 1732 bSqlTrace int32 1733 bIgnoreSqlErrors int32 1734 nError int32 1735 nTest int32 1736 iTimeout int32 1737 bSync int32 1738 } 1739 1740 var g Global 1741 1742 func printWithPrefix(tls *libc.TLS, pOut uintptr, zPrefix uintptr, zMsg uintptr) { 1743 bp := tls.Alloc(24) 1744 defer tls.Free(24) 1745 1746 for zMsg != 0 && *(*uint8)(unsafe.Pointer(zMsg)) != 0 { 1747 var i int32 1748 for i = 0; *(*uint8)(unsafe.Pointer(zMsg + uintptr(i))) != 0 && int32(*(*uint8)(unsafe.Pointer(zMsg + uintptr(i)))) != '\n' && int32(*(*uint8)(unsafe.Pointer(zMsg + uintptr(i)))) != '\r'; i++ { 1749 } 1750 libc.Xfprintf(tls, pOut, ts, libc.VaList(bp, zPrefix, i, zMsg)) 1751 zMsg += uintptr(i) 1752 for int32(*(*uint8)(unsafe.Pointer(zMsg))) == '\n' || int32(*(*uint8)(unsafe.Pointer(zMsg))) == '\r' { 1753 zMsg++ 1754 } 1755 } 1756 } 1757 1758 func safe_strcmp(tls *libc.TLS, a uintptr, b uintptr) int32 { 1759 if a == b { 1760 return 0 1761 } 1762 if a == uintptr(0) { 1763 return -1 1764 } 1765 if b == uintptr(0) { 1766 return 1 1767 } 1768 return libc.Xstrcmp(tls, a, b) 1769 } 1770 1771 func strglob(tls *libc.TLS, zGlob uintptr, z uintptr) int32 { 1772 var c int32 1773 var c2 int32 1774 var invert int32 1775 var seen int32 1776 1777 for libc.AssignInt32(&c, int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1))))) != 0 { 1778 if c == '*' { 1779 for libc.AssignInt32(&c, int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1))))) == '*' || c == '?' { 1780 if c == '?' && int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1)))) == 0 { 1781 return 0 1782 } 1783 } 1784 if c == 0 { 1785 return 1 1786 } else if c == '[' { 1787 for *(*uint8)(unsafe.Pointer(z)) != 0 && strglob(tls, zGlob-uintptr(1), z) != 0 { 1788 z++ 1789 } 1790 return libc.Bool32(int32(*(*uint8)(unsafe.Pointer(z))) != 0) 1791 } 1792 for libc.AssignInt32(&c2, int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1))))) != 0 { 1793 for c2 != c { 1794 c2 = int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1)))) 1795 if c2 == 0 { 1796 return 0 1797 } 1798 } 1799 if strglob(tls, zGlob, z) != 0 { 1800 return 1 1801 } 1802 } 1803 return 0 1804 } else if c == '?' { 1805 if int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1)))) == 0 { 1806 return 0 1807 } 1808 } else if c == '[' { 1809 var prior_c int32 = 0 1810 seen = 0 1811 invert = 0 1812 c = int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1)))) 1813 if c == 0 { 1814 return 0 1815 } 1816 c2 = int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))) 1817 if c2 == '^' { 1818 invert = 1 1819 c2 = int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))) 1820 } 1821 if c2 == ']' { 1822 if c == ']' { 1823 seen = 1 1824 } 1825 c2 = int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))) 1826 } 1827 for c2 != 0 && c2 != ']' { 1828 if c2 == '-' && int32(*(*uint8)(unsafe.Pointer(zGlob))) != ']' && int32(*(*uint8)(unsafe.Pointer(zGlob))) != 0 && prior_c > 0 { 1829 c2 = int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))) 1830 if c >= prior_c && c <= c2 { 1831 seen = 1 1832 } 1833 prior_c = 0 1834 } else { 1835 if c == c2 { 1836 seen = 1 1837 } 1838 prior_c = c2 1839 } 1840 c2 = int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&zGlob, 1)))) 1841 } 1842 if c2 == 0 || seen^invert == 0 { 1843 return 0 1844 } 1845 } else if c == '#' { 1846 if (int32(*(*uint8)(unsafe.Pointer(z))) == '-' || int32(*(*uint8)(unsafe.Pointer(z))) == '+') && __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(z + 1))), uint32(X_CTYPE_D)) != 0 { 1847 z++ 1848 } 1849 if !(__sbistype(tls, int32(*(*uint8)(unsafe.Pointer(z))), uint32(X_CTYPE_D)) != 0) { 1850 return 0 1851 } 1852 z++ 1853 for __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(z))), uint32(X_CTYPE_D)) != 0 { 1854 z++ 1855 } 1856 } else { 1857 if c != int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&z, 1)))) { 1858 return 0 1859 } 1860 } 1861 } 1862 return libc.Bool32(int32(*(*uint8)(unsafe.Pointer(z))) == 0) 1863 } 1864 1865 func maybeClose(tls *libc.TLS, pOut uintptr) { 1866 if pOut != libc.X__stdoutp && pOut != libc.X__stderrp { 1867 libc.Xfclose(tls, pOut) 1868 } 1869 } 1870 1871 func errorMessage(tls *libc.TLS, zFormat uintptr, va uintptr) { 1872 bp := tls.Alloc(38) 1873 defer tls.Free(38) 1874 1875 var ap va_list 1876 _ = ap 1877 var zMsg uintptr 1878 1879 ap = va 1880 zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 1881 _ = ap 1882 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]uint8{})), bp+8, ts+8, libc.VaList(bp, uintptr(unsafe.Pointer(&g))+32)) 1883 if g.pLog != 0 { 1884 printWithPrefix(tls, g.pLog, bp+8, zMsg) 1885 libc.Xfflush(tls, g.pLog) 1886 } 1887 if g.pErrLog != 0 && safe_strcmp(tls, g.zErrLog, g.zLog) != 0 { 1888 printWithPrefix(tls, g.pErrLog, bp+8, zMsg) 1889 libc.Xfflush(tls, g.pErrLog) 1890 } 1891 sqlite3.Xsqlite3_free(tls, zMsg) 1892 g.nError++ 1893 } 1894 1895 func fatalError(tls *libc.TLS, zFormat uintptr, va uintptr) { 1896 bp := tls.Alloc(38) 1897 defer tls.Free(38) 1898 1899 var ap va_list 1900 _ = ap 1901 var zMsg uintptr 1902 1903 ap = va 1904 zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 1905 _ = ap 1906 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]uint8{})), bp+8, ts+19, libc.VaList(bp, uintptr(unsafe.Pointer(&g))+32)) 1907 if g.pLog != 0 { 1908 printWithPrefix(tls, g.pLog, bp+8, zMsg) 1909 libc.Xfflush(tls, g.pLog) 1910 maybeClose(tls, g.pLog) 1911 } 1912 if g.pErrLog != 0 && safe_strcmp(tls, g.zErrLog, g.zLog) != 0 { 1913 printWithPrefix(tls, g.pErrLog, bp+8, zMsg) 1914 libc.Xfflush(tls, g.pErrLog) 1915 maybeClose(tls, g.pErrLog) 1916 } 1917 sqlite3.Xsqlite3_free(tls, zMsg) 1918 if g.db != 0 { 1919 var nTry int32 = 0 1920 g.iTimeout = 0 1921 for trySql(tls, ts+30, 0) == SQLITE_BUSY && 1922 libc.PostIncInt32(&nTry, 1) < 100 { 1923 sqlite3.Xsqlite3_sleep(tls, 10) 1924 } 1925 } 1926 sqlite3.Xsqlite3_close(tls, g.db) 1927 libc.Xexit(tls, 1) 1928 } 1929 1930 func logMessage(tls *libc.TLS, zFormat uintptr, va uintptr) { 1931 bp := tls.Alloc(38) 1932 defer tls.Free(38) 1933 1934 var ap va_list 1935 _ = ap 1936 var zMsg uintptr 1937 1938 ap = va 1939 zMsg = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 1940 _ = ap 1941 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]uint8{})), bp+8, ts+60, libc.VaList(bp, uintptr(unsafe.Pointer(&g))+32)) 1942 if g.pLog != 0 { 1943 printWithPrefix(tls, g.pLog, bp+8, zMsg) 1944 libc.Xfflush(tls, g.pLog) 1945 } 1946 sqlite3.Xsqlite3_free(tls, zMsg) 1947 } 1948 1949 func clipLength(tls *libc.TLS, z uintptr) int32 { 1950 var n int32 = int32(libc.Xstrlen(tls, z)) 1951 for n > 0 && __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(z + uintptr(n-1)))), uint32(X_CTYPE_S)) != 0 { 1952 n-- 1953 } 1954 return n 1955 } 1956 1957 func vfsNameFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { 1958 bp := tls.Alloc(4) 1959 defer tls.Free(4) 1960 1961 var db uintptr = sqlite3.Xsqlite3_context_db_handle(tls, context) 1962 *(*uintptr)(unsafe.Pointer(bp)) = uintptr(0) 1963 _ = argc 1964 _ = argv 1965 sqlite3.Xsqlite3_file_control(tls, db, ts+65, SQLITE_FCNTL_VFSNAME, bp) 1966 if *(*uintptr)(unsafe.Pointer(bp)) != 0 { 1967 sqlite3.Xsqlite3_result_text(tls, context, *(*uintptr)(unsafe.Pointer(bp)), -1, *(*uintptr)(unsafe.Pointer(&struct{ f func(*libc.TLS, uintptr) }{sqlite3.Xsqlite3_free}))) 1968 } 1969 } 1970 1971 func busyHandler(tls *libc.TLS, pCD uintptr, count int32) int32 { 1972 bp := tls.Alloc(8) 1973 defer tls.Free(8) 1974 1975 _ = pCD 1976 if count*10 > g.iTimeout { 1977 if g.iTimeout > 0 { 1978 errorMessage(tls, ts+70, libc.VaList(bp, g.iTimeout)) 1979 } 1980 return 0 1981 } 1982 sqlite3.Xsqlite3_sleep(tls, 10) 1983 return 1 1984 } 1985 1986 func sqlTraceCallback(tls *libc.TLS, NotUsed1 uintptr, zSql uintptr) { 1987 bp := tls.Alloc(16) 1988 defer tls.Free(16) 1989 1990 _ = NotUsed1 1991 logMessage(tls, ts+89, libc.VaList(bp, clipLength(tls, zSql), zSql)) 1992 } 1993 1994 func sqlErrorCallback(tls *libc.TLS, pArg uintptr, iErrCode int32, zMsg uintptr) { 1995 bp := tls.Alloc(24) 1996 defer tls.Free(24) 1997 1998 _ = pArg 1999 if iErrCode == SQLITE_ERROR && g.bIgnoreSqlErrors != 0 { 2000 return 2001 } 2002 if iErrCode&0xff == SQLITE_SCHEMA && g.iTrace < 3 { 2003 return 2004 } 2005 if g.iTimeout == 0 && iErrCode&0xff == SQLITE_BUSY && g.iTrace < 3 { 2006 return 2007 } 2008 if iErrCode&0xff == SQLITE_NOTICE { 2009 logMessage(tls, ts+96, libc.VaList(bp, zMsg)) 2010 } else { 2011 errorMessage(tls, ts+106, libc.VaList(bp+8, iErrCode, zMsg)) 2012 } 2013 } 2014 2015 func prepareSql(tls *libc.TLS, zFormat uintptr, va uintptr) uintptr { 2016 bp := tls.Alloc(20) 2017 defer tls.Free(20) 2018 2019 var ap va_list 2020 _ = ap 2021 var zSql uintptr 2022 var rc int32 2023 *(*uintptr)(unsafe.Pointer(bp + 16)) = uintptr(0) 2024 ap = va 2025 zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 2026 _ = ap 2027 rc = sqlite3.Xsqlite3_prepare_v2(tls, g.db, zSql, -1, bp+16, uintptr(0)) 2028 if rc != SQLITE_OK { 2029 sqlite3.Xsqlite3_finalize(tls, *(*uintptr)(unsafe.Pointer(bp + 16))) 2030 fatalError(tls, ts+122, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db), zSql)) 2031 } 2032 sqlite3.Xsqlite3_free(tls, zSql) 2033 return *(*uintptr)(unsafe.Pointer(bp + 16)) 2034 } 2035 2036 func runSql(tls *libc.TLS, zFormat uintptr, va uintptr) { 2037 bp := tls.Alloc(16) 2038 defer tls.Free(16) 2039 2040 var ap va_list 2041 _ = ap 2042 var zSql uintptr 2043 var rc int32 2044 ap = va 2045 zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 2046 _ = ap 2047 rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, uintptr(0), uintptr(0), uintptr(0)) 2048 if rc != SQLITE_OK { 2049 fatalError(tls, ts+122, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db), zSql)) 2050 } 2051 sqlite3.Xsqlite3_free(tls, zSql) 2052 } 2053 2054 func trySql(tls *libc.TLS, zFormat uintptr, va uintptr) int32 { 2055 var ap va_list 2056 _ = ap 2057 var zSql uintptr 2058 var rc int32 2059 ap = va 2060 zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 2061 _ = ap 2062 rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, uintptr(0), uintptr(0), uintptr(0)) 2063 sqlite3.Xsqlite3_free(tls, zSql) 2064 return rc 2065 } 2066 2067 type String1 = struct { 2068 z uintptr 2069 n int32 2070 nAlloc int32 2071 } 2072 2073 type String = String1 2074 2075 func stringFree(tls *libc.TLS, p uintptr) { 2076 if (*String)(unsafe.Pointer(p)).z != 0 { 2077 sqlite3.Xsqlite3_free(tls, (*String)(unsafe.Pointer(p)).z) 2078 } 2079 libc.Xmemset(tls, p, 0, uint32(unsafe.Sizeof(String{}))) 2080 } 2081 2082 func stringAppend(tls *libc.TLS, p uintptr, z uintptr, n int32) { 2083 if n < 0 { 2084 n = int32(libc.Xstrlen(tls, z)) 2085 } 2086 if (*String)(unsafe.Pointer(p)).n+n >= (*String)(unsafe.Pointer(p)).nAlloc { 2087 var nAlloc int32 = (*String)(unsafe.Pointer(p)).nAlloc*2 + n + 100 2088 var zNew uintptr = sqlite3.Xsqlite3_realloc(tls, (*String)(unsafe.Pointer(p)).z, nAlloc) 2089 if zNew == uintptr(0) { 2090 fatalError(tls, ts+129, 0) 2091 } 2092 (*String)(unsafe.Pointer(p)).z = zNew 2093 (*String)(unsafe.Pointer(p)).nAlloc = nAlloc 2094 } 2095 libc.Xmemcpy(tls, (*String)(unsafe.Pointer(p)).z+uintptr((*String)(unsafe.Pointer(p)).n), z, uint32(n)) 2096 *(*int32)(unsafe.Pointer(p + 4)) += n 2097 *(*uint8)(unsafe.Pointer((*String)(unsafe.Pointer(p)).z + uintptr((*String)(unsafe.Pointer(p)).n))) = uint8(0) 2098 } 2099 2100 func stringReset(tls *libc.TLS, p uintptr) { 2101 if (*String)(unsafe.Pointer(p)).z == uintptr(0) { 2102 stringAppend(tls, p, ts+143, 1) 2103 } 2104 (*String)(unsafe.Pointer(p)).n = 0 2105 *(*uint8)(unsafe.Pointer((*String)(unsafe.Pointer(p)).z)) = uint8(0) 2106 } 2107 2108 func stringAppendTerm(tls *libc.TLS, p uintptr, z uintptr) { 2109 var i int32 2110 if (*String)(unsafe.Pointer(p)).n != 0 { 2111 stringAppend(tls, p, ts+143, 1) 2112 } 2113 if z == uintptr(0) { 2114 stringAppend(tls, p, ts+145, 3) 2115 return 2116 } 2117 for i = 0; *(*uint8)(unsafe.Pointer(z + uintptr(i))) != 0 && !(__sbistype(tls, int32(*(*uint8)(unsafe.Pointer(z + uintptr(i)))), uint32(X_CTYPE_S)) != 0); i++ { 2118 } 2119 if i > 0 && int32(*(*uint8)(unsafe.Pointer(z + uintptr(i)))) == 0 { 2120 stringAppend(tls, p, z, i) 2121 return 2122 } 2123 stringAppend(tls, p, ts+149, 1) 2124 for *(*uint8)(unsafe.Pointer(z)) != 0 { 2125 for i = 0; *(*uint8)(unsafe.Pointer(z + uintptr(i))) != 0 && int32(*(*uint8)(unsafe.Pointer(z + uintptr(i)))) != '\''; i++ { 2126 } 2127 if *(*uint8)(unsafe.Pointer(z + uintptr(i))) != 0 { 2128 stringAppend(tls, p, z, i+1) 2129 stringAppend(tls, p, ts+149, 1) 2130 z += uintptr(i + 1) 2131 } else { 2132 stringAppend(tls, p, z, i) 2133 break 2134 } 2135 } 2136 stringAppend(tls, p, ts+149, 1) 2137 } 2138 2139 func evalCallback(tls *libc.TLS, pCData uintptr, argc int32, argv uintptr, azCol uintptr) int32 { 2140 var p uintptr = pCData 2141 var i int32 2142 _ = azCol 2143 for i = 0; i < argc; i++ { 2144 stringAppendTerm(tls, p, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4))) 2145 } 2146 return 0 2147 } 2148 2149 func evalSql(tls *libc.TLS, p uintptr, zFormat uintptr, va uintptr) int32 { 2150 bp := tls.Alloc(42) 2151 defer tls.Free(42) 2152 2153 var ap va_list 2154 _ = ap 2155 var zSql uintptr 2156 var rc int32 2157 *(*uintptr)(unsafe.Pointer(bp + 8)) = uintptr(0) 2158 ap = va 2159 zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap) 2160 _ = ap 2161 2162 rc = sqlite3.Xsqlite3_exec(tls, g.db, zSql, *(*uintptr)(unsafe.Pointer(&struct { 2163 f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 2164 }{evalCallback})), p, bp+8) 2165 sqlite3.Xsqlite3_free(tls, zSql) 2166 if rc != 0 { 2167 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([30]uint8{})), bp+12, ts+151, libc.VaList(bp, rc)) 2168 stringAppendTerm(tls, p, bp+12) 2169 if *(*uintptr)(unsafe.Pointer(bp + 8)) != 0 { 2170 stringAppendTerm(tls, p, *(*uintptr)(unsafe.Pointer(bp + 8))) 2171 sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 8))) 2172 } 2173 } 2174 return rc 2175 } 2176 2177 func evalFunc(tls *libc.TLS, context uintptr, argc int32, argv uintptr) { 2178 bp := tls.Alloc(16) 2179 defer tls.Free(16) 2180 2181 var db uintptr = sqlite3.Xsqlite3_context_db_handle(tls, context) 2182 var zSql uintptr = sqlite3.Xsqlite3_value_text(tls, *(*uintptr)(unsafe.Pointer(argv))) 2183 2184 *(*uintptr)(unsafe.Pointer(bp + 12)) = uintptr(0) 2185 var rc int32 2186 _ = argc 2187 libc.Xmemset(tls, bp, 0, uint32(unsafe.Sizeof(String{}))) 2188 rc = sqlite3.Xsqlite3_exec(tls, db, zSql, *(*uintptr)(unsafe.Pointer(&struct { 2189 f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32 2190 }{evalCallback})), bp, bp+12) 2191 if *(*uintptr)(unsafe.Pointer(bp + 12)) != 0 { 2192 sqlite3.Xsqlite3_result_error(tls, context, *(*uintptr)(unsafe.Pointer(bp + 12)), -1) 2193 sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 12))) 2194 } else if rc != 0 { 2195 sqlite3.Xsqlite3_result_error_code(tls, context, rc) 2196 } else { 2197 sqlite3.Xsqlite3_result_text(tls, context, (*String)(unsafe.Pointer(bp)).z, -1, libc.UintptrFromInt32(-1)) 2198 } 2199 stringFree(tls, bp) 2200 } 2201 2202 func startScript(tls *libc.TLS, iClient int32, pzScript uintptr, pTaskId uintptr, pzTaskName uintptr) int32 { 2203 bp := tls.Alloc(80) 2204 defer tls.Free(80) 2205 2206 var pStmt uintptr = uintptr(0) 2207 var taskId int32 2208 var rc int32 2209 var totalTime int32 = 0 2210 2211 *(*uintptr)(unsafe.Pointer(pzScript)) = uintptr(0) 2212 g.iTimeout = 0 2213 for 1 != 0 { 2214 rc = trySql(tls, ts+161, 0) 2215 if rc == SQLITE_BUSY { 2216 sqlite3.Xsqlite3_sleep(tls, 10) 2217 totalTime = totalTime + 10 2218 continue 2219 } 2220 if rc != SQLITE_OK { 2221 fatalError(tls, ts+177, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db))) 2222 } 2223 if g.nError != 0 || g.nTest != 0 { 2224 runSql(tls, ts+196, 2225 libc.VaList(bp+8, g.nError, g.nTest)) 2226 g.nError = 0 2227 g.nTest = 0 2228 } 2229 pStmt = prepareSql(tls, ts+249, libc.VaList(bp+24, iClient)) 2230 rc = sqlite3.Xsqlite3_step(tls, pStmt) 2231 sqlite3.Xsqlite3_finalize(tls, pStmt) 2232 if rc == SQLITE_ROW { 2233 runSql(tls, ts+295, libc.VaList(bp+32, iClient)) 2234 g.iTimeout = DEFAULT_TIMEOUT 2235 runSql(tls, ts+326, 0) 2236 return SQLITE_DONE 2237 } 2238 pStmt = prepareSql(tls, 2239 ts+346, libc.VaList(bp+40, iClient)) 2240 rc = sqlite3.Xsqlite3_step(tls, pStmt) 2241 if rc == SQLITE_ROW { 2242 var n int32 = sqlite3.Xsqlite3_column_bytes(tls, pStmt, 0) 2243 *(*uintptr)(unsafe.Pointer(pzScript)) = sqlite3.Xsqlite3_malloc(tls, n+1) 2244 libc.Xstrcpy(tls, *(*uintptr)(unsafe.Pointer(pzScript)), sqlite3.Xsqlite3_column_text(tls, pStmt, 0)) 2245 *(*int32)(unsafe.Pointer(pTaskId)) = libc.AssignInt32(&taskId, sqlite3.Xsqlite3_column_int(tls, pStmt, 1)) 2246 *(*uintptr)(unsafe.Pointer(pzTaskName)) = sqlite3.Xsqlite3_mprintf(tls, ts+438, libc.VaList(bp+48, sqlite3.Xsqlite3_column_text(tls, pStmt, 2))) 2247 sqlite3.Xsqlite3_finalize(tls, pStmt) 2248 runSql(tls, 2249 ts+441, libc.VaList(bp+56, taskId)) 2250 g.iTimeout = DEFAULT_TIMEOUT 2251 runSql(tls, ts+326, 0) 2252 return SQLITE_OK 2253 } 2254 sqlite3.Xsqlite3_finalize(tls, pStmt) 2255 if rc == SQLITE_DONE { 2256 if totalTime > 3000000 { 2257 errorMessage(tls, ts+524, 0) 2258 runSql(tls, ts+575, libc.VaList(bp+64, iClient)) 2259 sqlite3.Xsqlite3_close(tls, g.db) 2260 libc.Xexit(tls, 1) 2261 } 2262 for trySql(tls, ts+615, 0) == SQLITE_BUSY { 2263 sqlite3.Xsqlite3_sleep(tls, 10) 2264 totalTime = totalTime + 10 2265 } 2266 sqlite3.Xsqlite3_sleep(tls, 100) 2267 totalTime = totalTime + 100 2268 continue 2269 } 2270 fatalError(tls, ts+438, libc.VaList(bp+72, sqlite3.Xsqlite3_errmsg(tls, g.db))) 2271 } 2272 g.iTimeout = DEFAULT_TIMEOUT 2273 return int32(0) 2274 } 2275 2276 func finishScript(tls *libc.TLS, iClient int32, taskId int32, bShutdown int32) int32 { 2277 bp := tls.Alloc(16) 2278 defer tls.Free(16) 2279 2280 runSql(tls, 2281 ts+622, libc.VaList(bp, taskId)) 2282 if bShutdown != 0 { 2283 runSql(tls, ts+295, libc.VaList(bp+8, iClient)) 2284 } 2285 return SQLITE_OK 2286 } 2287 2288 func startClient(tls *libc.TLS, iClient int32) { 2289 bp := tls.Alloc(96) 2290 defer tls.Free(96) 2291 2292 runSql(tls, ts+703, libc.VaList(bp, iClient)) 2293 if sqlite3.Xsqlite3_changes(tls, g.db) != 0 { 2294 var zSys uintptr 2295 var rc int32 2296 zSys = sqlite3.Xsqlite3_mprintf(tls, ts+745, 2297 libc.VaList(bp+8, g.argv0, g.zDbFile, iClient, g.iTrace)) 2298 if g.bSqlTrace != 0 { 2299 zSys = sqlite3.Xsqlite3_mprintf(tls, ts+776, libc.VaList(bp+40, zSys)) 2300 } 2301 if g.bSync != 0 { 2302 zSys = sqlite3.Xsqlite3_mprintf(tls, ts+790, libc.VaList(bp+48, zSys)) 2303 } 2304 if g.zVfs != 0 { 2305 zSys = sqlite3.Xsqlite3_mprintf(tls, ts+800, libc.VaList(bp+56, zSys, g.zVfs)) 2306 } 2307 if g.iTrace >= 2 { 2308 logMessage(tls, ts+814, libc.VaList(bp+72, zSys)) 2309 } 2310 zSys = sqlite3.Xsqlite3_mprintf(tls, ts+827, libc.VaList(bp+80, zSys)) 2311 rc = libc.Xsystem(tls, zSys) 2312 if rc != 0 { 2313 errorMessage(tls, ts+832, libc.VaList(bp+88, rc)) 2314 } 2315 sqlite3.Xsqlite3_free(tls, zSys) 2316 } 2317 } 2318 2319 func readFile(tls *libc.TLS, zFilename uintptr) uintptr { 2320 bp := tls.Alloc(8) 2321 defer tls.Free(8) 2322 2323 var in uintptr = libc.Xfopen(tls, zFilename, ts+866) 2324 var sz int32 2325 var z uintptr 2326 if in == uintptr(0) { 2327 fatalError(tls, ts+869, libc.VaList(bp, zFilename)) 2328 } 2329 libc.Xfseek(tls, in, 0, SEEK_END) 2330 sz = libc.Xftell(tls, in) 2331 libc.Xrewind(tls, in) 2332 z = sqlite3.Xsqlite3_malloc(tls, sz+1) 2333 sz = int32(libc.Xfread(tls, z, uint32(1), uint32(sz), in)) 2334 *(*uint8)(unsafe.Pointer(z + uintptr(sz))) = uint8(0) 2335 libc.Xfclose(tls, in) 2336 return z 2337 } 2338 2339 func tokenLength(tls *libc.TLS, z uintptr, pnLine uintptr) int32 { 2340 var n int32 = 0 2341 if __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(z))), uint32(X_CTYPE_S)) != 0 || int32(*(*uint8)(unsafe.Pointer(z))) == '/' && int32(*(*uint8)(unsafe.Pointer(z + 1))) == '*' { 2342 var inC int32 = 0 2343 var c int32 2344 if int32(*(*uint8)(unsafe.Pointer(z))) == '/' { 2345 inC = 1 2346 n = 2 2347 } 2348 for libc.AssignInt32(&c, int32(*(*uint8)(unsafe.Pointer(z + uintptr(libc.PostIncInt32(&n, 1)))))) != 0 { 2349 if c == '\n' { 2350 *(*int32)(unsafe.Pointer(pnLine))++ 2351 } 2352 if __sbistype(tls, int32(uint8(c)), uint32(X_CTYPE_S)) != 0 { 2353 continue 2354 } 2355 if inC != 0 && c == '*' && int32(*(*uint8)(unsafe.Pointer(z + uintptr(n)))) == '/' { 2356 n++ 2357 inC = 0 2358 } else if !(inC != 0) && c == '/' && int32(*(*uint8)(unsafe.Pointer(z + uintptr(n)))) == '*' { 2359 n++ 2360 inC = 1 2361 } else if !(inC != 0) { 2362 break 2363 } 2364 } 2365 n-- 2366 } else if int32(*(*uint8)(unsafe.Pointer(z))) == '-' && int32(*(*uint8)(unsafe.Pointer(z + 1))) == '-' { 2367 for n = 2; *(*uint8)(unsafe.Pointer(z + uintptr(n))) != 0 && int32(*(*uint8)(unsafe.Pointer(z + uintptr(n)))) != '\n'; n++ { 2368 } 2369 if *(*uint8)(unsafe.Pointer(z + uintptr(n))) != 0 { 2370 *(*int32)(unsafe.Pointer(pnLine))++ 2371 n++ 2372 } 2373 } else if int32(*(*uint8)(unsafe.Pointer(z))) == '"' || int32(*(*uint8)(unsafe.Pointer(z))) == '\'' { 2374 var delim int32 = int32(*(*uint8)(unsafe.Pointer(z))) 2375 for n = 1; *(*uint8)(unsafe.Pointer(z + uintptr(n))) != 0; n++ { 2376 if int32(*(*uint8)(unsafe.Pointer(z + uintptr(n)))) == '\n' { 2377 *(*int32)(unsafe.Pointer(pnLine))++ 2378 } 2379 if int32(*(*uint8)(unsafe.Pointer(z + uintptr(n)))) == delim { 2380 n++ 2381 if int32(*(*uint8)(unsafe.Pointer(z + uintptr(n+1)))) != delim { 2382 break 2383 } 2384 } 2385 } 2386 } else { 2387 var c int32 2388 for n = 1; libc.AssignInt32(&c, int32(*(*uint8)(unsafe.Pointer(z + uintptr(n))))) != 0 && !(__sbistype(tls, int32(uint8(c)), uint32(X_CTYPE_S)) != 0) && c != '"' && c != '\'' && c != ';'; n++ { 2389 } 2390 } 2391 return n 2392 } 2393 2394 func extractToken(tls *libc.TLS, zIn uintptr, nIn int32, zOut uintptr, nOut int32) int32 { 2395 var i int32 2396 if nIn <= 0 { 2397 *(*uint8)(unsafe.Pointer(zOut)) = uint8(0) 2398 return 0 2399 } 2400 for i = 0; i < nIn && i < nOut-1 && !(__sbistype(tls, int32(*(*uint8)(unsafe.Pointer(zIn + uintptr(i)))), uint32(X_CTYPE_S)) != 0); i++ { 2401 *(*uint8)(unsafe.Pointer(zOut + uintptr(i))) = *(*uint8)(unsafe.Pointer(zIn + uintptr(i))) 2402 } 2403 *(*uint8)(unsafe.Pointer(zOut + uintptr(i))) = uint8(0) 2404 return i 2405 } 2406 2407 func findEnd(tls *libc.TLS, z uintptr, pnLine uintptr) int32 { 2408 var n int32 = 0 2409 for *(*uint8)(unsafe.Pointer(z + uintptr(n))) != 0 && (libc.Xstrncmp(tls, z+uintptr(n), ts+898, uint32(5)) != 0 || !(__sbistype(tls, int32(*(*uint8)(unsafe.Pointer(z + uintptr(n+5)))), uint32(X_CTYPE_S)) != 0)) { 2410 n = n + tokenLength(tls, z+uintptr(n), pnLine) 2411 } 2412 return n 2413 } 2414 2415 func findEndif(tls *libc.TLS, z uintptr, stopAtElse int32, pnLine uintptr) int32 { 2416 var n int32 = 0 2417 for *(*uint8)(unsafe.Pointer(z + uintptr(n))) != 0 { 2418 var len int32 = tokenLength(tls, z+uintptr(n), pnLine) 2419 if libc.Xstrncmp(tls, z+uintptr(n), ts+904, uint32(7)) == 0 && __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(z + uintptr(n+7)))), uint32(X_CTYPE_S)) != 0 || 2420 stopAtElse != 0 && libc.Xstrncmp(tls, z+uintptr(n), ts+912, uint32(6)) == 0 && __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(z + uintptr(n+6)))), uint32(X_CTYPE_S)) != 0 { 2421 return n + len 2422 } 2423 if libc.Xstrncmp(tls, z+uintptr(n), ts+919, uint32(4)) == 0 && __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(z + uintptr(n+4)))), uint32(X_CTYPE_S)) != 0 { 2424 var skip int32 = findEndif(tls, z+uintptr(n)+uintptr(len), 0, pnLine) 2425 n = n + (skip + len) 2426 } else { 2427 n = n + len 2428 } 2429 } 2430 return n 2431 } 2432 2433 func waitForClient(tls *libc.TLS, iClient int32, iTimeout int32, zErrPrefix uintptr) { 2434 bp := tls.Alloc(32) 2435 defer tls.Free(32) 2436 2437 var pStmt uintptr 2438 var rc int32 2439 if iClient > 0 { 2440 pStmt = prepareSql(tls, 2441 ts+924, 2442 libc.VaList(bp, iClient)) 2443 } else { 2444 pStmt = prepareSql(tls, 2445 ts+1020, 0) 2446 } 2447 g.iTimeout = 0 2448 for (libc.AssignInt32(&rc, sqlite3.Xsqlite3_step(tls, pStmt)) == SQLITE_BUSY || rc == SQLITE_ROW) && 2449 iTimeout > 0 { 2450 sqlite3.Xsqlite3_reset(tls, pStmt) 2451 sqlite3.Xsqlite3_sleep(tls, 50) 2452 iTimeout = iTimeout - 50 2453 } 2454 sqlite3.Xsqlite3_finalize(tls, pStmt) 2455 g.iTimeout = DEFAULT_TIMEOUT 2456 if rc != SQLITE_DONE { 2457 if zErrPrefix == uintptr(0) { 2458 zErrPrefix = ts + 1101 2459 } 2460 if iClient > 0 { 2461 errorMessage(tls, ts+1102, libc.VaList(bp+8, zErrPrefix, iClient)) 2462 } else { 2463 errorMessage(tls, ts+1134, libc.VaList(bp+24, zErrPrefix)) 2464 } 2465 } 2466 } 2467 2468 func filenameTail(tls *libc.TLS, z uintptr) uintptr { 2469 var i int32 2470 var j int32 2471 for i = libc.AssignInt32(&j, 0); *(*uint8)(unsafe.Pointer(z + uintptr(i))) != 0; i++ { 2472 if int32(*(*uint8)(unsafe.Pointer(z + uintptr(i)))) == '/' { 2473 j = i + 1 2474 } 2475 } 2476 return z + uintptr(j) 2477 } 2478 2479 func booleanValue(tls *libc.TLS, zArg uintptr) int32 { 2480 bp := tls.Alloc(8) 2481 defer tls.Free(8) 2482 2483 var i int32 2484 if zArg == uintptr(0) { 2485 return 0 2486 } 2487 for i = 0; int32(*(*uint8)(unsafe.Pointer(zArg + uintptr(i)))) >= '0' && int32(*(*uint8)(unsafe.Pointer(zArg + uintptr(i)))) <= '9'; i++ { 2488 } 2489 if i > 0 && int32(*(*uint8)(unsafe.Pointer(zArg + uintptr(i)))) == 0 { 2490 return libc.Xatoi(tls, zArg) 2491 } 2492 if sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1168) == 0 || sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1171) == 0 { 2493 return 1 2494 } 2495 if sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1175) == 0 || sqlite3.Xsqlite3_stricmp(tls, zArg, ts+1179) == 0 { 2496 return 0 2497 } 2498 errorMessage(tls, ts+1182, libc.VaList(bp, zArg)) 2499 return 0 2500 } 2501 2502 func test_breakpoint(tls *libc.TLS) { 2503 atomic.AddInt32(&cnt, 1) 2504 } 2505 2506 var cnt int32 = 0 2507 2508 func runScript(tls *libc.TLS, iClient int32, taskId int32, zScript uintptr, zFilename uintptr) { 2509 bp := tls.Alloc(1606) 2510 defer tls.Free(1606) 2511 2512 *(*int32)(unsafe.Pointer(bp + 372)) = 1 2513 var prevLine int32 = 1 2514 var ii int32 = 0 2515 var iBegin int32 = 0 2516 var n int32 2517 var c int32 2518 var j int32 2519 var len int32 2520 var nArg int32 2521 2522 libc.Xmemset(tls, bp+360, 0, uint32(unsafe.Sizeof(String{}))) 2523 stringReset(tls, bp+360) 2524 for libc.AssignInt32(&c, int32(*(*uint8)(unsafe.Pointer(zScript + uintptr(ii))))) != 0 { 2525 prevLine = *(*int32)(unsafe.Pointer(bp + 372)) 2526 len = tokenLength(tls, zScript+uintptr(ii), bp+372) 2527 if __sbistype(tls, int32(uint8(c)), uint32(X_CTYPE_S)) != 0 || c == '/' && int32(*(*uint8)(unsafe.Pointer(zScript + uintptr(ii+1)))) == '*' { 2528 ii = ii + len 2529 continue 2530 } 2531 if c != '-' || int32(*(*uint8)(unsafe.Pointer(zScript + uintptr(ii+1)))) != '-' || !(__sbistype(tls, int32(*(*uint8)(unsafe.Pointer(zScript + uintptr(ii+2)))), uint32(X_CTYPE_A)) != 0) { 2532 ii = ii + len 2533 continue 2534 } 2535 2536 if ii > iBegin { 2537 var zSql uintptr = sqlite3.Xsqlite3_mprintf(tls, ts+1204, libc.VaList(bp, ii-iBegin, zScript+uintptr(iBegin))) 2538 evalSql(tls, bp+360, zSql, 0) 2539 sqlite3.Xsqlite3_free(tls, zSql) 2540 iBegin = ii + len 2541 } 2542 2543 if g.iTrace >= 2 { 2544 logMessage(tls, ts+1204, libc.VaList(bp+16, len, zScript+uintptr(ii))) 2545 } 2546 n = extractToken(tls, zScript+uintptr(ii)+uintptr(2), len-2, bp+376, int32(unsafe.Sizeof([30]uint8{}))) 2547 for nArg = 0; n < len-2 && nArg < MX_ARG; nArg++ { 2548 for n < len-2 && __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(zScript + uintptr(ii+2+n)))), uint32(X_CTYPE_S)) != 0 { 2549 n++ 2550 } 2551 if n >= len-2 { 2552 break 2553 } 2554 n = n + extractToken(tls, zScript+uintptr(ii)+uintptr(2)+uintptr(n), len-2-n, 2555 bp+406+uintptr(nArg)*100, int32(unsafe.Sizeof([100]uint8{}))) 2556 } 2557 for j = nArg; j < MX_ARG; j++ { 2558 *(*uint8)(unsafe.Pointer(bp + 406 + uintptr(libc.PostIncInt32(&j, 1))*100)) = uint8(0) 2559 } 2560 2561 if libc.Xstrcmp(tls, bp+376, ts+1209) == 0 { 2562 sqlite3.Xsqlite3_sleep(tls, libc.Xatoi(tls, bp+406)) 2563 } else if libc.Xstrcmp(tls, bp+376, ts+1215) == 0 { 2564 var rc int32 = libc.Xatoi(tls, bp+406) 2565 finishScript(tls, iClient, taskId, 1) 2566 if rc == 0 { 2567 sqlite3.Xsqlite3_close(tls, g.db) 2568 } 2569 libc.Xexit(tls, rc) 2570 } else if libc.Xstrcmp(tls, bp+376, ts+1220) == 0 { 2571 if g.iTrace == 1 { 2572 logMessage(tls, ts+1204, libc.VaList(bp+32, len-1, zScript+uintptr(ii))) 2573 } 2574 stringReset(tls, bp+360) 2575 } else if libc.Xstrcmp(tls, bp+376, ts+1229) == 0 && iClient > 0 { 2576 finishScript(tls, iClient, taskId, 1) 2577 } else if libc.Xstrcmp(tls, bp+376, ts+1236) == 0 { 2578 stringReset(tls, bp+360) 2579 } else if libc.Xstrcmp(tls, bp+376, ts+1242) == 0 { 2580 var jj int32 2581 var zAns uintptr = zScript + uintptr(ii) 2582 for jj = 7; jj < len-1 && __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(zAns + uintptr(jj)))), uint32(X_CTYPE_S)) != 0; jj++ { 2583 } 2584 zAns += uintptr(jj) 2585 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 { 2586 errorMessage(tls, ts+1248, 2587 libc.VaList(bp+48, prevLine, zFilename, len-jj-1, zAns, (*String)(unsafe.Pointer(bp+360)).z)) 2588 } 2589 g.nTest++ 2590 stringReset(tls, bp+360) 2591 } else if libc.Xstrcmp(tls, bp+376, ts+1293) == 0 || libc.Xstrcmp(tls, bp+376, ts+1298) == 0 { 2592 var jj int32 2593 var zAns uintptr = zScript + uintptr(ii) 2594 var zCopy uintptr 2595 var isGlob int32 = libc.Bool32(int32(*(*uint8)(unsafe.Pointer(bp + 376))) == 'g') 2596 for jj = 9 - 3*isGlob; jj < len-1 && __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(zAns + uintptr(jj)))), uint32(X_CTYPE_S)) != 0; jj++ { 2597 } 2598 zAns += uintptr(jj) 2599 zCopy = sqlite3.Xsqlite3_mprintf(tls, ts+1204, libc.VaList(bp+88, len-jj-1, zAns)) 2600 if libc.Bool32(sqlite3.Xsqlite3_strglob(tls, zCopy, (*String)(unsafe.Pointer(bp+360)).z) == 0)^isGlob != 0 { 2601 errorMessage(tls, ts+1306, 2602 libc.VaList(bp+104, prevLine, zFilename, zCopy, (*String)(unsafe.Pointer(bp+360)).z)) 2603 } 2604 sqlite3.Xsqlite3_free(tls, zCopy) 2605 g.nTest++ 2606 stringReset(tls, bp+360) 2607 } else if libc.Xstrcmp(tls, bp+376, ts+1349) == 0 { 2608 logMessage(tls, ts+438, libc.VaList(bp+136, (*String)(unsafe.Pointer(bp+360)).z)) 2609 } else if libc.Xstrcmp(tls, bp+376, ts+1356) == 0 { 2610 var zNewFile uintptr 2611 var zNewScript uintptr 2612 var zToDel uintptr = uintptr(0) 2613 zNewFile = bp + 406 2614 if !(int32(*(*uint8)(unsafe.Pointer(zNewFile))) == '/') { 2615 var k int32 2616 for k = int32(libc.Xstrlen(tls, zFilename)) - 1; k >= 0 && !(int32(*(*uint8)(unsafe.Pointer(zFilename + uintptr(k)))) == '/'); k-- { 2617 } 2618 if k > 0 { 2619 zNewFile = libc.AssignUintptr(&zToDel, sqlite3.Xsqlite3_mprintf(tls, ts+1363, libc.VaList(bp+144, k, zFilename, zNewFile))) 2620 } 2621 } 2622 zNewScript = readFile(tls, zNewFile) 2623 if g.iTrace != 0 { 2624 logMessage(tls, ts+1371, libc.VaList(bp+168, zNewFile)) 2625 } 2626 runScript(tls, 0, 0, zNewScript, zNewFile) 2627 sqlite3.Xsqlite3_free(tls, zNewScript) 2628 if g.iTrace != 0 { 2629 logMessage(tls, ts+1390, libc.VaList(bp+176, zNewFile)) 2630 } 2631 sqlite3.Xsqlite3_free(tls, zToDel) 2632 } else if libc.Xstrcmp(tls, bp+376, ts+1407) == 0 { 2633 var jj int32 2634 for jj = 7; jj < len && __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(zScript + uintptr(ii+jj)))), uint32(X_CTYPE_S)) != 0; jj++ { 2635 } 2636 logMessage(tls, ts+1204, libc.VaList(bp+184, len-jj, zScript+uintptr(ii)+uintptr(jj))) 2637 } else if libc.Xstrcmp(tls, bp+376, ts+1413) == 0 { 2638 var jj int32 2639 var rc int32 2640 var pStmt uintptr 2641 for jj = 4; jj < len && __sbistype(tls, int32(*(*uint8)(unsafe.Pointer(zScript + uintptr(ii+jj)))), uint32(X_CTYPE_S)) != 0; jj++ { 2642 } 2643 pStmt = prepareSql(tls, ts+1416, libc.VaList(bp+200, len-jj, zScript+uintptr(ii)+uintptr(jj))) 2644 rc = sqlite3.Xsqlite3_step(tls, pStmt) 2645 if rc != SQLITE_ROW || sqlite3.Xsqlite3_column_int(tls, pStmt, 0) == 0 { 2646 ii = ii + findEndif(tls, zScript+uintptr(ii)+uintptr(len), 1, bp+372) 2647 } 2648 sqlite3.Xsqlite3_finalize(tls, pStmt) 2649 } else if libc.Xstrcmp(tls, bp+376, ts+1428) == 0 { 2650 ii = ii + findEndif(tls, zScript+uintptr(ii)+uintptr(len), 0, bp+372) 2651 } else if libc.Xstrcmp(tls, bp+376, ts+1433) == 0 { 2652 } else if libc.Xstrcmp(tls, bp+376, ts+1439) == 0 && iClient == 0 { 2653 var iNewClient int32 = libc.Xatoi(tls, bp+406) 2654 if iNewClient > 0 { 2655 startClient(tls, iNewClient) 2656 } 2657 } else if libc.Xstrcmp(tls, bp+376, ts+1445) == 0 && iClient == 0 { 2658 var iTimeout int32 2659 if nArg >= 2 { 2660 iTimeout = libc.Xatoi(tls, bp+406+1*100) 2661 } else { 2662 iTimeout = DEFAULT_TIMEOUT 2663 } 2664 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([1000]uint8{})), bp+606, ts+1450, 2665 libc.VaList(bp+216, prevLine, zFilename)) 2666 waitForClient(tls, libc.Xatoi(tls, bp+406), iTimeout, bp+606) 2667 } else if libc.Xstrcmp(tls, bp+376, ts+1465) == 0 && iClient == 0 { 2668 var iTarget int32 = libc.Xatoi(tls, bp+406) 2669 var iEnd int32 2670 var zTask uintptr 2671 var zTName uintptr 2672 iEnd = findEnd(tls, zScript+uintptr(ii)+uintptr(len), bp+372) 2673 if iTarget < 0 { 2674 errorMessage(tls, ts+1470, 2675 libc.VaList(bp+232, prevLine, zFilename, iTarget)) 2676 } else { 2677 zTask = sqlite3.Xsqlite3_mprintf(tls, ts+1204, libc.VaList(bp+256, iEnd, zScript+uintptr(ii)+uintptr(len))) 2678 if nArg > 1 { 2679 zTName = sqlite3.Xsqlite3_mprintf(tls, ts+438, libc.VaList(bp+272, bp+406+1*100)) 2680 } else { 2681 zTName = sqlite3.Xsqlite3_mprintf(tls, ts+1507, libc.VaList(bp+280, filenameTail(tls, zFilename), prevLine)) 2682 } 2683 startClient(tls, iTarget) 2684 runSql(tls, 2685 ts+1513, libc.VaList(bp+296, iTarget, zTask, zTName)) 2686 sqlite3.Xsqlite3_free(tls, zTask) 2687 sqlite3.Xsqlite3_free(tls, zTName) 2688 } 2689 iEnd = iEnd + tokenLength(tls, zScript+uintptr(ii)+uintptr(len)+uintptr(iEnd), bp+372) 2690 len = len + iEnd 2691 iBegin = ii + len 2692 } else if libc.Xstrcmp(tls, bp+376, ts+1569) == 0 { 2693 test_breakpoint(tls) 2694 } else if libc.Xstrcmp(tls, bp+376, ts+1580) == 0 { 2695 g.bIgnoreSqlErrors = func() int32 { 2696 if nArg >= 1 { 2697 return libc.BoolInt32(!(booleanValue(tls, bp+406) != 0)) 2698 } 2699 return 1 2700 }() 2701 } else { 2702 errorMessage(tls, ts+1596, 2703 libc.VaList(bp+320, prevLine, zFilename, bp+376)) 2704 } 2705 ii = ii + len 2706 } 2707 if iBegin < ii { 2708 var zSql uintptr = sqlite3.Xsqlite3_mprintf(tls, ts+1204, libc.VaList(bp+344, ii-iBegin, zScript+uintptr(iBegin))) 2709 runSql(tls, zSql, 0) 2710 sqlite3.Xsqlite3_free(tls, zSql) 2711 } 2712 stringFree(tls, bp+360) 2713 } 2714 2715 func findOption(tls *libc.TLS, azArg uintptr, pnArg uintptr, zOption uintptr, hasArg int32) uintptr { 2716 bp := tls.Alloc(8) 2717 defer tls.Free(8) 2718 2719 var i int32 2720 var j int32 2721 var zReturn uintptr = uintptr(0) 2722 var nArg int32 = *(*int32)(unsafe.Pointer(pnArg)) 2723 2724 for i = 0; i < nArg; i++ { 2725 var z uintptr 2726 if i+hasArg >= nArg { 2727 break 2728 } 2729 z = *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)) 2730 if int32(*(*uint8)(unsafe.Pointer(z))) != '-' { 2731 continue 2732 } 2733 z++ 2734 if int32(*(*uint8)(unsafe.Pointer(z))) == '-' { 2735 if int32(*(*uint8)(unsafe.Pointer(z + 1))) == 0 { 2736 break 2737 } 2738 z++ 2739 } 2740 if libc.Xstrcmp(tls, z, zOption) == 0 { 2741 if hasArg != 0 && i == nArg-1 { 2742 fatalError(tls, ts+1632, libc.VaList(bp, z)) 2743 } 2744 if hasArg != 0 { 2745 zReturn = *(*uintptr)(unsafe.Pointer(azArg + uintptr(i+1)*4)) 2746 } else { 2747 zReturn = *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)) 2748 } 2749 j = i + 1 + libc.Bool32(hasArg != 0) 2750 for j < nArg { 2751 *(*uintptr)(unsafe.Pointer(azArg + uintptr(libc.PostIncInt32(&i, 1))*4)) = *(*uintptr)(unsafe.Pointer(azArg + uintptr(libc.PostIncInt32(&j, 1))*4)) 2752 } 2753 *(*int32)(unsafe.Pointer(pnArg)) = i 2754 return zReturn 2755 } 2756 } 2757 return zReturn 2758 } 2759 2760 func usage(tls *libc.TLS, argv0 uintptr) { 2761 bp := tls.Alloc(8) 2762 defer tls.Free(8) 2763 2764 var i int32 2765 var zTail uintptr = argv0 2766 for i = 0; *(*uint8)(unsafe.Pointer(argv0 + uintptr(i))) != 0; i++ { 2767 if int32(*(*uint8)(unsafe.Pointer(argv0 + uintptr(i)))) == '/' { 2768 zTail = argv0 + uintptr(i) + uintptr(1) 2769 } 2770 } 2771 libc.Xfprintf(tls, libc.X__stderrp, ts+1680, libc.VaList(bp, zTail)) 2772 libc.Xfprintf(tls, libc.X__stderrp, 2773 ts+1719, 0) 2774 libc.Xexit(tls, 1) 2775 } 2776 2777 func unrecognizedArguments(tls *libc.TLS, argv0 uintptr, nArg int32, azArg uintptr) { 2778 bp := tls.Alloc(16) 2779 defer tls.Free(16) 2780 2781 var i int32 2782 libc.Xfprintf(tls, libc.X__stderrp, ts+2291, libc.VaList(bp, argv0)) 2783 for i = 0; i < nArg; i++ { 2784 libc.Xfprintf(tls, libc.X__stderrp, ts+2319, libc.VaList(bp+8, *(*uintptr)(unsafe.Pointer(azArg + uintptr(i)*4)))) 2785 } 2786 libc.Xfprintf(tls, libc.X__stderrp, ts+2323, 0) 2787 libc.Xexit(tls, 1) 2788 } 2789 2790 func main1(tls *libc.TLS, argc int32, argv uintptr) int32 { 2791 bp := tls.Alloc(248) 2792 defer tls.Free(248) 2793 2794 var zClient uintptr 2795 var iClient int32 2796 2797 var i int32 2798 var openFlags int32 = SQLITE_OPEN_READWRITE 2799 var rc int32 2800 2801 var zTrace uintptr 2802 var zCOption uintptr 2803 var zJMode uintptr 2804 var zNRep uintptr 2805 var nRep int32 = 1 2806 var iRep int32 2807 var iTmout int32 = 0 2808 var zTmout uintptr 2809 2810 g.argv0 = *(*uintptr)(unsafe.Pointer(argv)) 2811 g.iTrace = 1 2812 if argc < 2 { 2813 usage(tls, *(*uintptr)(unsafe.Pointer(argv))) 2814 } 2815 g.zDbFile = *(*uintptr)(unsafe.Pointer(argv + 1*4)) 2816 if strglob(tls, ts+2325, g.zDbFile) != 0 { 2817 usage(tls, *(*uintptr)(unsafe.Pointer(argv))) 2818 } 2819 if libc.Xstrcmp(tls, sqlite3.Xsqlite3_sourceid(tls), ts+2332) != 0 { 2820 libc.Xfprintf(tls, libc.X__stderrp, 2821 ts+2417, 2822 libc.VaList(bp, sqlite3.Xsqlite3_sourceid(tls), ts+2332)) 2823 libc.Xexit(tls, 1) 2824 } 2825 *(*int32)(unsafe.Pointer(bp + 232)) = argc - 2 2826 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([32]uint8{})), uintptr(unsafe.Pointer(&g))+32, ts+2477, libc.VaList(bp+16, libc.Xgetpid(tls))) 2827 zJMode = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2489, 1) 2828 zNRep = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2501, 1) 2829 if zNRep != 0 { 2830 nRep = libc.Xatoi(tls, zNRep) 2831 } 2832 if nRep < 1 { 2833 nRep = 1 2834 } 2835 g.zVfs = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2508, 1) 2836 zClient = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2512, 1) 2837 g.zErrLog = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2519, 1) 2838 g.zLog = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2526, 1) 2839 zTrace = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2530, 1) 2840 if zTrace != 0 { 2841 g.iTrace = libc.Xatoi(tls, zTrace) 2842 } 2843 if findOption(tls, argv+uintptr(2)*4, bp+232, ts+2536, 0) != uintptr(0) { 2844 g.iTrace = 0 2845 } 2846 zTmout = findOption(tls, argv+uintptr(2)*4, bp+232, ts+2542, 1) 2847 if zTmout != 0 { 2848 iTmout = libc.Xatoi(tls, zTmout) 2849 } 2850 g.bSqlTrace = libc.Bool32(findOption(tls, argv+uintptr(2)*4, bp+232, ts+2550, 0) != uintptr(0)) 2851 g.bSync = libc.Bool32(findOption(tls, argv+uintptr(2)*4, bp+232, ts+2559, 0) != uintptr(0)) 2852 if g.zErrLog != 0 { 2853 g.pErrLog = libc.Xfopen(tls, g.zErrLog, ts+2564) 2854 } else { 2855 g.pErrLog = libc.X__stderrp 2856 } 2857 if g.zLog != 0 { 2858 g.pLog = libc.Xfopen(tls, g.zLog, ts+2564) 2859 } else { 2860 g.pLog = libc.X__stdoutp 2861 } 2862 2863 sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_LOG, libc.VaList(bp+24, *(*uintptr)(unsafe.Pointer(&struct { 2864 f func(*libc.TLS, uintptr, int32, uintptr) 2865 }{sqlErrorCallback})), 0)) 2866 if zClient != 0 { 2867 iClient = libc.Xatoi(tls, zClient) 2868 if iClient < 1 { 2869 fatalError(tls, ts+2566, libc.VaList(bp+40, iClient)) 2870 } 2871 sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([32]uint8{})), uintptr(unsafe.Pointer(&g))+32, ts+2593, 2872 libc.VaList(bp+48, libc.Xgetpid(tls), iClient)) 2873 } else { 2874 var nTry int32 = 0 2875 if g.iTrace > 0 { 2876 libc.Xprintf(tls, ts+2609, libc.VaList(bp+64, *(*uintptr)(unsafe.Pointer(argv)))) 2877 for i = 1; i < argc; i++ { 2878 libc.Xprintf(tls, ts+2319, libc.VaList(bp+72, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4)))) 2879 } 2880 libc.Xprintf(tls, ts+2323, 0) 2881 libc.Xprintf(tls, ts+2619, 0) 2882 for i = 0; libc.AssignUintptr(&zCOption, sqlite3.Xsqlite3_compileoption_get(tls, i)) != uintptr(0); i++ { 2883 libc.Xprintf(tls, ts+2724, libc.VaList(bp+80, zCOption)) 2884 } 2885 libc.Xfflush(tls, libc.X__stdoutp) 2886 } 2887 iClient = 0 2888 for __ccgo := true; __ccgo; __ccgo = rc != 0 && libc.PreIncInt32(&nTry, 1) < 60 && sqlite3.Xsqlite3_sleep(tls, 1000) > 0 { 2889 if nTry%5 == 4 { 2890 libc.Xprintf(tls, ts+2737, 2891 libc.VaList(bp+88, func() uintptr { 2892 if nTry > 5 { 2893 return ts + 2766 2894 } 2895 return ts + 1101 2896 }(), g.zDbFile)) 2897 } 2898 rc = libc.Xunlink(tls, g.zDbFile) 2899 if rc != 0 && *(*int32)(unsafe.Pointer(libc.X__error(tls))) == ENOENT { 2900 rc = 0 2901 } 2902 } 2903 if rc != 0 { 2904 fatalError(tls, ts+2773, 2905 libc.VaList(bp+104, g.zDbFile, nTry)) 2906 } 2907 openFlags = openFlags | SQLITE_OPEN_CREATE 2908 } 2909 rc = sqlite3.Xsqlite3_open_v2(tls, g.zDbFile, uintptr(unsafe.Pointer(&g))+12, openFlags, g.zVfs) 2910 if rc != 0 { 2911 fatalError(tls, ts+2814, libc.VaList(bp+120, g.zDbFile)) 2912 } 2913 if iTmout > 0 { 2914 sqlite3.Xsqlite3_busy_timeout(tls, g.db, iTmout) 2915 } 2916 2917 if zJMode != 0 { 2918 runSql(tls, ts+2831, libc.VaList(bp+128, zJMode)) 2919 } 2920 if !(g.bSync != 0) { 2921 trySql(tls, ts+2855, 0) 2922 } 2923 sqlite3.Xsqlite3_enable_load_extension(tls, g.db, 1) 2924 sqlite3.Xsqlite3_busy_handler(tls, g.db, *(*uintptr)(unsafe.Pointer(&struct { 2925 f func(*libc.TLS, uintptr, int32) int32 2926 }{busyHandler})), uintptr(0)) 2927 sqlite3.Xsqlite3_create_function(tls, g.db, ts+2878, 0, SQLITE_UTF8, uintptr(0), 2928 *(*uintptr)(unsafe.Pointer(&struct { 2929 f func(*libc.TLS, uintptr, int32, uintptr) 2930 }{vfsNameFunc})), uintptr(0), uintptr(0)) 2931 sqlite3.Xsqlite3_create_function(tls, g.db, ts+2886, 1, SQLITE_UTF8, uintptr(0), 2932 *(*uintptr)(unsafe.Pointer(&struct { 2933 f func(*libc.TLS, uintptr, int32, uintptr) 2934 }{evalFunc})), uintptr(0), uintptr(0)) 2935 g.iTimeout = DEFAULT_TIMEOUT 2936 if g.bSqlTrace != 0 { 2937 sqlite3.Xsqlite3_trace(tls, g.db, *(*uintptr)(unsafe.Pointer(&struct { 2938 f func(*libc.TLS, uintptr, uintptr) 2939 }{sqlTraceCallback})), uintptr(0)) 2940 } 2941 if iClient > 0 { 2942 if *(*int32)(unsafe.Pointer(bp + 232)) > 0 { 2943 unrecognizedArguments(tls, *(*uintptr)(unsafe.Pointer(argv)), *(*int32)(unsafe.Pointer(bp + 232)), argv+uintptr(2)*4) 2944 } 2945 if g.iTrace != 0 { 2946 logMessage(tls, ts+2891, 0) 2947 } 2948 for 1 != 0 { 2949 *(*uintptr)(unsafe.Pointer(bp + 244)) = uintptr(0) 2950 rc = startScript(tls, iClient, bp+236, bp+240, bp+244) 2951 if rc == SQLITE_DONE { 2952 break 2953 } 2954 if g.iTrace != 0 { 2955 logMessage(tls, ts+2904, libc.VaList(bp+136, *(*uintptr)(unsafe.Pointer(bp + 244)), *(*int32)(unsafe.Pointer(bp + 240)))) 2956 } 2957 runScript(tls, iClient, *(*int32)(unsafe.Pointer(bp + 240)), *(*uintptr)(unsafe.Pointer(bp + 236)), *(*uintptr)(unsafe.Pointer(bp + 244))) 2958 if g.iTrace != 0 { 2959 logMessage(tls, ts+2918, libc.VaList(bp+152, *(*uintptr)(unsafe.Pointer(bp + 244)), *(*int32)(unsafe.Pointer(bp + 240)))) 2960 } 2961 finishScript(tls, iClient, *(*int32)(unsafe.Pointer(bp + 240)), 0) 2962 sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 244))) 2963 sqlite3.Xsqlite3_sleep(tls, 10) 2964 } 2965 if g.iTrace != 0 { 2966 logMessage(tls, ts+2930, 0) 2967 } 2968 } else { 2969 var pStmt uintptr 2970 var iTimeout int32 2971 if *(*int32)(unsafe.Pointer(bp + 232)) == 0 { 2972 fatalError(tls, ts+2941, 0) 2973 } 2974 if *(*int32)(unsafe.Pointer(bp + 232)) > 1 { 2975 unrecognizedArguments(tls, *(*uintptr)(unsafe.Pointer(argv)), *(*int32)(unsafe.Pointer(bp + 232)), argv+uintptr(2)*4) 2976 } 2977 runSql(tls, 2978 ts+2965, 0) 2979 *(*uintptr)(unsafe.Pointer(bp + 236)) = readFile(tls, *(*uintptr)(unsafe.Pointer(argv + 2*4))) 2980 for iRep = 1; iRep <= nRep; iRep++ { 2981 if g.iTrace != 0 { 2982 logMessage(tls, ts+3401, libc.VaList(bp+168, *(*uintptr)(unsafe.Pointer(argv + 2*4)), iRep)) 2983 } 2984 runScript(tls, 0, 0, *(*uintptr)(unsafe.Pointer(bp + 236)), *(*uintptr)(unsafe.Pointer(argv + 2*4))) 2985 if g.iTrace != 0 { 2986 logMessage(tls, ts+3429, libc.VaList(bp+184, *(*uintptr)(unsafe.Pointer(argv + 2*4)), iRep)) 2987 } 2988 } 2989 sqlite3.Xsqlite3_free(tls, *(*uintptr)(unsafe.Pointer(bp + 236))) 2990 waitForClient(tls, 0, 2000, ts+3455) 2991 trySql(tls, ts+3475, 0) 2992 sqlite3.Xsqlite3_sleep(tls, 10) 2993 g.iTimeout = 0 2994 iTimeout = 1000 2995 for (libc.AssignInt32(&rc, trySql(tls, ts+3504, 0)) == SQLITE_BUSY || 2996 rc == SQLITE_ROW) && iTimeout > 0 { 2997 sqlite3.Xsqlite3_sleep(tls, 10) 2998 iTimeout = iTimeout - 10 2999 } 3000 sqlite3.Xsqlite3_sleep(tls, 100) 3001 pStmt = prepareSql(tls, ts+3525, 0) 3002 iTimeout = 1000 3003 for libc.AssignInt32(&rc, sqlite3.Xsqlite3_step(tls, pStmt)) == SQLITE_BUSY && iTimeout > 0 { 3004 sqlite3.Xsqlite3_sleep(tls, 10) 3005 iTimeout = iTimeout - 10 3006 } 3007 if rc == SQLITE_ROW { 3008 *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 80)) += sqlite3.Xsqlite3_column_int(tls, pStmt, 0) 3009 *(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 84)) += sqlite3.Xsqlite3_column_int(tls, pStmt, 1) 3010 } 3011 sqlite3.Xsqlite3_finalize(tls, pStmt) 3012 } 3013 sqlite3.Xsqlite3_close(tls, g.db) 3014 maybeClose(tls, g.pLog) 3015 maybeClose(tls, g.pErrLog) 3016 if iClient == 0 { 3017 libc.Xprintf(tls, ts+3560, libc.VaList(bp+200, g.nError, g.nTest)) 3018 libc.Xprintf(tls, ts+3596, libc.VaList(bp+216, *(*uintptr)(unsafe.Pointer(argv)))) 3019 for i = 1; i < argc; i++ { 3020 libc.Xprintf(tls, ts+2319, libc.VaList(bp+224, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*4)))) 3021 } 3022 libc.Xprintf(tls, ts+2323, 0) 3023 } 3024 return libc.Bool32(g.nError > 0) 3025 } 3026 3027 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 3000 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" 3028 var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data