head 1.2; access; symbols trunk-20040613:1.2 mach64-last-merge:1.2 driinterface-0-0-3-20040303-merge:1.2 driinterface-0-0-3-20040303-premerge:1.2 driinterface-0-0-3-20040303:1.2 driinterface-0-0-3-branch:1.2.0.14 mach64-0-0-7-branch:1.2.0.12 driinterface-0-0-2-branch:1.2.0.10 newmesa-0-0-1-20031209-merge:1.2 trunk-20031209:1.2 newmesa-0-0-1-20031209:1.2 newmesa-0-0-1-branch:1.2.0.8 driinterface-0-0-1-branch:1.2.0.6 savage-2-0-0-branch:1.2.0.4 savage-2-0-0-fork:1.2 config-0-0-1-20031005-freeze:1.1.1.7 savage-1_0_0-20031002-trunk-premerge:1.1.1.7 cle266-0-0-1-branch:1.2.0.2 i865-agp-0-1-20030929:1.1.1.7 trunk-20030916:1.2 XFree86-4_3_99_12-merge:1.2 trunk-20030912:1.1.1.7 i865-agp-0-1-20030905:1.1.1.7 i865-agp-0-1-20030728:1.1.1.7 i865-agp-0-1-20030707:1.1.1.7 savage-1_0_0-branch:1.1.1.7.0.66 newdrm-0-0-1-branch:1.1.1.7.0.64 i865-agp-0-1-branch:1.1.1.7.0.62 config-0-0-1-branch:1.1.1.7.0.60 texmem-0-0-1-20030429-merge:1.1.1.7 texmem-0-0-1-20030429-premerge:1.1.1.7 texmem-0-0-1-20030407:1.1.1.7 trident-0-0-2-branch:1.1.1.7.0.58 mach64-0-0-6-20030330:1.1.1.7 mach64-0-0-6-20030329-freeze:1.1.1.7 texmem-0-0-1-20030328-freeze:1.1.1.7 X_4_3_0-20030324-merge:1.1.1.7 X_4_3_0-20020324-preimport:1.1.1.7 drm-filp-0-1-branch:1.1.1.7.0.56 mesa-4-0-4-20030222:1.1.1.7 bsd-4-0-0-20030221-merge:1.1.1.7 bsd-4-0-0-20030220:1.1.1.7 bsd-4-0-0-20030220-freeze:1.1.1.7 mesa-4-0-4-20030216:1.1.1.7 mach64-0-0-6-branch:1.1.1.7.0.54 mesa-4-0-4-20030208:1.1.1.7 texmem-0-0-1-20030204-trunk-merge:1.1.1.7 texmem-0-0-1-20030204-trunk-premerge:1.1.1.7 mesa-4-0-4-20030203:1.1.1.7 mesa-4-0-4-20030129:1.1.1.7 texmem-0-0-1-20030125-trunk-merge:1.1.1.7 texmem-0-0-1-20030123-trunk-premerge:1.1.1.7 mesa-4-0-4-20030114:1.1.1.7 agpgart_2_0_branch:1.1.1.7.0.52 mesa-4-0-4-20021220:1.1.1.7 mesa-4-0-4-20021216:1.1.1.7 mesa-4-0-4-20021215:1.1.1.7 mesa-4-0-4-20021214:1.1.1.7 mesa-4-0-4-branch:1.1.1.7.0.50 dmx-1-0-20021129-final:1.1.1.7 texmem-0-0-1-20021127-mesa-4-1-merge:1.1.1.7 trunk-20021125:1.1.1.7 dmx-1-0-20021115-beta:1.1.1.7 bsd-4-0-0-branch:1.1.1.7.0.48 nv-0-0-1-branch:1.1.1.7.0.46 savage-0-0-1-branch:1.1.1.7.0.44 stable-1-0-branch:1.1.1.7.0.42 r200-stable-1-0-20021028:1.1.1.7 dmx-1-0-20021025-alpha:1.1.1.7 X_4_2_99_2-20021023-merge:1.1.1.7 X_4_2_99_2:1.1.1.7 trunk-20021022:1.1.1.7 r200-stable-1-0-branch:1.1.1.7.0.40 mesa-4-1-branch:1.1.1.7.0.38 texmem-0-0-1:1.1.1.7.0.36 trunk-20021002:1.1.1.7 dmx-1-0-20020926-final:1.1.1.7 dmx-1-0-20020830-beta:1.1.1.7 r200-0-2-branch:1.1.1.7.0.34 r200-0-1-20020822-merge:1.1.1.7 r200-0-1-20020822:1.1.1.7 r200-0-1-20020826-freeze:1.1.1.7 xv845g-0-1-branch:1.1.1.7.0.32 xv845g-0-1-bp:1.1.1.7 GEODE-BASE-DRIVER:1.1.1.7 geode-0-0-1-branch:1.1.1.7.0.30 tdlabs-0-0-1-branch:1.1.1.7.0.28 reinit-0-0-1-branch:1.1.1.7.0.26 dmx-1-0-20020719-alpha:1.1.1.7 r200-0-1-20020715:1.1.1.7 r200-0-1-20020714-freeze:1.1.1.7 bsd-3-0-0-20020705-merge:1.1.1.7 bsd-3-0-0-freeze:1.1.1.7 trunk-20020705:1.1.1.7 bsd-3-0-0-20020705:1.1.1.7 trunk-20020703:1.1.1.7 mach64-0-0-5-branch:1.1.1.7.0.22 trunk-20020626:1.1.1.7 trunk-20020617:1.1.1.7 tcl-0-0-20020612-merge:1.1.1.7 tcl-0-0-20020612:1.1.1.7 tcl-0-0-20020612-freeze:1.1.1.7 r200-0-1-branch:1.1.1.7.0.24 dmx-1-0-20020604-phase1:1.1.1.7 dmx-1-0-20020603-base:1.1.1.7 dmx-1-0-branch:1.1.1.7.0.20 dmx-0-1-20020531-final:1.1.1.6 mach64-0-0-4-dma-branch:1.1.1.7.0.18 dmx-0-1-20020419-beta:1.1.1.6 mach64-0-0-4-branch:1.1.1.7.0.16 drmcommand-0-0-1-20020409-merge:1.1.1.7 drmcommand-0-0-1-20020409:1.1.1.7 drmcommand-0-0-1-20020409-freeze:1.1.1.7 trunk-20020328:1.1.1.7 s3virge-0-0-1-branch:1.1.1.7.0.14 drmcommand-0-0-1-branch:1.1.1.7.0.12 trident-0-0-1-branch:1.1.1.7.0.10 mach64-0-0-3-dma-branch:1.1.1.7.0.8 bsd-3-0-0-branch:1.1.1.7.0.6 dmx-0-1-20020228-alpha:1.1.1.6 mach64-0-0-3-branch:1.1.1.7.0.4 trunk-20020221:1.1.1.7 tcl-0-0-branch:1.1.1.7.0.2 mesa-4-0-20020214-merge:1.1.1.7 mesa-4-0-20020214:1.1.1.6.2.1 mesa-4-0-20020213:1.1.1.6.2.1 mesa-4-0-20020211-freeze:1.1.1.6 X_4_2_0-20020128-merge:1.1.1.7 X_4_2_0:1.1.1.7 X_4_2_0-20020127-preimport:1.1.1.6 X_4_2_0-20020123-preimport:1.1.1.6 dmx-0-1-20020112:1.1.1.6 dmx-0-1-20011128-snapshot:1.1.1.6 dmx-0-1-20011115:1.1.1.6 dmx-0-1-branch:1.1.1.6.0.6 mach64-0-0-2-branch:1.1.1.6.0.4 mesa-4-0-branch:1.1.1.6.0.2 X_4_1_99_1-20010822-merge:1.1.1.6 X_4_1_99_1:1.1.1.6 X_4_1_99_1-20010822-preimport:1.1.1.5 multihead-1-0-0-20010730:1.1.1.5 multihead-1-0-0-20010730-merge:1.1.1.5 multihead-1-0-0-20010727-freeze:1.1.1.5 X_4_1_0-20010615-merge:1.1.1.5 mesa-3-5-20010621-freeze:1.1.1.4.20.1 X_4_1_0:1.1.1.5 X_4_1_0-20010614-preimport:1.1.1.5 multihead-1-0-0-branch:1.1.1.5.0.6 X_4_0_99_3-20010502-merge:1.1.1.5 X_4_0_99_3:1.1.1.5 X_4_0_99_3-20010501-preimport:1.1.1.5 bsd-2-0-0-branch:1.1.1.5.0.4 X_4_0_99_2-20010410-merge:1.1.1.5 X_4_0_99_2:1.1.1.5 X_4_0_99_2-20010409-preimport:1.1.1.5 ati-pcigart-1-0-0-20010405-merge:1.1.1.5 ati-pcigart-1-0-0-20010405:1.1.1.5 ati-pcigart-1-0-0-20010405-freeze:1.1.1.5 ati-pcigart-1-0-0-branch:1.1.1.5.0.2 mesa-3-5-20010323-freeze:1.1.1.4 X_4_0_99_1-20010321-merge:1.1.1.5 X_4_0_99_1:1.1.1.5 X_4_0_99_1-20010319-preimport:1.1.1.4 full-1-0-0-20010315-head:1.1.1.4 sarea-1-0-0-20010314-merge:1.1.1.4 sarea-1-0-0-20010314:1.1.1.4 full-1-0-0-branch:1.1.1.4 sarea-1-0-0-20010307:1.1.1.4 sarea-1-0-0-20010307-freeze:1.1.1.4 tdfx-3-1-0-20010306-merge:1.1.1.4 tdfx-3-1-0-20010306-freeze:1.1.1.4 tdfx-3-1-0-20010306:1.1.1.4 tdfx-3-1-0-20010305-merge:1.1.1.4 tdfx-3-1-0-20010305-freeze2:1.1.1.4 tdfx-3-1-0-20010305-freeze:1.1.1.4 tdfx-3-1-0-20010301-freeze:1.1.1.4 ati-pcigart-0-0-1-branch-02282001-freeze:1.1.1.4 ati-5-0-1-20010220-head:1.1.1.4 ati-5-0-1-branch:1.1.1.4.0.28 sarea-1-0-0-branch:1.1.1.4.0.26 mga-1-0-0-20010215-merge:1.1.1.4 mga-1-0-0-20010215-freeze:1.1.1.4 tdfx-3-1-0-branch:1.1.1.4.0.24 tdfx-3-0-1-branch:1.1.1.4 ati-pcigart-0-0-1-branch:1.1.1.4.0.22 mesa-3-5-branch:1.1.1.4.0.20 tdfx-3-0-0-20010109-merge:1.1.1.4 tdfx-3-0-0-20010108:1.1.1.4 ati-5-0-0-20010105-merge:1.1.1.4 ati-5-0-0-20010105:1.1.1.4 ati-5-0-0-20000104-freeze:1.1.1.4 tdfx-3-0-0-20010104-freeze:1.1.1.4 ati-5-0-0-20001223-merge:1.1.1.4 ati-5-0-0-20001223-freeze:1.1.1.4 X_4_0_2-20001221-merge:1.1.1.4 X_4_0_2:1.1.1.4 mga-1-0-0-branch:1.1.1.4.0.18 X_4_0_1h-20001207-merge:1.1.1.4 X_4_0_1h-20001205-merge:1.1.1.4 X_4_0_1h:1.1.1.4 ati-4-1-1-20001202-merge-trunk:1.1.1.4 sse-1-0-1-branch:1.1.1.4.0.16 ati-4-1-1-20001202-merge:1.1.1.2 tdfx-3-0-0-20001201:1.1.1.4 ati-4-1-1-20001201-freeze:1.1.1.2 tdfx-3-0-0-20001201-freeze:1.1.1.4 X_4_0_1g-20001130-merge:1.1.1.4 X_4_0_1g:1.1.1.4 X_4_0_1f-20001130-merge:1.1.1.4 X_4_0_1f:1.1.1.4 ati-4-1-1-20001125-freeze:1.1.1.2 mach64-0-0-1-branch:1.1.1.4.0.14 ati-5-0-0-branch:1.1.1.4.0.12 X_4_0_1e-20001107-merge:1.1.1.4 X_4_0_1e:1.1.1.4 X_4_0_1d-20001107-merge:1.1.1.4 X_4_0_1d:1.1.1.4 ppc-1-0-1-branch:1.1.1.4.0.10 radeon-1-0-0-20001017:1.1.1.2 full-0-0-2-branch:1.1.1.4.0.8 full-0-0-1-branch:1.1.1.4.0.6 ati-4-1-1-20001009-freeze:1.1.1.2 mga-readpix-0-0-1-branch:1.1.1.4.0.4 tdfx-3-0-0-branch:1.1.1.4.0.2 X_4_0_1d-pre:1.1.1.4 ati-4-1-1-20000919-stable:1.1.1.2 radeon-1-0-0-branch:1.1.1.2.0.56 ppc-1-0-0-20000912:1.1.1.2 mga-lock-debug-0-2-0-branch:1.1.1.2.0.54 sse-1-0-0-branch:1.1.1.2.0.52 mga-lock-debug-0-0-1-branch:1.1.1.2.0.50 gamma-2-0-0-branch:1.1.1.2.0.48 tdfx-2-1-20000907-merge:1.1.1.2 tdfx-2-1-20000906:1.1.1.2 tdfx-2-1-20000905-freeze:1.1.1.2 ppc-1-0-0-2000-09-01-freeze:1.1.1.2 m3-0-0-1-branch:1.1.1.2.0.46 mach64-0-0-0-branch:1.1.1.2.0.44 ati-4-1-1-branch:1.1.1.2.0.42 X_4_0_1b-20000816-merge:1.1.1.2 X_4_0_1b:1.1.1.2 ati-4-0-2-branch:1.1.1.2.0.40 ppc-1-0-0-branch:1.1.1.2.0.38 tdfx-2-1-20000711:1.1.1.2 tdfx-2-1-20000711-freeze:1.1.1.2 X_4_0_1:1.1.1.2 tdfx-2-1-branch:1.1.1.2.0.36 pre401-20000613-freeze:1.1.1.2 bsd-1-0-1-20000613-merge:1.1.1.2 bsd-1-0-1-20000613:1.1.1.2 bsd-1-0-1-20000612-freeze:1.1.1.2 tdfx-2-0-20000612-merge:1.1.1.2 ati-4-1-0-20000613-merge:1.1.1.2 ati-4-1-0-20000613:1.1.1.2 tdfx-2-0-20000608-merge:1.1.1.2 tdfx-2-0-20000608-freeze:1.1.1.2 ati-4-1-0-branch:1.1.1.2.0.34 glxmisc-3-0-0-20000608-merge:1.1.1.2 glxmisc-3-0-0-20000607:1.1.1.2 glxmisc-3-0-0-20000606-freeze:1.1.1.2 bsd-1-0-1-branch:1.1.1.2.0.32 bsd-1-0-0-20000531-merge:1.1.1.2 bsd-1-0-0-20000530-merge:1.1.1.2 bsd-1-0-0-20000530-freeze:1.1.1.2 tdfx-2-0-20000222-merge:1.1.1.2 tdfx-2-0-20000222-freeze:1.1.1.2 ati-4-0-1-20000518-merge:1.1.1.2 ati-4-0-1-20000518:1.1.1.2 video-1-0-0-branch:1.1.1.2.0.30 gamma-1-0-0-branch:1.1.1.2.0.28 mgadh-0-0-3-branch:1.1.1.2.0.26 glxmisc-3-0-0-branch:1.1.1.2.0.24 glxmisc-2-0-0-20000503-merge:1.1.1.2 bsd-1-0-0-branch:1.1.1.2.0.22 glxmisc-2-0-0-20000503:1.1.1.2 glxmisc-2-0-0-branch:1.1.1.2.0.20 tdfx-2-0-branch:1.1.1.2.0.18 tdfx-2-0-trunk:1.1.1.2 glxmisc-1-0-0-20000420-merge:1.1.1.2 glxmisc-1-0-0-20000420:1.1.1.2 ati-4-0-1-beta:1.1.1.2 glxmisc-1-0-0-branch:1.1.1.2.0.16 mga-0-0-3-branch:1.1.1.2.0.14 mga-0-0-2-20000404-merge:1.1.1.2 ati-4-0-1-alpha:1.1.1.2 ati-4-0-1-20000319-base:1.1.1.2 ati-4-0-1-branch:1.1.1.2.0.12 ati-4-0-0-20000319:1.1.1.1 X_4_0-20000315-merge:1.1.1.2 X_4_0:1.1.1.2 freeze-20000226:1.1.1.2 dispatch-0-0-3-20000225-merge:1.1.1.2 dispatch-0-0-3-20000225:1.1.1.2 mga-0-0-1-20000225-merge:1.1.1.1 mga-0-0-2-branch:1.1.1.2.0.10 smt-0-0-2-branch:1.1.1.2.0.8 smt-0-0-1-20000222-freeze:1.1.1.2.2.9.2.4 X_3_9_18-20000222-merge:1.1.1.2 X_3_9_18:1.1.1.2 smt-0-0-1-stage2c:1.1.1.2.2.10 smt-0-0-1-stage2b:1.1.1.2.2.9.0.2 dispatch-0-0-3-branch:1.1.1.2.0.6 i810-20000214-beta2:1.1.1.1 dispatch-0-0-2-20000212:1.1.1.2 dispatch-0-0-2-branch:1.1.1.2.0.4 i810-20000201-beta1:1.1.1.1 dispatch-0-0-1-20000129-merge:1.1.1.2 dispatch-0-0-1-20000128:1.1.1.1 smt-0-0-1-20000112-base:1.1.1.2 smt-0-0-1-branch:1.1.1.2.0.2 dispatch-0-0-1-branch:1.1.1.1.0.10 tdfx-1-1:1.1.1.1.0.4 X_3_9_17:1.1.1.2 ati-4-0-0-branch:1.1.1.1.0.8 mga-0-0-1-branch:1.1.1.1.0.2 X_3_9_16:1.1.1.1 XFree:1.1.1; locks; strict; comment @ * @; 1.2 date 2003.09.12.18.38.13; author alanh; state Exp; branches; next 1.1; 1.1 date 99.12.05.01.04.04; author daryll; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 99.12.05.01.04.04; author daryll; state Exp; branches 1.1.1.1.4.1; next 1.1.1.2; 1.1.1.2 date 2000.01.06.12.44.33; author faith; state Exp; branches 1.1.1.2.2.1 1.1.1.2.8.1; next 1.1.1.3; 1.1.1.3 date 2000.09.22.17.28.21; author alanh; state Exp; branches; next 1.1.1.4; 1.1.1.4 date 2000.09.23.20.59.23; author alanh; state Exp; branches 1.1.1.4.20.1; next 1.1.1.5; 1.1.1.5 date 2001.03.19.17.45.21; author dawes; state Exp; branches 1.1.1.5.4.1; next 1.1.1.6; 1.1.1.6 date 2001.08.22.18.00.18; author dawes; state Exp; branches 1.1.1.6.2.1; next 1.1.1.7; 1.1.1.7 date 2002.01.27.18.21.57; author dawes; state Exp; branches; next ; 1.1.1.6.2.1 date 2002.02.12.00.36.21; author dawes; state Exp; branches; next ; 1.1.1.5.4.1 date 2001.08.29.17.25.01; author alanh; state Exp; branches; next ; 1.1.1.4.20.1 date 2001.03.27.20.03.20; author gareth; state Exp; branches; next ; 1.1.1.2.2.1 date 2000.01.12.16.21.01; author faith; state Exp; branches; next 1.1.1.2.2.2; 1.1.1.2.2.2 date 2000.01.21.16.08.03; author faith; state Exp; branches; next 1.1.1.2.2.3; 1.1.1.2.2.3 date 2000.01.25.21.37.36; author faith; state Exp; branches; next 1.1.1.2.2.4; 1.1.1.2.2.4 date 2000.01.27.19.39.21; author faith; state Exp; branches; next 1.1.1.2.2.5; 1.1.1.2.2.5 date 2000.01.28.12.45.59; author faith; state Exp; branches; next 1.1.1.2.2.6; 1.1.1.2.2.6 date 2000.01.29.15.58.24; author faith; state Exp; branches; next 1.1.1.2.2.7; 1.1.1.2.2.7 date 2000.02.02.15.05.17; author faith; state Exp; branches; next 1.1.1.2.2.8; 1.1.1.2.2.8 date 2000.02.03.20.09.32; author faith; state Exp; branches; next 1.1.1.2.2.9; 1.1.1.2.2.9 date 2000.02.04.10.53.18; author faith; state Exp; branches 1.1.1.2.2.9.2.1; next 1.1.1.2.2.10; 1.1.1.2.2.10 date 2000.02.12.10.51.30; author faith; state Exp; branches; next ; 1.1.1.2.2.9.2.1 date 2000.02.19.11.56.32; author faith; state Exp; branches; next 1.1.1.2.2.9.2.2; 1.1.1.2.2.9.2.2 date 2000.02.21.17.16.04; author faith; state Exp; branches; next 1.1.1.2.2.9.2.3; 1.1.1.2.2.9.2.3 date 2000.02.22.15.23.25; author faith; state Exp; branches; next 1.1.1.2.2.9.2.4; 1.1.1.2.2.9.2.4 date 2000.02.23.03.02.02; author faith; state Exp; branches; next ; 1.1.1.2.8.1 date 2000.02.25.14.34.40; author faith; state Exp; branches; next ; 1.1.1.1.4.1 date 2000.01.21.02.02.17; author daryll; state Exp; branches; next ; desc @@ 1.2 log @third round. @ text @/* $Xorg: Xtrans.h,v 1.4 2001/02/09 02:04:06 xorgcvs Exp $ */ /* Copyright 1993, 1994, 1998 The Open Group Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Except as contained in this notice, the name of The Open Group shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization from The Open Group. */ /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.22 2003/07/24 13:50:19 eich Exp $ */ /* Copyright 1993, 1994 NCR Corporation - Dayton, Ohio, USA * * All Rights Reserved * * Permission to use, copy, modify, and distribute this software and its * documentation for any purpose and without fee is hereby granted, provided * that the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation, and that the name NCR not be used in advertising * or publicity pertaining to distribution of the software without specific, * written prior permission. NCR makes no representations about the * suitability of this software for any purpose. It is provided "as is" * without express or implied warranty. * * NCR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN * NO EVENT SHALL NCR BE LIABLE FOR ANY SPECIAL, INDIRECT OR * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ #ifndef _XTRANS_H_ #define _XTRANS_H_ #include #include #ifndef WIN32 #ifndef Lynx #include #else #include #endif #endif /* * Set the functions names according to where this code is being compiled. */ #ifdef X11_t #if !defined(UNIXCPP) || defined(ANSICPP) #define TRANS(func) _X11Trans##func #else #define TRANS(func) _X11Trans/**/func #endif #ifdef XTRANSDEBUG static char* __xtransname = "_X11Trans"; #endif #endif /* X11_t */ #ifdef XSERV_t #if !defined(UNIXCPP) || defined(ANSICPP) #define TRANS(func) _XSERVTrans##func #else #define TRANS(func) _XSERVTrans/**/func #endif #ifdef XTRANSDEBUG static char* __xtransname = "_XSERVTrans"; #endif #define X11_t #endif /* XSERV_t */ #ifdef XIM_t #if !defined(UNIXCPP) || defined(ANSICPP) #define TRANS(func) _XimXTrans##func #else #define TRANS(func) _XimXTrans/**/func #endif #ifdef XTRANSDEBUG static char* __xtransname = "_XimTrans"; #endif #endif /* XIM_t */ #ifdef FS_t #if !defined(UNIXCPP) || defined(ANSICPP) #define TRANS(func) _FSTrans##func #else #define TRANS(func) _FSTrans/**/func #endif #ifdef XTRANSDEBUG static char* __xtransname = "_FSTrans"; #endif #endif /* FS_t */ #ifdef FONT_t #if !defined(UNIXCPP) || defined(ANSICPP) #define TRANS(func) _FontTrans##func #else #define TRANS(func) _FontTrans/**/func #endif #ifdef XTRANSDEBUG static char* __xtransname = "_FontTrans"; #endif #endif /* FONT_t */ #ifdef ICE_t #if !defined(UNIXCPP) || defined(ANSICPP) #define TRANS(func) _IceTrans##func #else #define TRANS(func) _IceTrans/**/func #endif #ifdef XTRANSDEBUG static char* __xtransname = "_IceTrans"; #endif #endif /* ICE_t */ #ifdef TEST_t #if !defined(UNIXCPP) || defined(ANSICPP) #define TRANS(func) _TESTTrans##func #else #define TRANS(func) _TESTTrans/**/func #endif #ifdef XTRANSDEBUG static char* __xtransname = "_TESTTrans"; #endif #endif /* TEST_t */ #ifdef LBXPROXY_t #if !defined(UNIXCPP) || defined(ANSICPP) #define TRANS(func) _LBXPROXYTrans##func #else #define TRANS(func) _LBXPROXYTrans/**/func #endif #define X11_t /* The server defines this - so should the LBX proxy */ #ifdef XTRANSDEBUG static char* __xtransname = "_LBXPROXYTrans"; #endif #endif /* LBXPROXY_t */ #if !defined(TRANS) #if !defined(UNIXCPP) || defined(ANSICPP) #define TRANS(func) _XTrans##func #else #define TRANS(func) _XTrans/**/func #endif #ifdef XTRANSDEBUG static char* __xtransname = "_XTrans"; #endif #endif /* !TRANS */ /* * Create a single address structure that can be used wherever * an address structure is needed. struct sockaddr is not big enough * to hold a sockadd_un, so we create this definition to have a single * structure that is big enough for all the structures we might need. * * This structure needs to be independent of the socket/TLI interface used. */ #if defined(IPv6) && defined(AF_INET6) typedef struct sockaddr_storage Xtransaddr; #else #define XTRANS_MAX_ADDR_LEN 128 /* large enough to hold sun_path */ typedef struct { unsigned char addr[XTRANS_MAX_ADDR_LEN]; } Xtransaddr; #endif #ifdef LONG64 typedef int BytesReadable_t; #else typedef long BytesReadable_t; #endif #if defined(WIN32) || (defined(USG) && !defined(CRAY) && !defined(umips) && !defined(MOTOROLA) && !defined(uniosu) && !defined(__sxg__)) /* * TRANS(Readv) and TRANS(Writev) use struct iovec, normally found * in Berkeley systems in . See the readv(2) and writev(2) * manual pages for details. */ struct iovec { caddr_t iov_base; int iov_len; }; #else #ifndef Lynx #include #else #include #endif #endif typedef struct _XtransConnInfo *XtransConnInfo; /* * Transport Option definitions */ #define TRANS_NONBLOCKING 1 #define TRANS_CLOSEONEXEC 2 /* * Return values of Connect (0 is success) */ #define TRANS_CONNECT_FAILED -1 #define TRANS_TRY_CONNECT_AGAIN -2 #define TRANS_IN_PROGRESS -3 /* * Return values of CreateListener (0 is success) */ #define TRANS_CREATE_LISTENER_FAILED -1 #define TRANS_ADDR_IN_USE -2 /* * Return values of Accept (0 is success) */ #define TRANS_ACCEPT_BAD_MALLOC -1 #define TRANS_ACCEPT_FAILED -2 #define TRANS_ACCEPT_MISC_ERROR -3 /* * ResetListener return values */ #define TRANS_RESET_NOOP 1 #define TRANS_RESET_NEW_FD 2 #define TRANS_RESET_FAILURE 3 /* * Function prototypes for the exposed interface */ void TRANS(FreeConnInfo) ( XtransConnInfo /* ciptr */ ); #ifdef TRANS_CLIENT XtransConnInfo TRANS(OpenCOTSClient)( char * /* address */ ); #endif /* TRANS_CLIENT */ #ifdef TRANS_SERVER XtransConnInfo TRANS(OpenCOTSServer)( char * /* address */ ); #endif /* TRANS_SERVER */ #ifdef TRANS_CLIENT XtransConnInfo TRANS(OpenCLTSClient)( char * /* address */ ); #endif /* TRANS_CLIENT */ #ifdef TRANS_SERVER XtransConnInfo TRANS(OpenCLTSServer)( char * /* address */ ); #endif /* TRANS_SERVER */ #ifdef TRANS_REOPEN XtransConnInfo TRANS(ReopenCOTSServer)( int, /* trans_id */ int, /* fd */ char * /* port */ ); XtransConnInfo TRANS(ReopenCLTSServer)( int, /* trans_id */ int, /* fd */ char * /* port */ ); int TRANS(GetReopenInfo)( XtransConnInfo, /* ciptr */ int *, /* trans_id */ int *, /* fd */ char ** /* port */ ); #endif /* TRANS_REOPEN */ int TRANS(SetOption)( XtransConnInfo, /* ciptr */ int, /* option */ int /* arg */ ); #ifdef TRANS_SERVER int TRANS(CreateListener)( XtransConnInfo, /* ciptr */ char *, /* port */ unsigned int /* flags */ ); int TRANS(NoListen) ( char* /* protocol*/ ); int TRANS(ResetListener)( XtransConnInfo /* ciptr */ ); XtransConnInfo TRANS(Accept)( XtransConnInfo, /* ciptr */ int * /* status */ ); #endif /* TRANS_SERVER */ #ifdef TRANS_CLIENT int TRANS(Connect)( XtransConnInfo, /* ciptr */ char * /* address */ ); #endif /* TRANS_CLIENT */ int TRANS(BytesReadable)( XtransConnInfo, /* ciptr */ BytesReadable_t * /* pend */ ); int TRANS(Read)( XtransConnInfo, /* ciptr */ char *, /* buf */ int /* size */ ); int TRANS(Write)( XtransConnInfo, /* ciptr */ char *, /* buf */ int /* size */ ); int TRANS(Readv)( XtransConnInfo, /* ciptr */ struct iovec *, /* buf */ int /* size */ ); int TRANS(Writev)( XtransConnInfo, /* ciptr */ struct iovec *, /* buf */ int /* size */ ); int TRANS(Disconnect)( XtransConnInfo /* ciptr */ ); int TRANS(Close)( XtransConnInfo /* ciptr */ ); int TRANS(CloseForCloning)( XtransConnInfo /* ciptr */ ); int TRANS(IsLocal)( XtransConnInfo /* ciptr */ ); int TRANS(GetMyAddr)( XtransConnInfo, /* ciptr */ int *, /* familyp */ int *, /* addrlenp */ Xtransaddr ** /* addrp */ ); int TRANS(GetPeerAddr)( XtransConnInfo, /* ciptr */ int *, /* familyp */ int *, /* addrlenp */ Xtransaddr ** /* addrp */ ); int TRANS(GetConnectionNumber)( XtransConnInfo /* ciptr */ ); #ifdef TRANS_SERVER int TRANS(MakeAllCOTSServerListeners)( char *, /* port */ int *, /* partial */ int *, /* count_ret */ XtransConnInfo ** /* ciptrs_ret */ ); int TRANS(MakeAllCLTSServerListeners)( char *, /* port */ int *, /* partial */ int *, /* count_ret */ XtransConnInfo ** /* ciptrs_ret */ ); #endif /* TRANS_SERVER */ /* * Function Prototypes for Utility Functions. */ #ifdef X11_t int TRANS(ConvertAddress)( int *, /* familyp */ int *, /* addrlenp */ Xtransaddr ** /* addrp */ ); #endif /* X11_t */ #ifdef ICE_t char * TRANS(GetMyNetworkId)( XtransConnInfo /* ciptr */ ); char * TRANS(GetPeerNetworkId)( XtransConnInfo /* ciptr */ ); #endif /* ICE_t */ int TRANS(GetHostname) ( char * /* buf */, int /* maxlen */ ); #if defined(WIN32) && (defined(TCPCONN) || defined(DNETCONN)) int TRANS(WSAStartup)(); #endif #endif /* _XTRANS_H_ */ @ 1.1 log @Initial revision @ text @d1 1 a1 1 /* $TOG: Xtrans.h /main/31 1998/02/06 15:55:22 kaleb $ */ d6 5 a10 1 All Rights Reserved. d29 1 a29 1 /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.13 1999/06/20 08:41:21 dawes Exp $ */ d60 8 d74 1 a74 1 #if (defined(__STDC__) && !defined(UNIXCPP)) || defined(ANSICPP) d85 1 a85 1 #if (defined(__STDC__) && !defined(UNIXCPP)) || defined(ANSICPP) d94 1 a94 1 #endif /* X11_t */ d97 1 a97 1 #if (defined(__STDC__) && !defined(UNIXCPP)) || defined(ANSICPP) d108 1 a108 1 #if (defined(__STDC__) && !defined(UNIXCPP)) || defined(ANSICPP) d119 1 a119 1 #if (defined(__STDC__) && !defined(UNIXCPP)) || defined(ANSICPP) d130 1 a130 1 #if (defined(__STDC__) && !defined(UNIXCPP)) || defined(ANSICPP) d141 1 a141 1 #if (defined(__STDC__) && !defined(UNIXCPP)) || defined(ANSICPP) d152 1 a152 1 #if (defined(__STDC__) && !defined(UNIXCPP)) || defined(ANSICPP) d164 1 a164 1 #if (defined(__STDC__) && !defined(UNIXCPP)) || defined(ANSICPP) d184 3 d192 1 a192 1 d201 1 a201 1 #if defined(WIN32) || (defined(USG) && !defined(CRAY) && !defined(umips) && !defined(MOTOROLA) && !defined(uniosu) && !defined(__sxg__)) || defined(MINIX) d239 1 d342 2 a343 1 char * /* port */ @ 1.1.1.1 log @Import XFree 3.9.16 @ text @@ 1.1.1.1.4.1 log @ All the changes to get the trunk (which includes 3.9.17) onto the tdfx-1-1 branch. @ text @d25 1 a25 1 /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.14 1999/12/13 02:52:54 robin Exp $ */ a223 1 #define TRANS_IN_PROGRESS -3 @ 1.1.1.2 log @Import of XFree86 3.9.17 @ text @d25 1 a25 1 /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.14 1999/12/13 02:52:54 robin Exp $ */ a223 1 #define TRANS_IN_PROGRESS -3 @ 1.1.1.3 log @Import of XFree86 4.0.1d-pre @ text @d25 1 a25 1 /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.13 1999/06/20 08:41:21 dawes Exp $ */ @ 1.1.1.4 log @Import of XFree86 4.0.1d-pre (2) @ text @d25 1 a25 1 /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.14 1999/12/13 02:52:54 robin Exp $ */ @ 1.1.1.4.20.1 log @Initial merge of trunk onto branch. @ text @d1 1 a1 1 /* $Xorg: Xtrans.h,v 1.3 2000/08/17 19:46:45 cpqbld Exp $ */ d25 1 a25 1 /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.15 2001/01/17 19:43:45 dawes Exp $ */ @ 1.1.1.5 log @Import of XFree86 4.0.99.1 @ text @d1 1 a1 1 /* $Xorg: Xtrans.h,v 1.3 2000/08/17 19:46:45 cpqbld Exp $ */ d25 1 a25 1 /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.15 2001/01/17 19:43:45 dawes Exp $ */ @ 1.1.1.5.4.1 log @merge from trunk. @ text @d25 1 a25 1 /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.17 2001/07/25 15:04:59 dawes Exp $ */ d62 1 a62 1 #if !defined(UNIXCPP) || defined(ANSICPP) d73 1 a73 1 #if !defined(UNIXCPP) || defined(ANSICPP) d85 1 a85 1 #if !defined(UNIXCPP) || defined(ANSICPP) d96 1 a96 1 #if !defined(UNIXCPP) || defined(ANSICPP) d107 1 a107 1 #if !defined(UNIXCPP) || defined(ANSICPP) d118 1 a118 1 #if !defined(UNIXCPP) || defined(ANSICPP) d129 1 a129 1 #if !defined(UNIXCPP) || defined(ANSICPP) d140 1 a140 1 #if !defined(UNIXCPP) || defined(ANSICPP) d152 1 a152 1 #if !defined(UNIXCPP) || defined(ANSICPP) d186 1 a186 1 #if defined(WIN32) || (defined(USG) && !defined(CRAY) && !defined(umips) && !defined(MOTOROLA) && !defined(uniosu) && !defined(__sxg__)) @ 1.1.1.6 log @Import of XFree86 4.1.99.1 @ text @d25 1 a25 1 /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.17 2001/07/25 15:04:59 dawes Exp $ */ d62 1 a62 1 #if !defined(UNIXCPP) || defined(ANSICPP) d73 1 a73 1 #if !defined(UNIXCPP) || defined(ANSICPP) d85 1 a85 1 #if !defined(UNIXCPP) || defined(ANSICPP) d96 1 a96 1 #if !defined(UNIXCPP) || defined(ANSICPP) d107 1 a107 1 #if !defined(UNIXCPP) || defined(ANSICPP) d118 1 a118 1 #if !defined(UNIXCPP) || defined(ANSICPP) d129 1 a129 1 #if !defined(UNIXCPP) || defined(ANSICPP) d140 1 a140 1 #if !defined(UNIXCPP) || defined(ANSICPP) d152 1 a152 1 #if !defined(UNIXCPP) || defined(ANSICPP) d186 1 a186 1 #if defined(WIN32) || (defined(USG) && !defined(CRAY) && !defined(umips) && !defined(MOTOROLA) && !defined(uniosu) && !defined(__sxg__)) @ 1.1.1.6.2.1 log @Initial merge of trunk into mesa-4-0 branch. @ text @d1 1 a1 1 /* $Xorg: Xtrans.h,v 1.4 2001/02/09 02:04:06 xorgcvs Exp $ */ d6 1 a6 5 Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. d25 1 a25 1 /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.18 2001/12/14 19:57:04 dawes Exp $ */ @ 1.1.1.7 log @Import of XFree86 4.2.0 @ text @d1 1 a1 1 /* $Xorg: Xtrans.h,v 1.4 2001/02/09 02:04:06 xorgcvs Exp $ */ d6 1 a6 5 Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. d25 1 a25 1 /* $XFree86: xc/lib/xtrans/Xtrans.h,v 3.18 2001/12/14 19:57:04 dawes Exp $ */ @ 1.1.1.2.8.1 log @Merge 3.9.18 to SMT branch Includes some changes needed to pass the xtest suite Level 3 testing on branch in progress @ text @a52 1 #include a178 11 /* For SMT, the server maintains a flag that indicates when it is sleeping (i.e., waiting in select). The client uses this flag to avoid using the non-SMT transport mechanism. */ #ifdef XF86SMT typedef struct _XtransSmtSrv { volatile CARD32 sleeping; CARD32 pad[7]; } XtransSmtSrv; #endif a472 97 #ifdef XF86SMT #ifdef TRANS_CLIENT int TRANS(SmtInit)( XtransConnInfo /* ciptr */, char * /* buf */, int /* size */, XtransSmtSrv * /* server */, int /* eventBase */, int /* errorBase */ ); int TRANS(SmtOpen)( XtransConnInfo /* ciptr */ ); int TRANS(SmtRequestEvent)( XtransConnInfo /* ciptr */ ); int TRANS(SmtCheckEvent)( XtransConnInfo /* ciptr */, int /* eventType */ ); int TRANS(SmtAvailable)( XtransConnInfo /* ciptr */ ); int TRANS(SmtKickServer)( XtransConnInfo /* ciptr */, int /* force */ ); void * TRANS(SmtGetClientBuf)( XtransConnInfo /* ciptr */ ); void * TRANS(SmtGetServerBuf)( XtransConnInfo /* ciptr */ ); #endif /* TRANS_CLIENT */ #ifdef TRANS_SERVER int TRANS(SmtInit)( XtransConnInfo /* ciptr */, int /* size */, int /* shmid */, XID /* xid */, void * /* client */ ); int TRANS(SmtOpen)( XtransConnInfo /* ciptr */, char * /* buf */ ); int TRANS(SmtClient)( XtransConnInfo /* ciptr */ ); XID TRANS(SmtGetClientId)( XtransConnInfo /* ciptr */ ); int TRANS(SmtReadPointers)( XtransConnInfo /* ciptr */, int /* gotnow */, char ** /* buffer */, char ** /* bufptr */, int * /* bufcnt */, int * /* size */ ); int TRANS(SmtSelect)( int /* n */, fd_set * /* read_fds */, fd_set * /* write_fds */, fd_set * /* except_fds */, struct timeval * /* timeout */ ); #endif /* TRANS_SERVER */ #endif /* XF86SMT */ @ 1.1.1.2.2.1 log @Preliminary work on experimental prototype @ text @a469 11 #ifdef XF86SMT int TRANS(SmtOpen)( XtransConnInfo /* ciptr */ ); int TRANS(SmtClose)( XtransConnInfo /* ciptr */ ); #endif @ 1.1.1.2.2.2 log @Implement prototype of smt with double copies (very slow) @ text @d472 2 a473 4 TRANS(SmtStart)( XtransConnInfo /* ciptr */, char * /* buf */, int /* size */ a474 1 @ 1.1.1.2.2.3 log @Prototype addition of event so client can determine when send buffer is empty @ text @a470 27 #ifdef TRANS_CLIENT int TRANS(SmtCheckEvent)( XtransConnInfo /* ciptr */, int /* eventType */ ); int TRANS(SmtUsing)( XtransConnInfo /* ciptr */ ); int TRANS(SmtRequestEvent)( XtransConnInfo /* ciptr */ ); int TRANS(SmtStart)( XtransConnInfo /* ciptr */, char * /* buf */, int /* size */, int /* eventBase */, int /* errorBase */ ); #endif #ifdef TRANS_SERVER d475 1 a475 2 int /* size */, void * /* client */ a476 1 #endif @ 1.1.1.2.2.4 log @Added SmtAvailable routine for polling free space in SMT area. @ text @a488 5 TRANS(SmtAvailable)( XtransConnInfo /* ciptr */ ); int @ 1.1.1.2.2.5 log @Move all SMT functions into Xtranssmt.c @ text @d473 3 a475 6 TRANS(SmtStart)( XtransConnInfo /* ciptr */, char * /* buf */, int /* size */, int /* eventBase */, int /* errorBase */ d479 1 a479 1 TRANS(SmtRequestEvent)( d484 2 a485 3 TRANS(SmtCheckEvent)( XtransConnInfo /* ciptr */, int /* eventType */ d489 1 a489 1 TRANS(SmtUsing)( d494 6 a499 2 TRANS(SmtAvailable)( XtransConnInfo /* ciptr */ d501 1 a501 1 #endif /* TRANS_CLIENT */ d510 7 a516 2 #endif /* TRANS_SERVER */ #endif /* XF86SMT */ @ 1.1.1.2.2.6 log @Add SmtSelect routine to handle pending data in SMT area. Back out write if non-SMT transport full (can be further optimized). @ text @a509 9 int TRANS(SmtSelect)( int /* n */, fd_set * /* read_fds */, fd_set * /* write_fds */, fd_set * /* except_fds */, struct timeval * /* timeout */ ); @ 1.1.1.2.2.7 log @Eliminate server-side copies @ text @a470 5 int TRANS(SmtClient)( XtransConnInfo /* ciptr */ ); d493 5 a501 1 a508 10 ); int TRANS(SmtReadPointers)( XtransConnInfo /* ciptr */, int /* gotnow */, char ** /* buffer */, char ** /* bufptr */, int * /* bufcnt */, int * /* size */ @ 1.1.1.2.2.8 log @Add global read only region so that clients can tell when server is sleeping. Add call to wake up sleeping server before client sleeps. Clean up SmtStart and SmtClose code. Make server look for pending input before sleeping. @ text @a52 1 #include a177 6 #ifdef XF86SMT typedef struct _XtransSmtSrv { volatile CARD32 sleeping; } XtransSmtSrv; #endif a481 1 XtransSmtSrv * /* server */, a499 6 ); int TRANS(SmtKickServer)( XtransConnInfo /* ciptr */, int /* always */ @ 1.1.1.2.2.9 log @Fix bug where clearing pipe accidentally overwrote data. Add some statistics to help with performance tuning. @ text @d57 1 @ 1.1.1.2.2.9.2.1 log @Stage 2d optimizations @ text @d477 5 a517 5 TRANS(SmtClient)( XtransConnInfo /* ciptr */ ); int a532 6 ); int TRANS(SmtSetPointers)( XtransConnInfo /* ciptr */, char * /* bufptr */ @ 1.1.1.2.2.9.2.2 log @Clean up initialization and resource management @ text @a475 4 #if defined(WIN32) && (defined(TCPCONN) || defined(DNETCONN)) int TRANS(WSAStartup)(); #endif d479 1 a479 1 TRANS(SmtInit)( a488 5 TRANS(SmtOpen)( XtransConnInfo /* ciptr */ ); int a512 14 TRANS(SmtInit)( XtransConnInfo /* ciptr */, int /* size */, int /* id */, void * /* client */ ); int TRANS(SmtOpen)( XtransConnInfo /* ciptr */, char * /* buf */ ); int d518 5 a522 7 TRANS(SmtGetClientId)( XtransConnInfo /* ciptr */ ); char * TRANS(SmtGetClientBuf)( XtransConnInfo /* ciptr */ d551 4 @ 1.1.1.2.2.9.2.3 log @Implement improved resource tracking @ text @d525 1 a525 2 int /* shmid */, XID /* xid */, d540 1 a540 1 XID d542 5 @ 1.1.1.2.2.9.2.4 log @Remove debugging code Add comments @ text @a177 4 /* For SMT, the server maintains a flag that indicates when it is sleeping (i.e., waiting in select). The client uses this flag to avoid using the non-SMT transport mechanism. */ a180 1 CARD32 pad[7]; d191 1 d515 2 a516 1 XtransConnInfo /* ciptr */ d554 6 @ 1.1.1.2.2.10 log @Eliminate most client-side copies. This code contains a great deal of debugging code and should be considered an example prototype. @ text @a481 5 int TRANS(SmtWrapPointer)( XtransConnInfo /* ciptr */ ); a493 10 TRANS(SmtWrapOk)( XtransConnInfo /* ciptr */ ); int TRANS(SmtBeforeWrapPointer)( XtransConnInfo /* ciptr */ ); int a512 26 ); int TRANS(SmtSetWritePointer)( XtransConnInfo /* ciptr */, char* /* pt */ ); char * TRANS(SmtGetWritePointer)( XtransConnInfo /* ciptr */ ); char * TRANS(SmtGetMaxWritePointer)( XtransConnInfo /* ciptr */ ); char * TRANS(SmtGetBufferPointer)( XtransConnInfo /* ciptr */ ); int TRANS(SmtAvailableAtStart)( XtransConnInfo /* ciptr */ @