|
|
|
@ -1,8 +1,7 @@
|
|
|
|
|
%!PS-Adobe-2.0
|
|
|
|
|
%%Creator: dvipsk 5.86 p1.5d Copyright 1996-2001 ASCII Corp.(www-ptex@ascii.co.jp)
|
|
|
|
|
%%based on dvipsk 5.86 Copyright 1999 Radical Eye Software (www.radicaleye.com)
|
|
|
|
|
%%Creator: dvips(k) 5.86 Copyright 1999 Radical Eye Software
|
|
|
|
|
%%Title: phpgw_server.dvi
|
|
|
|
|
%%Pages: 8
|
|
|
|
|
%%Pages: 6
|
|
|
|
|
%%PageOrder: Ascend
|
|
|
|
|
%%BoundingBox: 0 0 612 792
|
|
|
|
|
%%DocumentFonts: Helvetica-Bold Times-Roman Courier Times-Italic
|
|
|
|
@ -10,7 +9,7 @@
|
|
|
|
|
%DVIPSWebPage: (www.radicaleye.com)
|
|
|
|
|
%DVIPSCommandLine: dvips -t letter -o phpgw_server.ps phpgw_server.dvi
|
|
|
|
|
%DVIPSParameters: dpi=600, compressed
|
|
|
|
|
%DVIPSSource: TeX output 2001.09.03:2156
|
|
|
|
|
%DVIPSSource: TeX output 2003.12.28:0956
|
|
|
|
|
%%BeginProcSet: texc.pro
|
|
|
|
|
%!
|
|
|
|
|
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
|
|
|
|
@ -54,32 +53,32 @@ SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
|
|
|
|
|
userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
|
|
|
|
|
1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
|
|
|
|
|
index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
|
|
|
|
|
/dir 0 def/dyy{/dir 0 def}B/dyt{/dir 1 def}B/dty{/dir 2 def}B/dtt{/dir 3
|
|
|
|
|
def}B/p{dir 2 eq{-90 rotate show 90 rotate}{dir 3 eq{-90 rotate show 90
|
|
|
|
|
rotate}{show}ifelse}ifelse}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0
|
|
|
|
|
N/Ry 0 N/V{}B/RV/v{/Ry X/Rx X V}B statusdict begin/product where{pop
|
|
|
|
|
false[(Display)(NeXT)(LaserWriter 16/600)]{A length product length le{A
|
|
|
|
|
length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}
|
|
|
|
|
forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{
|
|
|
|
|
BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat
|
|
|
|
|
{BDot}imagemask grestore}}ifelse B/QV{gsave newpath transform round exch
|
|
|
|
|
round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0
|
|
|
|
|
rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B
|
|
|
|
|
/M{S p delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}
|
|
|
|
|
B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p
|
|
|
|
|
-3 w}B/n{p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{
|
|
|
|
|
0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
|
|
|
|
|
/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
|
|
|
|
|
/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
|
|
|
|
|
(LaserWriter 16/600)]{A length product length le{A length product exch 0
|
|
|
|
|
exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
|
|
|
|
|
end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
|
|
|
|
|
grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
|
|
|
|
|
imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
|
|
|
|
|
exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
|
|
|
|
|
fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
|
|
|
|
|
delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
|
|
|
|
|
B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
|
|
|
|
|
p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
|
|
|
|
|
rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
|
|
|
|
|
|
|
|
|
|
%%EndProcSet
|
|
|
|
|
%%BeginProcSet: 8r.enc
|
|
|
|
|
% @@psencodingfile@{
|
|
|
|
|
% author = "S. Rahtz, P. MacKay, Alan Jeffrey, B. Horn, K. Berry",
|
|
|
|
|
% version = "0.6",
|
|
|
|
|
% date = "1 July 1998",
|
|
|
|
|
% date = "22 June 1996",
|
|
|
|
|
% filename = "8r.enc",
|
|
|
|
|
% email = "tex-fonts@@tug.org",
|
|
|
|
|
% docstring = "Encoding for TrueType or Type 1 fonts
|
|
|
|
|
% to be used with TeX."
|
|
|
|
|
% email = "kb@@mail.tug.org",
|
|
|
|
|
% address = "135 Center Hill Rd. // Plymouth, MA 02360",
|
|
|
|
|
% codetable = "ISO/ASCII",
|
|
|
|
|
% checksum = "119 662 4424",
|
|
|
|
|
% docstring = "Encoding for TrueType or Type 1 fonts to be used with TeX."
|
|
|
|
|
% @}
|
|
|
|
|
%
|
|
|
|
|
% Idea is to have all the characters normally included in Type 1 fonts
|
|
|
|
@ -107,8 +106,7 @@ B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p
|
|
|
|
|
% upward-compatible revisions, if someday more characters are generally
|
|
|
|
|
% available.
|
|
|
|
|
%
|
|
|
|
|
% (5) hyphen appears twice for compatibility with both
|
|
|
|
|
% ASCII and Windows.
|
|
|
|
|
% (5) hyphen appears twice for compatibility with both ASCII and Windows.
|
|
|
|
|
%
|
|
|
|
|
/TeXBase1Encoding [
|
|
|
|
|
% 0x00 (encoded characters from Adobe Standard not in Windows 3.1)
|
|
|
|
@ -126,7 +124,7 @@ B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p
|
|
|
|
|
/.notdef /.notdef /.notdef /.notdef
|
|
|
|
|
/.notdef /.notdef /.notdef /.notdef
|
|
|
|
|
% very contentious; it's so painful not having quoteleft and quoteright
|
|
|
|
|
% at 96 and 145 that we move the things normally found there to here.
|
|
|
|
|
% at 96 and 145 that we move the things normally found there down to here.
|
|
|
|
|
/grave /quotesingle
|
|
|
|
|
% 0x20 (ASCII begins)
|
|
|
|
|
/space /exclam /quotedbl /numbersign
|
|
|
|
@ -197,15 +195,15 @@ B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p
|
|
|
|
|
TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
|
|
|
|
|
index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
|
|
|
|
|
exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]/Metrics
|
|
|
|
|
exch def dict begin 0 1 255{exch dup type/integertype ne{pop pop 1 sub
|
|
|
|
|
exch def dict begin Encoding{exch dup type/integertype ne{pop pop 1 sub
|
|
|
|
|
dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get div def}
|
|
|
|
|
ifelse}for Metrics/Metrics currentdict end def[2 index currentdict end
|
|
|
|
|
definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
|
|
|
|
|
sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
|
|
|
|
|
mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
|
|
|
|
|
exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
|
|
|
|
|
forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
|
|
|
|
|
end
|
|
|
|
|
ifelse}forall Metrics/Metrics currentdict end def[2 index currentdict
|
|
|
|
|
end definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{
|
|
|
|
|
dup sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1
|
|
|
|
|
roll mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def
|
|
|
|
|
dup[exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}
|
|
|
|
|
if}forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}
|
|
|
|
|
def end
|
|
|
|
|
|
|
|
|
|
%%EndProcSet
|
|
|
|
|
%%BeginProcSet: special.pro
|
|
|
|
@ -316,34 +314,32 @@ setcmykcolor}DC/White{0 0 0 0 setcmykcolor}DC end
|
|
|
|
|
|
|
|
|
|
%%EndProcSet
|
|
|
|
|
TeXDict begin 40258431 52099146 1000 600 600 (phpgw_server.dvi)
|
|
|
|
|
@start /Fa 134[ 37 3[ 42 23 1[ 32 1[ 42 42 2[ 23 3[ 42
|
|
|
|
|
42 1[ 37 42 2[ 42 8[ 51 69 3[ 42 51 1[ 51 60 1[ 69 46
|
|
|
|
|
4[ 60 3[ 55 1[ 51 8[ 42 42 42 42 42 42 42 42 1[ 23 1[ 28
|
|
|
|
|
45[{ TeXBase1Encoding ReEncodeFont} 33 83.022 /Times-Italic
|
|
|
|
|
rf /Fb 133[ 45 45 45 45 45 45 45 45 45 45 45 45 45 45
|
|
|
|
|
45 45 45 45 45 45 45 45 45 45 45 45 1[ 45 4[ 45 45 45
|
|
|
|
|
45 45 45 45 45 45 45 45 45 45 45 45 2[ 45 45 45 1[ 45
|
|
|
|
|
45 45 45 45 1[ 45 45 45 45 1[ 45 45 45 45 45 45 45 45
|
|
|
|
|
45 45 45 45 45 45 10[ 45 34[{ TeXBase1Encoding ReEncodeFont} 69
|
|
|
|
|
74.7198 /Courier rf /Fc 134[ 55 3[ 61 33 55 3[ 61 61
|
|
|
|
|
89 28 2[ 28 1[ 61 1[ 55 50[ 55 55 2[ 28 46[{
|
|
|
|
|
TeXBase1Encoding ReEncodeFont} 14 99.6264 /Helvetica-Bold
|
|
|
|
|
rf /Fd 130[ 40 1[ 40 37 42 42 60 42 42 23 32 28 42 42
|
|
|
|
|
42 42 65 23 42 1[ 23 42 42 28 37 42 37 42 37 1[ 42 6[ 60
|
|
|
|
|
78 1[ 60 51 46 55 1[ 46 60 60 74 51 2[ 28 60 60 46 51
|
|
|
|
|
60 55 55 60 6[ 23 3[ 42 1[ 42 42 3[ 23 21 28 21 2[ 28
|
|
|
|
|
28 28 2[ 42 32[ 46 46 2[{ TeXBase1Encoding ReEncodeFont} 62
|
|
|
|
|
83.022 /Times-Roman rf /Fe 138[ 73 40 4[ 73 73 4[ 33
|
|
|
|
|
73 73 1[ 66 73 66 1[ 66 20[ 73 26[ 66 2[ 33 46[{
|
|
|
|
|
TeXBase1Encoding ReEncodeFont} 14 119.552 /Helvetica-Bold
|
|
|
|
|
rf /Ff 134[ 80 2[ 80 88 48 80 56 88 1[ 88 88 128 40 2[ 40
|
|
|
|
|
3[ 80 1[ 80 1[ 80 13[ 96 5[ 120 10[ 104 14[ 80 80 80
|
|
|
|
|
2[ 40 46[{ TeXBase1Encoding ReEncodeFont} 22 143.462
|
|
|
|
|
/Helvetica-Bold rf /Fg 134[ 115 3[ 126 69 1[ 80 1[ 126
|
|
|
|
|
126 2[ 57 3[ 126 126 1[ 115 126 2[ 115 8[ 138 195 3[ 138
|
|
|
|
|
149 1[ 138 161 1[ 172 126 4[ 161 3[ 149 1[ 149 17[ 57
|
|
|
|
|
1[ 69 45[{ TeXBase1Encoding ReEncodeFont} 25 206.584
|
|
|
|
|
/Helvetica-Bold rf end
|
|
|
|
|
@start /Fa 134[37 3[42 23 1[32 1[42 42 2[23 3[42 42 1[37
|
|
|
|
|
42 2[42 8[51 69 3[42 51 1[51 60 1[69 46 4[60 3[55 1[51
|
|
|
|
|
10[42 42 42 42 42 42 1[23 1[28 45[{TeXBase1Encoding ReEncodeFont}31
|
|
|
|
|
83.022 /Times-Italic rf /Fb 133[45 45 45 45 45 45 45
|
|
|
|
|
45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45
|
|
|
|
|
45 1[45 4[45 45 45 45 45 45 45 45 45 45 45 45 45 45 45
|
|
|
|
|
2[45 45 45 1[45 45 45 45 45 1[45 45 45 45 1[45 45 45
|
|
|
|
|
45 45 45 45 45 45 45 45 45 45 45 10[45 34[{
|
|
|
|
|
TeXBase1Encoding ReEncodeFont}69 74.7198 /Courier rf
|
|
|
|
|
/Fc 134[46 3[51 28 46 3[51 51 74 23 2[23 1[51 1[46 50[46
|
|
|
|
|
46 2[23 46[{TeXBase1Encoding ReEncodeFont}14 83.022 /Helvetica-Bold
|
|
|
|
|
rf /Fd 130[40 1[40 37 42 42 60 42 42 23 32 28 42 42 42
|
|
|
|
|
42 65 23 42 1[23 42 42 28 37 42 37 42 37 1[42 6[60 78
|
|
|
|
|
1[60 51 46 55 1[46 60 60 74 51 2[28 60 60 46 51 60 55
|
|
|
|
|
55 60 6[23 3[42 1[42 42 3[23 21 28 21 2[28 28 28 2[42
|
|
|
|
|
32[46 46 2[{TeXBase1Encoding ReEncodeFont}62 83.022 /Times-Roman
|
|
|
|
|
rf /Fe 138[61 33 4[61 61 4[28 61 61 1[55 61 55 1[55 20[61
|
|
|
|
|
26[55 2[28 46[{TeXBase1Encoding ReEncodeFont}14 99.6264
|
|
|
|
|
/Helvetica-Bold rf /Ff 134[66 2[66 73 40 66 47 73 1[73
|
|
|
|
|
73 106 33 2[33 3[66 1[66 1[66 13[80 5[100 10[86 14[66
|
|
|
|
|
66 66 2[33 46[{TeXBase1Encoding ReEncodeFont}22 119.552
|
|
|
|
|
/Helvetica-Bold rf /Fg 134[115 3[126 69 1[80 1[126 126
|
|
|
|
|
2[57 3[126 126 1[115 126 2[115 8[138 195 3[138 149 1[138
|
|
|
|
|
161 1[172 126 4[161 3[149 1[149 17[57 1[69 45[{
|
|
|
|
|
TeXBase1Encoding ReEncodeFont}25 206.584 /Helvetica-Bold
|
|
|
|
|
rf end
|
|
|
|
|
%%EndProlog
|
|
|
|
|
%%BeginSetup
|
|
|
|
|
%%Feature: *Resolution 600dpi
|
|
|
|
@ -354,249 +350,218 @@ letter
|
|
|
|
|
|
|
|
|
|
%%EndSetup
|
|
|
|
|
%%Page: 1 1
|
|
|
|
|
1 0 bop Black 0 TeXcolorgray Black Black Fg 579 647 a(phpGr) l(oupW) -8
|
|
|
|
|
b(are) 58 b(XML-RPC/SO) -10 b(AP) 1497 915 y(Methodolog) r(y) p
|
|
|
|
|
Ff -2 1382 a(1.) 39 b(System) f(le) n(vel) h(request) n(s) p
|
|
|
|
|
Fe -2 1710 a(1.1.) 34 b(Login) g(and) g(authentica) r(tion) p
|
|
|
|
|
Fd 396 1878 a(Authenticatio) n(n) 20 b(for) g(user) g(logins) g(is) h
|
|
|
|
|
(hand) n(led) g(intern) n(ally) g(no) e(dif) n(feren) n(tly) h(than) g
|
|
|
|
|
(for) g(the) g(typical) g(php) n(Group) n(W) -7 b(are) 396
|
|
|
|
|
1986 y(login) 20 b(via) g(web) g(bro) n(wser) -7 b(.) 21
|
|
|
|
|
b(Serv) o(er) e(logins,) h(added) f(for) h(XML-RPC) g(and) g(SO) m(AP)
|
|
|
|
|
-9 b(,) 21 b(are) f(only) f(slightly) h(dif) n(fer) n(ent.) g(F) o(or)
|
|
|
|
|
396 2094 y(either) g(proto) n(col,) g(user) g(and) g(serv) o(er) f
|
|
|
|
|
(login) h(and) f(authenticatio) n(n) i(and) e(subsequen) n(t) i(requ) n
|
|
|
|
|
(ests) h(are) e(hand) n(led) g(by) g(their) 396 2202
|
|
|
|
|
y(respecti) n(v) o(e) f(serv) o(er) h(app) n(s,) h(xmlrpc) n(.php) f
|
|
|
|
|
(and) f(soap.ph) n(p.) h(A) h(serv) o(er) e(is) i(identi\002ed) f(by) f
|
|
|
|
|
(a) i(custom) f(HTTP) g(header) -5 b(,) 396 2309 y(without) 20
|
|
|
|
|
b(which) f(a) i(norm) n(al) g(user) f(login) f(will) i(be) g(und) n
|
|
|
|
|
(ertak) o(en.) 396 2459 y(A) g(client) f(or) g(serv) o(er) f(sends) i
|
|
|
|
|
(the) f(appr) n(opriate) g(XML-RPC) g(or) g(SO) m(AP) h(pack) o(et) f
|
|
|
|
|
(contain) n(ing) g(host,) g(user) m(,) g(and) f(passw) o(ord) 396
|
|
|
|
|
2567 y(inform) n(ation) h(to) g(the) h(php) n(gw) f(serv) o(er) -5
|
|
|
|
|
b(.) 20 b(The) g(serv) o(er) f(then) h(assigns) g(a) h(sessionid) f
|
|
|
|
|
(and) g(k) o(e) o(y) -5 b(,) 19 b(which) g(is) j(retur) n(ned) e(to) g
|
|
|
|
|
(the) 396 2675 y(client) g(in) h(the) f(appro) n(priate) g(form) n(at.)
|
|
|
|
|
396 2824 y(Our) g(curren) n(t) h(method) e(for) g(authenticatin) n(g) i
|
|
|
|
|
(requ) n(ests) g(after) f(successful) g(login) g(is) h(via) f(the) g
|
|
|
|
|
(Author) n(ization:) g(Basic) 396 2932 y(HTTP) g(header) f(to) i(be) f
|
|
|
|
|
(sent) g(by) g(the) g(client) g(or) f(requesting) g(serv) o(er) -7
|
|
|
|
|
b(.) 21 b(The) f(form) n(at) h(of) f(this) g(header) f(is) i(a) g
|
|
|
|
|
(base64) e(encod) n(ing) 396 3040 y(of) h(the) g(assigned) g(sessionid)
|
|
|
|
|
g(and) g(kp3) f(v) n(ariables,) g(seperated) h(by) f(a) i(':'.) 396
|
|
|
|
|
3189 y(Further) e(security) h(may) g(be) g(obtain) n(ed) h(by) e(using)
|
|
|
|
|
h(SSL) h(on) f(the) g(client) g(and) g(serv) o(er) -7
|
|
|
|
|
b(.) 21 b(In) f(the) g(future,) f(we) i(may) 396 3297
|
|
|
|
|
y(encryp) n(t/descrypt) e(the) i(data) f(on) f(either) h(end,) g(or) g
|
|
|
|
|
(at) g(least) h(pro) o(v) n(ide) f(this) h(as) g(an) f(option) n(.) h
|
|
|
|
|
(The) f(sessionid) g(and) f(k) o(e) o(y) 396 3405 y(v) n(ariables) h
|
|
|
|
|
(will) h(mak) o(e) e(this) i(possible,) f(and) f(relati) n(v) o(ely) g
|
|
|
|
|
(secure.) p Fc 396 3693 a(1.1.1.) 28 b(syst) r(em.logi) n(n) p
|
|
|
|
|
Fd 396 3850 a(The) 20 b(\002rst) h(reque) n(st) h(a) e(client) g(will) h
|
|
|
|
|
(mak) o(e) f(is) h(the) f(system.login) f(method) n(.) i(Here) f(is) h
|
|
|
|
|
(a) g(sample) f(of) g(a) g(serv) o(er) f(login) h(pack) o(et) 396
|
|
|
|
|
3958 y(in) h(XML-RPC:) p Fb 396 4138 a(<?xml) 44 b(version="1.) n(0"?>)
|
|
|
|
|
396 4236 y(<methodCall) n(>) 396 4333 y(<methodName) n(>system.logi) n
|
|
|
|
|
(n</methodNam) n(e>) 396 4430 y(<params>) 396 4527 y(<param>) 396
|
|
|
|
|
4624 y(<value><str) n(uct>) 396 4721 y(<member><na) n(me>server_na) n
|
|
|
|
|
(me</name>) 396 4818 y(<value><str) n(ing>my.host.) n(name</string) n
|
|
|
|
|
(></value>) p Black Fa 3842 5278 a(1) p Black 90 rotate
|
|
|
|
|
dyy eop
|
|
|
|
|
1 0 bop Black 0 TeXcolorgray Black Black 711 140 a Fg(eGr)l(oupW)-8
|
|
|
|
|
b(are)57 b(XML-RPC/SO)-10 b(AP)1497 409 y(Methodology)-2
|
|
|
|
|
826 y Ff(1.)34 b(System)g(le)n(vel)h(requests)396 1114
|
|
|
|
|
y Fe(1.1.)28 b(Login)f(and)h(authentication)396 1271
|
|
|
|
|
y Fd(Authentication)18 b(for)i(user)g(logins)g(is)h(handled)e
|
|
|
|
|
(internally)g(no)g(dif)n(ferently)f(than)i(for)g(the)g(typical)g
|
|
|
|
|
(eGroupW)-7 b(are)19 b(login)396 1379 y(via)h(web)h(bro)n(wser)-5
|
|
|
|
|
b(.)19 b(Serv)o(er)g(logins,)h(added)f(for)g(XML-RPC)i(and)f(SO)m(AP)-9
|
|
|
|
|
b(,)20 b(are)g(only)g(slightly)f(dif)n(ferent.)g(F)o(or)h(either)396
|
|
|
|
|
1487 y(protocol,)e(user)j(and)e(serv)o(er)h(login)f(and)h
|
|
|
|
|
(authentication)e(and)h(subsequent)g(requests)h(are)g(handled)f(by)g
|
|
|
|
|
(their)396 1595 y(respecti)n(v)o(e)g(serv)o(er)h(apps,)f(xmlrpc.php)f
|
|
|
|
|
(and)h(soap.php.)f(A)j(serv)o(er)e(is)i(identi\002ed)f(by)f(a)i(custom)
|
|
|
|
|
f(HTTP)g(header)m(,)396 1703 y(without)g(which)f(a)i(normal)e(user)h
|
|
|
|
|
(login)f(will)i(be)g(undertak)o(en.)396 1853 y(A)g(client)f(or)g(serv)o
|
|
|
|
|
(er)f(sends)i(the)f(appropriate)e(XML-RPC)i(or)g(SO)m(AP)h(pack)o(et)f
|
|
|
|
|
(containing)e(host,)i(user)m(,)g(and)f(passw)o(ord)396
|
|
|
|
|
1961 y(information)f(to)i(the)h(phpgw)d(serv)o(er)-5
|
|
|
|
|
b(.)20 b(The)g(serv)o(er)f(then)h(assigns)g(a)h(sessionid)f(and)g(k)o
|
|
|
|
|
(e)o(y)-5 b(,)19 b(which)g(is)j(returned)c(to)i(the)396
|
|
|
|
|
2068 y(client)g(in)h(the)f(appropriate)e(format.)396
|
|
|
|
|
2218 y(Our)i(current)f(method)g(for)g(authenticating)g(requests)g
|
|
|
|
|
(after)h(successful)g(login)g(is)h(via)f(the)g(Authorization:)e(Basic)
|
|
|
|
|
396 2326 y(HTTP)i(header)f(to)i(be)f(sent)g(by)g(the)g(client)g(or)f
|
|
|
|
|
(requesting)g(serv)o(er)-5 b(.)19 b(The)h(format)f(of)h(this)g(header)f
|
|
|
|
|
(is)i(a)g(base64)e(encoding)396 2434 y(of)h(the)g(assigned)g(sessionid)
|
|
|
|
|
g(and)g(kp3)f(v)n(ariables,)g(seperated)h(by)f(a)i(':'.)396
|
|
|
|
|
2583 y(Further)e(security)h(may)g(be)g(obtained)f(by)g(using)h(SSL)h
|
|
|
|
|
(on)f(the)g(client)g(and)g(serv)o(er)-5 b(.)19 b(In)h(the)g(future,)f
|
|
|
|
|
(we)i(may)396 2691 y(encrypt/descrypt)c(the)k(data)f(on)f(either)h
|
|
|
|
|
(end,)g(or)g(at)g(least)h(pro)o(vide)d(this)j(as)g(an)f(option.)f(The)h
|
|
|
|
|
(sessionid)g(and)f(k)o(e)o(y)396 2799 y(v)n(ariables)h(will)h(mak)o(e)e
|
|
|
|
|
(this)i(possible,)f(and)f(relati)n(v)o(ely)g(secure.)396
|
|
|
|
|
3052 y Fc(1.1.1.)24 b(system.login)396 3202 y Fd(The)c(\002rst)h
|
|
|
|
|
(request)f(a)g(client)g(will)h(mak)o(e)f(is)h(the)f(system.login)f
|
|
|
|
|
(method.)g(Here)h(is)h(a)g(sample)f(of)g(a)g(serv)o(er)f(login)h(pack)o
|
|
|
|
|
(et)396 3310 y(in)h(XML-RPC:)396 3490 y Fb(<?xml)44 b(version="1.0"?>)
|
|
|
|
|
396 3587 y(<methodCall>)396 3684 y
|
|
|
|
|
(<methodName>system.login</methodName>)396 3781 y(<params>)396
|
|
|
|
|
3878 y(<param>)396 3976 y(<value><struct>)396 4073 y
|
|
|
|
|
(<member><name>server_name</name>)396 4170 y
|
|
|
|
|
(<value><string>my.host.name</string></val)o(ue>)396
|
|
|
|
|
4267 y(</member>)396 4364 y(<member><name>username</name>)396
|
|
|
|
|
4461 y(<value><string>bubba</string></value>)396 4558
|
|
|
|
|
y(</member>)396 4655 y(<member><name>password</name>)396
|
|
|
|
|
4753 y(<value><string>gump</string></value>)396 4850
|
|
|
|
|
y(</member>)g(</struct></value>)396 4947 y(</param>)396
|
|
|
|
|
5044 y(</params>)396 5141 y(</methodCall>)p Black 3842
|
|
|
|
|
5638 a Fa(1)p Black eop
|
|
|
|
|
%%Page: 2 2
|
|
|
|
|
2 1 bop Black 0 TeXcolorgray Black Fa 2326 67 a(php) n(Gr) l(oupW) -8
|
|
|
|
|
b(ar) m(e) 20 b(XML-RPC/SO) -5 b(AP) 20 b(Methodo) n(lo) o(gy) p
|
|
|
|
|
Black Fb 396 579 a(</member>) 396 676 y(<member><na) n(me>username<) n
|
|
|
|
|
(/name>) 396 773 y(<value><str) n(ing>bubba</s) n(tring></valu) n(e>)
|
|
|
|
|
396 870 y(</member>) 396 967 y(<member><na) n(me>password<) n(/name>)
|
|
|
|
|
396 1065 y(<value><str) n(ing>gump</st) n(ring></value) n(>) 396
|
|
|
|
|
1162 y(</member>) 44 b(</struc) n(t></value>) 396 1259
|
|
|
|
|
y(</param>) 396 1356 y(</params>) 396 1453 y(</methodCal) n(l>) p
|
|
|
|
|
Fd 396 1741 a(And) 20 b(the) g(same) h(in) f(SO) m(AP:) p
|
|
|
|
|
Fb 396 1921 a(<?xml) 44 b(version="1.) n(0"?>) 396 2019
|
|
|
|
|
y(<SOAP-ENV:E) n(nvelope) 396 2116 y(xmlns:SOAP-) n(ENV="http://) n
|
|
|
|
|
(schemas.xmls) n(oap.org/soap) n(/envelope/") f(xmlns:xsi=") n
|
|
|
|
|
(http://www.w) n(3.org/1999/X) n(MLSchema-) 396 2213
|
|
|
|
|
y(instance") h(xmlns:x) n(sd="http://w) n(ww.w3.org/19) n(99/XMLSchema)
|
|
|
|
|
n(") h(xmlns:SOAP) n(-ENC="http:) n(//schemas.xm) n(lsoap.org/so) n
|
|
|
|
|
(ap/encoding/) n(") g(xmlns:si=") n(http://soapi) n(nterop.org/x) n
|
|
|
|
|
(sd") 396 2310 y(xmlns:ns6=") n(http://soapi) n(nterop.org") e
|
|
|
|
|
(SOAP-ENV:enc) n(odingStyle=") n(http://sche) n(mas.xmlsoap.) n
|
|
|
|
|
(org/soap/enc) n(oding/">) 396 2407 y(<SOAP-ENV:B) n(ody>) i(<ns6:sy) n
|
|
|
|
|
(stem_login>) 396 2504 y(<server_nam) n(e) g(xsi:type=") n
|
|
|
|
|
(:string">my.) n(host.name</s) n(erver_name>) 396 2601
|
|
|
|
|
y(<username) f(xsi:typ) n(e=":string">) n(bubba</usern) n(ame>) 396
|
|
|
|
|
2698 y(<password) g(xsi:typ) n(e=":string">) n(gump</passwo) n(rd>) 396
|
|
|
|
|
2796 y(</ns6:syste) n(m_login>) 396 2893 y(</SOAP-ENV:) n(Body>) 396
|
|
|
|
|
2990 y(</SOAP-ENV:) n(Envelope>) p Fd 396 3278 a(The) 20
|
|
|
|
|
b(same) g(style) h(of) f(pack) o(et) g(w) o(ould) f(be) h(requir) n(ed)
|
|
|
|
|
h(for) e(a) i(user/client) e(login.) h(A) g(successful) g(login) g
|
|
|
|
|
(should) f(yield) h(the) 396 3386 y(follo) n(wing) f(reply) n(:) p
|
|
|
|
|
Fb 396 3566 a(<methodResp) n(onse>) 396 3663 y(<params>) 396
|
|
|
|
|
3760 y(<param>) 396 3857 y(<value><str) n(uct>) 396 3955
|
|
|
|
|
y(<member><na) n(me>sessionid) n(</name>) 396 4052 y(<value><str) n
|
|
|
|
|
(ing>cf5c5534) n(307562fc5791) n(5608377db007) n(</string></v) n(alue>)
|
|
|
|
|
396 4149 y(</member>) 396 4246 y(<member><na) n(me>kp3</name) n(>) 396
|
|
|
|
|
4343 y(<value><str) n(ing>2fe54daa) n(11c8d5211678) n(8aa3f93cb70e) n
|
|
|
|
|
(</string></v) n(alue>) 396 4440 y(</member>) 396 4537
|
|
|
|
|
y(</struct></) n(value>) 396 4635 y(</param>) 396 4732
|
|
|
|
|
y(</params>) 396 4829 y(</methodRes) n(ponse>) p Black
|
|
|
|
|
Fa 3842 5278 a(2) p Black 90 rotate dyy eop
|
|
|
|
|
2 1 bop Black 0 TeXcolorgray Black 2413 -132 a Fa(eGr)l(oupW)-8
|
|
|
|
|
b(ar)m(e)20 b(XML-RPC/SO)-5 b(AP)20 b(Methodolo)o(gy)p
|
|
|
|
|
Black 396 263 a Fd(And)g(the)g(same)h(in)f(SO)m(AP:)396
|
|
|
|
|
444 y Fb(<?xml)44 b(version="1.0"?>)396 541 y(<SOAP-ENV:Envelope)396
|
|
|
|
|
638 y(xmlns:SOAP-ENV="http://schemas.xmlsoap.or)o(g/soap)o(/envel)o
|
|
|
|
|
(ope/")38 b(xmlns:xsi="http://www.w3.org/1999/XMLSche)o(ma-ins)o
|
|
|
|
|
(tance")g(xmlns:xsd="http://www.w3.org/1999/XMLSche)o(ma")h
|
|
|
|
|
(xmlns:SOAP-ENC="http://schemas.xmlsoa)o(p.org/)o(soap/e)o(ncodin)o
|
|
|
|
|
(g/")g(xmlns:si="http://soapinterop.org/xsd")396 735
|
|
|
|
|
y(xmlns:ns6="http://soapinterop.org")g
|
|
|
|
|
(SOAP-ENV:encodingStyle="http://schemas.xm)o(lsoap.)o(org/so)o(ap/enc)o
|
|
|
|
|
(oding/)o(">)396 832 y(<SOAP-ENV:Body>)k(<ns6:system_login>)396
|
|
|
|
|
929 y(<server_name)g(xsi:type=":string">my.host.name</server_)o(name>)
|
|
|
|
|
396 1026 y(<username)h(xsi:type=":string">bubba</username>)396
|
|
|
|
|
1124 y(<password)g(xsi:type=":string">gump</password>)396
|
|
|
|
|
1221 y(</ns6:system_login>)396 1318 y(</SOAP-ENV:Body>)396
|
|
|
|
|
1415 y(</SOAP-ENV:Envelope>)396 1703 y Fd(The)20 b(same)g(style)h(of)f
|
|
|
|
|
(pack)o(et)g(w)o(ould)f(be)h(required)f(for)g(a)i(user/client)e(login.)
|
|
|
|
|
h(A)g(successful)g(login)g(should)f(yield)h(the)396 1811
|
|
|
|
|
y(follo)n(wing)f(reply:)396 1991 y Fb(<methodResponse>)396
|
|
|
|
|
2088 y(<params>)396 2185 y(<param>)396 2283 y(<value><struct>)396
|
|
|
|
|
2380 y(<member><name>sessionid</name>)396 2477 y
|
|
|
|
|
(<value><string>cf5c5534307562fc5791560837)o(7db007)o(</stri)o(ng></v)o
|
|
|
|
|
(alue>)396 2574 y(</member>)396 2671 y(<member><name>kp3</name>)396
|
|
|
|
|
2768 y(<value><string>2fe54daa11c8d52116788aa3f9)o(3cb70e)o(</stri)o
|
|
|
|
|
(ng></v)o(alue>)396 2865 y(</member>)396 2962 y(</struct></value>)396
|
|
|
|
|
3060 y(</param>)396 3157 y(</params>)396 3254 y(</methodResponse>)396
|
|
|
|
|
3542 y Fd(And)h(a)h(f)o(ailed)f(login:)396 3722 y Fb(<methodResponse>)
|
|
|
|
|
396 3819 y(<params>)396 3916 y(<param>)396 4014 y(<value><struct>)396
|
|
|
|
|
4111 y(<member><name>GOAWAY</name>)396 4208 y
|
|
|
|
|
(<value><string>XOXO</string></value>)396 4305 y(</member>)396
|
|
|
|
|
4402 y(</struct></value>)396 4499 y(</param>)396 4596
|
|
|
|
|
y(</params>)396 4693 y(</methodResponse>)396 4982 y Fd(eqweqw)p
|
|
|
|
|
Black 3842 5569 a Fa(2)p Black eop
|
|
|
|
|
%%Page: 3 3
|
|
|
|
|
3 2 bop Black 0 TeXcolorgray Black Fa 2326 67 a(php) n(Gr) l(oupW) -8
|
|
|
|
|
b(ar) m(e) 20 b(XML-RPC/SO) -5 b(AP) 20 b(Methodo) n(lo) o(gy) p
|
|
|
|
|
Black Fd 396 770 a(And) g(a) h(f) o(ailed) f(login) n(:) p
|
|
|
|
|
Fb 396 950 a(<methodResp) n(onse>) 396 1047 y(<params>) 396
|
|
|
|
|
1144 y(<param>) 396 1241 y(<value><str) n(uct>) 396 1339
|
|
|
|
|
y(<member><na) n(me>GOAWAY</n) n(ame>) 396 1436 y(<value><str) n
|
|
|
|
|
(ing>XOXO</st) n(ring></value) n(>) 396 1533 y(</member>) 396
|
|
|
|
|
1630 y(</struct></) n(value>) 396 1727 y(</param>) 396
|
|
|
|
|
1824 y(</params>) 396 1921 y(</methodRes) n(ponse>) p
|
|
|
|
|
Fd 396 2209 a(eqweqw) p Fc 396 2547 a(1.1.2.) 28 b(syst) r(em.logou) n
|
|
|
|
|
(t) p Fd 396 2704 a(Logou) n(t:) p Fb 396 2884 a(<?xml) 44
|
|
|
|
|
b(version="1.) n(0"?>) 396 2982 y(<methodCall) n(>) 396
|
|
|
|
|
3079 y(<methodName) n(>system.logo) n(ut</methodNa) n(me>) 396
|
|
|
|
|
3176 y(<params>) g(<param>) 396 3273 y(<value><str) n(uct>) 396
|
|
|
|
|
3370 y(<member><na) n(me>sessionid) n(</name>) 396 3467
|
|
|
|
|
y(<value><str) n(ing>ea35cac5) n(3d2c12bd05ca) n(ecd97304478a) n
|
|
|
|
|
(</string></v) n(alue>) 396 3564 y(</member>) 396 3662
|
|
|
|
|
y(<member><na) n(me>kp3</name) n(>) 396 3759 y(<value><str) n
|
|
|
|
|
(ing>4f2b256e) n(0da4e7cbbeba) n(ac9f1fc8ca4a) n(</string></v) n(alue>)
|
|
|
|
|
396 3856 y(</member>) 396 3953 y(</struct></) n(value>) 396
|
|
|
|
|
4050 y(</param>) 396 4147 y(</params>) 396 4244 y(</methodCal) n(l>) p
|
|
|
|
|
Fd 396 4532 a(Logou) n(t) 21 b(w) o(ork) o(ed) n(:) p
|
|
|
|
|
Fb 396 4713 a(<methodResp) n(onse>) 396 4810 y(<params>) p
|
|
|
|
|
Black Fa 3842 5278 a(3) p Black 90 rotate dyy eop
|
|
|
|
|
3 2 bop Black 0 TeXcolorgray Black 2413 -132 a Fa(eGr)l(oupW)-8
|
|
|
|
|
b(ar)m(e)20 b(XML-RPC/SO)-5 b(AP)20 b(Methodolo)o(gy)p
|
|
|
|
|
Black 396 72 a Fc(1.1.2.)k(system.logout)396 222 y Fd(Logout:)396
|
|
|
|
|
402 y Fb(<?xml)44 b(version="1.0"?>)396 499 y(<methodCall>)396
|
|
|
|
|
596 y(<methodName>system.logout</methodName>)396 693
|
|
|
|
|
y(<params>)g(<param>)396 791 y(<value><struct>)396 888
|
|
|
|
|
y(<member><name>sessionid</name>)396 985 y
|
|
|
|
|
(<value><string>ea35cac53d2c12bd05caecd973)o(04478a)o(</stri)o(ng></v)o
|
|
|
|
|
(alue>)396 1082 y(</member>)396 1179 y(<member><name>kp3</name>)396
|
|
|
|
|
1276 y(<value><string>4f2b256e0da4e7cbbebaac9f1f)o(c8ca4a)o(</stri)o
|
|
|
|
|
(ng></v)o(alue>)396 1373 y(</member>)396 1471 y(</struct></value>)396
|
|
|
|
|
1568 y(</param>)396 1665 y(</params>)396 1762 y(</methodCall>)396
|
|
|
|
|
2050 y Fd(Logout)19 b(w)o(ork)o(ed:)396 2230 y Fb(<methodResponse>)396
|
|
|
|
|
2327 y(<params>)396 2424 y(<param>)396 2522 y(<value><struct>)396
|
|
|
|
|
2619 y(<member><name>GOODBYE</name>)396 2716 y
|
|
|
|
|
(<value><string>XOXO</string></value>)396 2813 y(</member>)396
|
|
|
|
|
2910 y(</struct></value>)396 3007 y(</param>)396 3104
|
|
|
|
|
y(</params>)396 3202 y(</methodResponse>)-2 3876 y Ff(2.)34
|
|
|
|
|
b(Business)h(la)n(y)o(er)f(requests)396 4044 y Fd(Once)20
|
|
|
|
|
b(a)h(successful)f(login)f(return)g(pack)o(et)h(has)g(been)g(recei)n(v)
|
|
|
|
|
o(ed)e(and)i(sessionid/kp3)f(ha)n(v)o(e)g(been)h(e)o(xtracted,)e(e)n(v)
|
|
|
|
|
o(ery)396 4152 y(subsequent)h(pack)o(et)g(sent)h(to)g(the)g(phpgroupw)o
|
|
|
|
|
(are)c(serv)o(er)j(must)h(be)g(preceded)e(by)h(an)h(Authorization)d
|
|
|
|
|
(header)-5 b(.)19 b(Here)h(is)396 4259 y(a)h(sample)f(header:)396
|
|
|
|
|
4440 y Fb(POST)44 b(/phpgroupware/xmlrpc.php)d(HTTP/1.0)396
|
|
|
|
|
4537 y(User-Agent:)i(PHP)i(XMLRPC)e(1.0)396 4634 y(Host:)h
|
|
|
|
|
(my.local.host)396 4731 y(Authorization:)f(Basic)h
|
|
|
|
|
(ZDgxNDIyZDRkYjg5NDEyNGNiMzZlMDhhZTdlYz)o(AxZmY6)o(NTU3Y)o(zkyYjB)o
|
|
|
|
|
(mNGE4Z)o(DVlOTU)o(zMzI2Y)o(mU2OTQ)o(yNjM3Y)o(jQ=)396
|
|
|
|
|
4828 y(Content-Type:)f(text/xml)396 4925 y(Content-Length:)g(875)p
|
|
|
|
|
Black 3842 5569 a Fa(3)p Black eop
|
|
|
|
|
%%Page: 4 4
|
|
|
|
|
4 3 bop Black 0 TeXcolorgray Black Fa 2326 67 a(php) n(Gr) l(oupW) -8
|
|
|
|
|
b(ar) m(e) 20 b(XML-RPC/SO) -5 b(AP) 20 b(Methodo) n(lo) o(gy) p
|
|
|
|
|
Black Fb 396 579 a(<param>) 396 676 y(<value><str) n(uct>) 396
|
|
|
|
|
773 y(<member><na) n(me>GOODBYE</) n(name>) 396 870 y(<value><str) n
|
|
|
|
|
(ing>XOXO</st) n(ring></value) n(>) 396 967 y(</member>) 396
|
|
|
|
|
1065 y(</struct></) n(value>) 396 1162 y(</param>) 396
|
|
|
|
|
1259 y(</params>) 396 1356 y(</methodRes) n(ponse>) p
|
|
|
|
|
Ff -2 2079 a(2.) 39 b(Busines) n(s) h(la) m(y) o(er) f(requ) n(ests) p
|
|
|
|
|
Fd 396 2259 a(Once) 20 b(a) h(successful) f(login) f(return) g(pack) o
|
|
|
|
|
(et) h(has) g(been) g(recei) n(v) o(e) n(d) g(and) g(sessionid/kp3) f
|
|
|
|
|
(ha) n(v) o(e) g(been) h(e) o(xtracte) n(d,) g(e) n(v) o(ery) 396
|
|
|
|
|
2367 y(subsequen) n(t) h(pack) m(et) g(sent) f(to) g(the) g(php) n
|
|
|
|
|
(group) n(w) o(are) g(serv) o(er) f(must) h(be) g(prec) n(eded) g(by) f
|
|
|
|
|
(an) h(Autho) n(rization) f(header) -5 b(.) 19 b(Here) h(is) 396
|
|
|
|
|
2475 y(a) h(sample) f(heade) n(r:) p Fb 396 2655 a(POST) 44
|
|
|
|
|
b(/phpgroupwar) n(e/xmlrpc.php) f(HTTP/1.0) 396 2752
|
|
|
|
|
y(User-Agent:) g(PHP) i(XMLRPC) e(1.0) 396 2849 y(Host:) h(my.local.ho)
|
|
|
|
|
n(st) 396 2946 y(Authorizati) n(on:) h(Basic) f(ZDgxNDIy) n
|
|
|
|
|
(ZDRkYjg5NDEy) n(NGNiMzZlMDhh) n(ZTdlYzAxZmY6) n(NTU3YzkyYjB) n
|
|
|
|
|
(mNGE4ZDVlOTU) n(zMzI2YmU2OTQ) n(yNjM3YjQ=) 396 3044
|
|
|
|
|
y(Content-Typ) n(e:) h(text/xml) 396 3141 y(Content-Len) n(gth:) g(875)
|
|
|
|
|
p Fd 396 3429 a(The) 20 b(longish) f(string) h(is) h(a) g(base64) e
|
|
|
|
|
(encodin) n(g) h(of) g(the) h($sessionid) e(.) i(':') f(.) g($kp3) n(.)
|
|
|
|
|
h(F) o(or) f(no) n(w) f(this) i(is) g(our) f(only) f(suppo) n(rted) 396
|
|
|
|
|
3537 y(authentica) n(tion) h(method) n(.) h(Addition) n(al) g(metho) n
|
|
|
|
|
(ds) g(w) o(ould) f(pro) n(bably) f(also) i(af) n(fect) f(the) g(metho)
|
|
|
|
|
n(dCalls.) h(This) f(is) i(certain) n(ly) 396 3645 y(open) d(to) i
|
|
|
|
|
(discussion.) e(F) o(ollo) n(wing) g(is) i(a) g(typical) f(requ) n(est)
|
|
|
|
|
h(for) f(some) g(con) n(tact) h(data:) p Fb 396 3825
|
|
|
|
|
a(<?xml) 44 b(version="1.) n(0"?>) 396 3922 y(<methodCall) n(>) 396
|
|
|
|
|
4019 y(<methodName) n(>addressbook) n(.boaddressbo) n(ok.read_entr) n
|
|
|
|
|
(ies</methodN) n(ame>) 396 4116 y(<params>) 396 4213
|
|
|
|
|
y(<param>) 396 4310 y(<value><str) n(uct>) 396 4408 y(<member><na) n
|
|
|
|
|
(me>start</na) n(me>) 396 4505 y(<value><str) n(ing>1</strin) n
|
|
|
|
|
(g></value>) 396 4602 y(</member>) 396 4699 y(<member><na) n
|
|
|
|
|
(me>limit</na) n(me>) 396 4796 y(<value><str) n(ing>5</strin) n
|
|
|
|
|
(g></value>) p Black Fa 3842 5278 a(4) p Black 90 rotate
|
|
|
|
|
dyy eop
|
|
|
|
|
4 3 bop Black 0 TeXcolorgray Black 2413 -132 a Fa(eGr)l(oupW)-8
|
|
|
|
|
b(ar)m(e)20 b(XML-RPC/SO)-5 b(AP)20 b(Methodolo)o(gy)p
|
|
|
|
|
Black 396 72 a Fd(The)g(longish)f(string)h(is)h(a)g(base64)e(encoding)f
|
|
|
|
|
(of)i(the)h($sessionid)e(.)i(':')f(.)g($kp3.)f(F)o(or)h(no)n(w)f(this)i
|
|
|
|
|
(is)g(our)f(only)f(supported)396 180 y(authentication)f(method.)h
|
|
|
|
|
(Additional)g(methods)g(w)o(ould)h(probably)d(also)k(af)n(fect)f(the)g
|
|
|
|
|
(methodCalls.)f(This)h(is)i(certainly)396 288 y(open)d(to)i
|
|
|
|
|
(discussion.)e(F)o(ollo)n(wing)g(is)i(a)g(typical)f(request)f(for)h
|
|
|
|
|
(some)g(contact)f(data:)396 468 y Fb(<?xml)44 b(version="1.0"?>)396
|
|
|
|
|
566 y(<methodCall>)396 663 y(<methodName>addressbook.boaddressbook.rea)
|
|
|
|
|
o(d_entr)o(ies</m)o(ethodN)o(ame>)396 760 y(<params>)396
|
|
|
|
|
857 y(<param>)396 954 y(<value><struct>)396 1051 y
|
|
|
|
|
(<member><name>start</name>)396 1148 y
|
|
|
|
|
(<value><string>1</string></value>)396 1246 y(</member>)396
|
|
|
|
|
1343 y(<member><name>limit</name>)396 1440 y
|
|
|
|
|
(<value><string>5</string></value>)396 1537 y(</member>)396
|
|
|
|
|
1634 y(<member><name>fields</name>)396 1731 y(<value><struct>)396
|
|
|
|
|
1828 y(<member><name>n_given</name>)396 1926 y
|
|
|
|
|
(<value><string>n_given</string></value>)396 2023 y(</member>)396
|
|
|
|
|
2120 y(<member><name>n_family</name>)396 2217 y
|
|
|
|
|
(<value><string>n_family</string></value>)396 2314 y(</member>)396
|
|
|
|
|
2411 y(</struct></value>)396 2508 y(</member>)396 2605
|
|
|
|
|
y(<member><name>query</name>)396 2703 y
|
|
|
|
|
(<value><string></string></value>)396 2800 y(</member>)396
|
|
|
|
|
2897 y(<member><name>filter</name>)396 2994 y
|
|
|
|
|
(<value><string></string></value>)396 3091 y(</member>)396
|
|
|
|
|
3188 y(<member><name>sort</name>)396 3285 y
|
|
|
|
|
(<value><string></string></value>)396 3383 y(</member>)396
|
|
|
|
|
3480 y(<member><name>order</name>)396 3577 y
|
|
|
|
|
(<value><string></string></value>)396 3674 y(</member>)396
|
|
|
|
|
3771 y(</struct></value>)396 3868 y(</param>)396 3965
|
|
|
|
|
y(</params>)396 4063 y(</methodCall>)396 4351 y Fd(Successful)20
|
|
|
|
|
b(response:)396 4531 y Fb(<?xml)44 b(version="1.0"?>)396
|
|
|
|
|
4628 y(<methodResponse>)396 4725 y(<params>)396 4822
|
|
|
|
|
y(<param>)396 4919 y(<value><struct>)396 5016 y(<member><name>0</name>)
|
|
|
|
|
396 5114 y(<value><struct>)p Black 3842 5569 a Fa(4)p
|
|
|
|
|
Black eop
|
|
|
|
|
%%Page: 5 5
|
|
|
|
|
5 4 bop Black 0 TeXcolorgray Black Fa 2326 67 a(php) n(Gr) l(oupW) -8
|
|
|
|
|
b(ar) m(e) 20 b(XML-RPC/SO) -5 b(AP) 20 b(Methodo) n(lo) o(gy) p
|
|
|
|
|
Black Fb 396 579 a(</member>) 396 676 y(<member><na) n(me>fields</n) n
|
|
|
|
|
(ame>) 396 773 y(<value><str) n(uct>) 396 870 y(<member><na) n
|
|
|
|
|
(me>n_given</) n(name>) 396 967 y(<value><str) n(ing>n_given<) n
|
|
|
|
|
(/string></va) n(lue>) 396 1065 y(</member>) 396 1162
|
|
|
|
|
y(<member><na) n(me>n_family<) n(/name>) 396 1259 y(<value><str) n
|
|
|
|
|
(ing>n_family) n(</string></v) n(alue>) 396 1356 y(</member>) 396
|
|
|
|
|
1453 y(</struct></) n(value>) 396 1550 y(</member>) 396
|
|
|
|
|
1647 y(<member><na) n(me>query</na) n(me>) 396 1745 y(<value><str) n
|
|
|
|
|
(ing></string) n(></value>) 396 1842 y(</member>) 396
|
|
|
|
|
1939 y(<member><na) n(me>filter</n) n(ame>) 396 2036
|
|
|
|
|
y(<value><str) n(ing></string) n(></value>) 396 2133
|
|
|
|
|
y(</member>) 396 2230 y(<member><na) n(me>sort</nam) n(e>) 396
|
|
|
|
|
2327 y(<value><str) n(ing></string) n(></value>) 396
|
|
|
|
|
2424 y(</member>) 396 2522 y(<member><na) n(me>order</na) n(me>) 396
|
|
|
|
|
2619 y(<value><str) n(ing></string) n(></value>) 396
|
|
|
|
|
2716 y(</member>) 396 2813 y(</struct></) n(value>) 396
|
|
|
|
|
2910 y(</param>) 396 3007 y(</params>) 396 3104 y(</methodCal) n(l>) p
|
|
|
|
|
Fd 396 3393 a(Successful) g(respon) n(se:) p Fb 396 3573
|
|
|
|
|
a(<?xml) 44 b(version="1.) n(0"?>) 396 3670 y(<methodResp) n(onse>) 396
|
|
|
|
|
3767 y(<params>) 396 3864 y(<param>) 396 3961 y(<value><str) n(uct>) 396
|
|
|
|
|
4058 y(<member><na) n(me>0</name>) 396 4155 y(<value><str) n(uct>) 396
|
|
|
|
|
4253 y(<member><na) n(me>id</name>) 396 4350 y(<value><str) n
|
|
|
|
|
(ing>1</strin) n(g></value>) 396 4447 y(</member>) 396
|
|
|
|
|
4544 y(<member><na) n(me>lid</name) n(>) 396 4641 y(<value><str) n
|
|
|
|
|
(ing></string) n(></value>) 396 4738 y(</member>) 396
|
|
|
|
|
4835 y(<member><na) n(me>tid</name) n(>) p Black Fa 3842
|
|
|
|
|
5278 a(5) p Black 90 rotate dyy eop
|
|
|
|
|
5 4 bop Black 0 TeXcolorgray Black 2413 -132 a Fa(eGr)l(oupW)-8
|
|
|
|
|
b(ar)m(e)20 b(XML-RPC/SO)-5 b(AP)20 b(Methodolo)o(gy)p
|
|
|
|
|
Black 396 72 a Fb(<member><name>id</name>)396 170 y
|
|
|
|
|
(<value><string>1</string></value>)396 267 y(</member>)396
|
|
|
|
|
364 y(<member><name>lid</name>)396 461 y
|
|
|
|
|
(<value><string></string></value>)396 558 y(</member>)396
|
|
|
|
|
655 y(<member><name>tid</name>)396 752 y
|
|
|
|
|
(<value><string>n</string></value>)396 850 y(</member>)396
|
|
|
|
|
947 y(<member><name>owner</name>)396 1044 y
|
|
|
|
|
(<value><string>500</string></value>)396 1141 y(</member>)396
|
|
|
|
|
1238 y(<member><name>access</name>)396 1335 y
|
|
|
|
|
(<value><string>private</string></value>)396 1432 y(</member>)396
|
|
|
|
|
1530 y(<member><name>cat_id</name>)396 1627 y
|
|
|
|
|
(<value><string>1</string></value>)396 1724 y(</member>)396
|
|
|
|
|
1821 y(<member><name>n_given</name>)396 1918 y
|
|
|
|
|
(<value><string>Alan</string></value>)396 2015 y(</member>)396
|
|
|
|
|
2112 y(</struct></value>)396 2209 y(</member>)396 2307
|
|
|
|
|
y(<member><name>1</name>)396 2404 y(<value><struct>)396
|
|
|
|
|
2501 y(<member><name>id</name>)396 2598 y
|
|
|
|
|
(<value><string>2</string></value>)396 2695 y(</member>)396
|
|
|
|
|
2792 y(<member><name>lid</name>)396 2889 y
|
|
|
|
|
(<value><string></string></value>)396 2987 y(</member>)396
|
|
|
|
|
3084 y(<member><name>tid</name>)396 3181 y
|
|
|
|
|
(<value><string>n</string></value>)396 3278 y(</member>)396
|
|
|
|
|
3375 y(<member><name>owner</name>)396 3472 y
|
|
|
|
|
(<value><string>500</string></value>)396 3569 y(</member>)396
|
|
|
|
|
3666 y(<member><name>access</name>)396 3764 y
|
|
|
|
|
(<value><string>private</string></value>)396 3861 y(</member>)396
|
|
|
|
|
3958 y(<member><name>cat_id</name>)396 4055 y
|
|
|
|
|
(<value><string>1</string></value>)396 4152 y(</member>)396
|
|
|
|
|
4249 y(<member><name>n_given</name>)396 4346 y
|
|
|
|
|
(<value><string>Andy</string></value>)396 4444 y(</member>)396
|
|
|
|
|
4541 y(</struct></value>)396 4638 y(</member>)396 4735
|
|
|
|
|
y(...)396 5023 y Fd(Unauthorized)e(access)j(attempt)f(returns:)p
|
|
|
|
|
Black 3842 5569 a Fa(5)p Black eop
|
|
|
|
|
%%Page: 6 6
|
|
|
|
|
6 5 bop Black 0 TeXcolorgray Black Fa 2326 67 a(php) n(Gr) l(oupW) -8
|
|
|
|
|
b(ar) m(e) 20 b(XML-RPC/SO) -5 b(AP) 20 b(Methodo) n(lo) o(gy) p
|
|
|
|
|
Black Fb 396 579 a(<value><str) n(ing>n</strin) n(g></value>) 396
|
|
|
|
|
676 y(</member>) 396 773 y(<member><na) n(me>owner</na) n(me>) 396
|
|
|
|
|
870 y(<value><str) n(ing>500</str) n(ing></value>) 396
|
|
|
|
|
967 y(</member>) 396 1065 y(<member><na) n(me>access</n) n(ame>) 396
|
|
|
|
|
1162 y(<value><str) n(ing>private<) n(/string></va) n(lue>) 396
|
|
|
|
|
1259 y(</member>) 396 1356 y(<member><na) n(me>cat_id</n) n(ame>) 396
|
|
|
|
|
1453 y(<value><str) n(ing>1</strin) n(g></value>) 396
|
|
|
|
|
1550 y(</member>) 396 1647 y(<member><na) n(me>n_given</) n(name>) 396
|
|
|
|
|
1745 y(<value><str) n(ing>Alan</st) n(ring></value) n(>) 396
|
|
|
|
|
1842 y(</member>) 396 1939 y(</struct></) n(value>) 396
|
|
|
|
|
2036 y(</member>) 396 2133 y(<member><na) n(me>1</name>) 396
|
|
|
|
|
2230 y(<value><str) n(uct>) 396 2327 y(<member><na) n(me>id</name>) 396
|
|
|
|
|
2424 y(<value><str) n(ing>2</strin) n(g></value>) 396
|
|
|
|
|
2522 y(</member>) 396 2619 y(<member><na) n(me>lid</name) n(>) 396
|
|
|
|
|
2716 y(<value><str) n(ing></string) n(></value>) 396
|
|
|
|
|
2813 y(</member>) 396 2910 y(<member><na) n(me>tid</name) n(>) 396
|
|
|
|
|
3007 y(<value><str) n(ing>n</strin) n(g></value>) 396
|
|
|
|
|
3104 y(</member>) 396 3202 y(<member><na) n(me>owner</na) n(me>) 396
|
|
|
|
|
3299 y(<value><str) n(ing>500</str) n(ing></value>) 396
|
|
|
|
|
3396 y(</member>) 396 3493 y(<member><na) n(me>access</n) n(ame>) 396
|
|
|
|
|
3590 y(<value><str) n(ing>private<) n(/string></va) n(lue>) 396
|
|
|
|
|
3687 y(</member>) 396 3784 y(<member><na) n(me>cat_id</n) n(ame>) 396
|
|
|
|
|
3882 y(<value><str) n(ing>1</strin) n(g></value>) 396
|
|
|
|
|
3979 y(</member>) 396 4076 y(<member><na) n(me>n_given</) n(name>) 396
|
|
|
|
|
4173 y(<value><str) n(ing>Andy</st) n(ring></value) n(>) 396
|
|
|
|
|
4270 y(</member>) 396 4367 y(</struct></) n(value>) 396
|
|
|
|
|
4464 y(</member>) 396 4561 y(...) p Fd 396 4850 a(Unautho) n(rized) g
|
|
|
|
|
(access) h(attempt) f(retur) n(ns:) p Black Fa 3840 5278
|
|
|
|
|
a(6) p Black 90 rotate dyy eop
|
|
|
|
|
%%Page: 7 7
|
|
|
|
|
7 6 bop Black 0 TeXcolorgray Black Fa 2326 67 a(php) n(Gr) l(oupW) -8
|
|
|
|
|
b(ar) m(e) 20 b(XML-RPC/SO) -5 b(AP) 20 b(Methodo) n(lo) o(gy) p
|
|
|
|
|
Black Fb 396 579 a(<methodResp) n(onse>) 396 676 y(<params>) 396
|
|
|
|
|
773 y(<param>) 396 870 y(<value><str) n(ing>UNAUTHOR) n(IZED</string) n
|
|
|
|
|
(></value>) 396 967 y(</param>) 396 1065 y(</params>) 396
|
|
|
|
|
1162 y(</methodRes) n(ponse>) p Ff -2 1719 a(3.) 39 b(More) g(to) g
|
|
|
|
|
(come) s(...) p Fd 396 1899 a(Documen) n(ting) 20 b(e) n(v) o(ery) f
|
|
|
|
|
(single) h(call) h(will) f(be) h(dif) n(\002cu) n(lt,) g(b) n(ut) f
|
|
|
|
|
(should) f(be) h(done.) f(In) h(leiu) h(of) e(this,) i(please) f(see) h
|
|
|
|
|
(the) 396 2007 y(class.bo{APPN) m(AME}.in) n(c.php) e(\002les) i(in) g
|
|
|
|
|
(each) f(app) n(lication/inc) g(directo) n(ry) g(in) h(the) f(php) n
|
|
|
|
|
(grou) n(pw) o(are) g(cvs.) g(In) g(this) h(\002le) 396
|
|
|
|
|
2115 y(will) g(be) f(a) h(list_metho) n(ds\(\)) f(functio) n(n,) g
|
|
|
|
|
(which) g(return) n(s) h(the) f(inform) n(ation) g(to) g(the) h(serv) o
|
|
|
|
|
(e) n(r) g(abou) n(t) g(input/o) n(utput) f(structur) n(e) 396
|
|
|
|
|
2222 y(for) g(each) g(call.) g(If) g(the) g(\002le) h(does) f(not) g
|
|
|
|
|
(ha) n(v) o(e) g(this) g(functio) n(n,) h(then) e(it) i(is) g(not) f
|
|
|
|
|
(yet) g(w) o(orkab) n(le) h(via) f(this) h(interf) o(ace.) e(As) i(for)
|
|
|
|
|
396 2330 y(the) f(actual) g(function) n(s,) h(the) o(y) e(are) i(also) f
|
|
|
|
|
(in) g(this) h(\002le.) g(Genera) n(lly) -5 b(,) 20 b(the) o(y) g(will)
|
|
|
|
|
h(all) f(accept) g(associati) n(v) o(e) g(array) f(input) h(and) 396
|
|
|
|
|
2438 y(return) f(same,) h(b) n(ut) h(not) e(al) o(w) o(ays.) i(This) f
|
|
|
|
|
(code) g(is) h(in) f(\003ux,) g(ha) n(v) o(e) f(fun.) p
|
|
|
|
|
Black Fa 3839 5278 a(7) p Black 90 rotate dyy eop
|
|
|
|
|
%%Page: 8 8
|
|
|
|
|
8 7 bop Black 0 TeXcolorgray Black Fa 2326 67 a(php) n(Gr) l(oupW) -8
|
|
|
|
|
b(ar) m(e) 20 b(XML-RPC/SO) -5 b(AP) 20 b(Methodo) n(lo) o(gy) p
|
|
|
|
|
Black Black 3842 5278 a(8) p Black 90 rotate dyy eop
|
|
|
|
|
6 5 bop Black 0 TeXcolorgray Black 2413 -132 a Fa(eGr)l(oupW)-8
|
|
|
|
|
b(ar)m(e)20 b(XML-RPC/SO)-5 b(AP)20 b(Methodolo)o(gy)p
|
|
|
|
|
Black 396 72 a Fb(<methodResponse>)396 170 y(<params>)396
|
|
|
|
|
267 y(<param>)396 364 y(<value><string>UNAUTHORIZED</string></val)o
|
|
|
|
|
(ue>)396 461 y(</param>)396 558 y(</params>)396 655 y
|
|
|
|
|
(</methodResponse>)-2 1164 y Ff(3.)34 b(More)f(to)g(come)r(...)396
|
|
|
|
|
1331 y Fd(Documenting)18 b(e)n(v)o(ery)h(single)h(call)h(will)f(be)h
|
|
|
|
|
(dif)n(\002cult,)e(b)n(ut)h(should)f(be)h(done.)f(In)h(leiu)h(of)e
|
|
|
|
|
(this,)i(please)f(see)h(the)396 1439 y(class.bo{APPN)m(AME}.inc.php)c
|
|
|
|
|
(\002les)k(in)g(each)f(application/inc)e(directory)g(in)j(the)f(e)o
|
|
|
|
|
(groupw)o(are)d(cvs.)j(In)g(this)h(\002le)396 1547 y(will)g(be)f(a)h
|
|
|
|
|
(list_methods\(\))d(function,)g(which)i(returns)f(the)h(information)e
|
|
|
|
|
(to)i(the)h(serv)o(er)e(about)g(input/output)f(structure)396
|
|
|
|
|
1655 y(for)i(each)g(call.)g(If)g(the)g(\002le)h(does)f(not)g(ha)n(v)o
|
|
|
|
|
(e)g(this)g(function,)f(then)g(it)i(is)g(not)f(yet)g(w)o(orkable)f(via)
|
|
|
|
|
h(this)h(interf)o(ace.)e(As)i(for)396 1763 y(the)f(actual)g(functions,)
|
|
|
|
|
f(the)o(y)g(are)i(also)f(in)g(this)h(\002le.)g(Generally)-5
|
|
|
|
|
b(,)18 b(the)o(y)i(will)h(all)f(accept)g(associati)n(v)o(e)g(array)f
|
|
|
|
|
(input)h(and)396 1871 y(return)f(same,)h(b)n(ut)h(not)e(al)o(w)o(ays.)i
|
|
|
|
|
(This)f(code)g(is)h(in)f(\003ux,)g(ha)n(v)o(e)f(fun.)p
|
|
|
|
|
Black 3840 5569 a Fa(6)p Black eop
|
|
|
|
|
%%Trailer
|
|
|
|
|
end
|
|
|
|
|
userdict /end-hook known{end-hook}if
|
|
|
|
|