From Karli.Sjoberg at slu.se Fri Aug 17 04:46:04 2012 Content-Type: multipart/mixed; boundary="===============5090501342556882767==" MIME-Version: 1.0 From: =?utf-8?q?Karli_Sj=C3=B6berg_=3CKarli=2ESjoberg_at_slu=2Ese=3E?= To: users at ovirt.org Subject: [Users] Create domain user with api Date: Fri, 17 Aug 2012 10:45:59 +0200 Message-ID: <15090623-40F9-41AB-9C2F-35EABE0BD4AA@slu.se> --===============5090501342556882767== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable --_000_1509062340F941AB9C2F35EABE0BD4AAsluse_ Content-Type: text/plain; charset=3D"iso-8859-1" Content-Transfer-Encoding: quoted-printable Hey all, using "ovirt-shell" I can do: $ create user --user_name somename(a)foo.bar --d= omai=3D n-name something.foo.bar How do express that as a POST with the api? Could you provide a xml example= =3D ? Med V=3DE4nliga H=3DE4lsningar ---------------------------------------------------------------------------= =3D ---- Karli Sj=3DF6berg Swedish University of Agricultural Sciences Box 7079 (Visiting Address Kron=3DE5sv=3DE4gen 8) S-750 07 Uppsala, Sweden Phone: +46-(0)18-67 15 66 karli.sjoberg(a)slu.se --_000_1509062340F941AB9C2F35EABE0BD4AAsluse_ Content-Type: text/html; charset=3D"iso-8859-1" Content-Transfer-Encoding: quoted-printable Hey all,

using "ovirt-shell" I can do:
$ create user --user_name somename(a)foo.bar --domain-name = someth=3D ing.foo.bar

How do express that as a POST with the= =3D api? Could you provide a xml example?



Med V=3DE4nliga H=3DE4lsningar
-------------------------= ----=3D --------------------------------------------------
Karli Sj=3DF6berg
= Sw=3D edish University of Agricultural Sciences
Box 7079 (Visiting Address Kro= =3D n=3DE5sv=3DE4gen 8)
S-750 07 Uppsala, Sweden
Phone:  +46-(0)18-6= 7 15=3D 66

=3D --_000_1509062340F941AB9C2F35EABE0BD4AAsluse_-- --===============5090501342556882767== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" LS1fMDAwXzE1MDkwNjIzNDBGOTQxQUI5QzJGMzVFQUJFMEJENEFBc2x1c2VfCkNvbnRlbnQtVHlw ZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iaXNvLTg4NTktMSIKQ29udGVudC1UcmFuc2Zlci1FbmNv ZGluZzogcXVvdGVkLXByaW50YWJsZQoKSGV5IGFsbCwKCnVzaW5nICJvdmlydC1zaGVsbCIgSSBj YW4gZG86CiQgY3JlYXRlIHVzZXIgLS11c2VyX25hbWUgc29tZW5hbWVAZm9vLmJhcjxtYWlsdG86 c29tZW5hbWVAZm9vLmJhcj4gLS1kb21haT0Kbi1uYW1lIHNvbWV0aGluZy5mb28uYmFyCgpIb3cg ZG8gZXhwcmVzcyB0aGF0IGFzIGEgUE9TVCB3aXRoIHRoZSBhcGk/IENvdWxkIHlvdSBwcm92aWRl IGEgeG1sIGV4YW1wbGU9Cj8KCgoKTWVkIFY9RTRubGlnYSBIPUU0bHNuaW5nYXIKLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tPQotLS0tCkthcmxpIFNqPUY2YmVyZwpTd2VkaXNoIFVuaXZlcnNpdHkgb2YgQWdy aWN1bHR1cmFsIFNjaWVuY2VzCkJveCA3MDc5IChWaXNpdGluZyBBZGRyZXNzIEtyb249RTVzdj1F NGdlbiA4KQpTLTc1MCAwNyBVcHBzYWxhLCBTd2VkZW4KUGhvbmU6ICArNDYtKDApMTgtNjcgMTUg NjYKa2FybGkuc2pvYmVyZ0BzbHUuc2U8bWFpbHRvOmthcmxpLnNqb2JlcmdAYWRtLnNsdS5zZT4K CgotLV8wMDBfMTUwOTA2MjM0MEY5NDFBQjlDMkYzNUVBQkUwQkQ0QUFzbHVzZV8KQ29udGVudC1U eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9Imlzby04ODU5LTEiCkNvbnRlbnQtVHJhbnNmZXItRW5j b2Rpbmc6IHF1b3RlZC1wcmludGFibGUKCjxodG1sPjxoZWFkPjwvaGVhZD48Ym9keSBzdHlsZT0z RCJ3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7IC13ZWJraXQtbmJzcC1tb2RlOj0KIHNwYWNlOyAtd2Vi a2l0LWxpbmUtYnJlYWs6IGFmdGVyLXdoaXRlLXNwYWNlOyAiPkhleSBhbGwsPGRpdj48YnI+PC9k aXY+PGRpPQp2PnVzaW5nICJvdmlydC1zaGVsbCIgSSBjYW4gZG86PC9kaXY+PGRpdj4kJm5ic3A7 Y3JlYXRlIHVzZXIgLS11c2VyX25hbWUgPGE9CiBocmVmPTNEIm1haWx0bzpzb21lbmFtZUBmb28u YmFyIj5zb21lbmFtZUBmb28uYmFyPC9hPiAtLWRvbWFpbi1uYW1lIHNvbWV0aD0KaW5nLmZvby5i YXI8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PkhvdyBkbyBleHByZXNzIHRoYXQgYXMgYSBQT1NU IHdpdGggdGhlPQogYXBpPyBDb3VsZCB5b3UgcHJvdmlkZSBhIHhtbCBleGFtcGxlPzwvZGl2Pjxk aXY+PGJyPjxkaXY+CjxzcGFuIGNsYXNzPTNEIkFwcGxlLXN0eWxlLXNwYW4iIHN0eWxlPTNEImJv cmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IGNvbG9yOj0KIHJnYigwLCAwLCAwKTsgZm9udC1mYW1p bHk6IEhlbHZldGljYTsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXZhcmlhbnQ6IG5vPQpybWFs OyBmb250LXdlaWdodDogbm9ybWFsOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyBsaW5lLWhlaWdo dDogbm9ybWFsOyBvcnA9CmhhbnM6IDI7IHRleHQtYWxpZ246IC13ZWJraXQtYXV0bzsgdGV4dC1p bmRlbnQ6IDBweDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7ID0Kd2hpdGUtc3BhY2U6IG5vcm1hbDsg d2lkb3dzOiAyOyB3b3JkLXNwYWNpbmc6IDBweDsgLXdlYmtpdC1ib3JkZXItaG9yaXpvbnRhPQps LXNwYWNpbmc6IDBweDsgLXdlYmtpdC1ib3JkZXItdmVydGljYWwtc3BhY2luZzogMHB4OyAtd2Vi a2l0LXRleHQtZGVjb3JhdGk9Cm9ucy1pbi1lZmZlY3Q6IG5vbmU7IC13ZWJraXQtdGV4dC1zaXpl LWFkanVzdDogYXV0bzsgLXdlYmtpdC10ZXh0LXN0cm9rZS13aT0KZHRoOiAwcHg7IGZvbnQtc2l6 ZTogbWVkaXVtOyAiPjxkaXY+PGJyIGNsYXNzPTNEIkFwcGxlLWludGVyY2hhbmdlLW5ld2xpbmUi PQo+PGJyPjwvZGl2PjxkaXY+TWVkIFY9RTRubGlnYSBIPUU0bHNuaW5nYXI8YnI+LS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS09Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tPGJyPkthcmxpIFNqPUY2YmVyZzxicj5Tdz0KZWRpc2ggVW5pdmVyc2l0 eSBvZiBBZ3JpY3VsdHVyYWwgU2NpZW5jZXM8YnI+Qm94IDcwNzkgKFZpc2l0aW5nIEFkZHJlc3Mg S3JvPQpuPUU1c3Y9RTRnZW4gOCk8YnI+Uy03NTAgMDcgVXBwc2FsYSwgU3dlZGVuPGJyPlBob25l OiAmbmJzcDsrNDYtKDApMTgtNjcgMTU9CiA2NjwvZGl2PjxkaXY+PGEgaHJlZj0zRCJtYWlsdG86 a2FybGkuc2pvYmVyZ0BhZG0uc2x1LnNlIj5rYXJsaS5zam9iZXJnQHNsdT0KLnNlPC9hPjwvZGl2 Pjwvc3Bhbj4KPC9kaXY+Cjxicj48L2Rpdj48L2JvZHk+PC9odG1sPj0KCi0tXzAwMF8xNTA5MDYy MzQwRjk0MUFCOUMyRjM1RUFCRTBCRDRBQXNsdXNlXy0tCg== --===============5090501342556882767==-- From Karli.Sjoberg at slu.se Mon Aug 20 02:25:24 2012 Content-Type: multipart/mixed; boundary="===============5986923667083230968==" MIME-Version: 1.0 From: =?utf-8?q?Karli_Sj=C3=B6berg_=3CKarli=2ESjoberg_at_slu=2Ese=3E?= To: users at ovirt.org Subject: Re: [Users] Create domain user with api Date: Mon, 20 Aug 2012 08:25:19 +0200 Message-ID: <0684264A-6C09-444F-A8F2-8E1BCFEA6614@slu.se> In-Reply-To: 15090623-40F9-41AB-9C2F-35EABE0BD4AA@slu.se --===============5986923667083230968== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable --_000_0684264A6C09444FA8F28E1BCFEA6614sluse_ Content-Type: text/plain; charset=3D"iso-8859-1" Content-Transfer-Encoding: quoted-printable Hey all, I kind of figured this out on my own. Still have some kinks to iro= =3D n out, from the web perspective, but I=3DB4ll get back to you on that. In t= he=3D mean time I noticed a rather strange redirection sent back when adding a u= =3D ser. Check this out: # curl -v -X POST -H "Accept: application/xml" -H "Accept: application/xml"= =3D -H "Content-type: application/xml" -u admin(a)internal:letmein! -T upload.= xm=3D l http://engine.slu.se:80/api/users upload.xml: somename(a)slu.se SomeRole * About to connect() to engine.slu.se port 80 (#0) * Trying XXX.XXX.XXX.XXX... connected * Connected to engine.slu.se (XXX.XXX.XXX.XXX) port 8= =3D 0 (#0) * Server auth using Basic with user 'admin(a)internal' POST /api/users HTTP/1.1 Authorization: Basic YWRtaW5AaW50ZXJuYGH4UiXVhaDJkYWk=3D3D User-Agent: curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL= =3D /0.9.8r zlib/1.2.3 Host: engine.slu.se Accept: application/xml Accept: application/xml Content-type: application/xml Content-Length: 184 Expect: 100-continue < HTTP/1.1 100 Continue < HTTP/1.1 201 Created < Date: Fri, 17 Aug 2012 13:47:00 GMT < Set-Cookie: JSESSIONID=3D3DLXBbH1Wcmv-jepsSl06FtMaA.undefined; Path=3D3D/= api < Location: http://engine.slu.se/api/api/domains/61642e73-6c75-2e73-6561-64= =3D 2e736c752e/users/94155e69-4691-4cbb-a6b5-d30a6bd5b667 < Content-Type: application/xml < Connection: close < Transfer-Encoding: chunked < That Location is invalid. Proper location would be: < Location: http://engine.slu.se/api/domains/61642e73-6c75-2e73-6561-642e73= =3D 6c752e/users/94155e69-4691-4cbb-a6b5-d30a6bd5b667 Bug? /Karli 17 aug 2012 kl. 10.45 skrev Karli Sj=3DF6berg: Hey all, using "ovirt-shell" I can do: $ create user --user_name somename(a)foo.bar --d= omai=3D n-name something.foo.bar How do express that as a POST with the api? Could you provide a xml example= =3D ? Med V=3DE4nliga H=3DE4lsningar ---------------------------------------------------------------------------= =3D ---- Karli Sj=3DF6berg Swedish University of Agricultural Sciences Box 7079 (Visiting Address Kron=3DE5sv=3DE4gen 8) S-750 07 Uppsala, Sweden Phone: +46-(0)18-67 15 66 karli.sjoberg(a)slu.se _______________________________________________ Users mailing list Users(a)ovirt.org http://lists.ovirt.org/mailman/listinfo/users Med V=3DE4nliga H=3DE4lsningar ---------------------------------------------------------------------------= =3D ---- Karli Sj=3DF6berg Swedish University of Agricultural Sciences Box 7079 (Visiting Address Kron=3DE5sv=3DE4gen 8) S-750 07 Uppsala, Sweden Phone: +46-(0)18-67 15 66 karli.sjoberg(a)slu.se --_000_0684264A6C09444FA8F28E1BCFEA6614sluse_ Content-Type: text/html; charset=3D"iso-8859-1" Content-Transfer-Encoding: quoted-printable Hey all, I kind of figured= =3D this out on my own. Still have some kinks to iron out, from the web perspe= =3D ctive, but I=3DB4ll get back to you on that. In the mean time I noticed a r= at=3D her strange redirection sent back when adding a user. Check this out:
<= =3D br>
# curl -v -X POST -H "Accept: application/xml" -H "Accep= =3D t: application/xml" -H "Content-type: application/xml" -u admin(a)internal:= le=3D tmein! -T upload.xml http:/= /e=3D ngine.slu.se:80/api/users

upload.xml:
<user>
  <user_name>somename(a)slu.se<= /u=3D ser_name>
  <domain id=3D3D"61642e73-6c75-2e73-6561-64= 2e=3D 736c752e" />
  <roles>
    <= =3D role>
      <name>SomeRole</name>
    </role>
  </roles>
<= =3D div></user>

* About to connect() = =3D to engine.slu.se port 80 (#0)
<= di=3D v>*   Trying XXX.XXX.XXX.XXX... connected
* Connected to engine.slu.se (XXX.XXX.XXX.XXX) port 80= (=3D #0)
* Server auth using Basic with user 'admin(a)internal'
<= di=3D v>POST /api/users HTTP/1.1
Authorization: Basic YWRtaW5AaW50ZXJuY= =3D GH4UiXVhaDJkYWk=3D3D
User-Agent: curl/7.19.7 (universal-apple-dar= wi=3D n10.0) libcurl/7.19.7 OpenSSL/0.9.8r zlib/1.2.3
Accept: application/xml
Accept: application/xml
Content-type: application/xml
Content-Length: 184
Expect: 100-continue

< HTTP/1.1 100 Continue
< HTTP/1.1 201 Created
< Date: Fri, 17 Aug 2012 13:47:00 GMT
< Set-Cookie: = =3D JSESSIONID=3D3DLXBbH1Wcmv-jepsSl06FtMaA.undefined; Path=3D3D/api
= <=3D Location: http://engine.slu.se/a= pi=3D /api/domains/61642e73-6c75-2e73-6561-642e736c752e/users/94155e69-4691-4= =3D cbb-a6b5-d30a6bd5b667
< Content-Type: application/xml
< Connection: close
< Transfer-Encoding: chunked
<

That Location is invalid. Proper location w= =3D ould be:
< Location: http:= //=3D engine.slu.se/api/domains/61642e73-6c75-2e73-6561-642e736c752e/users/94= =3D 155e69-4691-4cbb-a6b5-d30a6bd5b667

Bug?
= =3D
/Karli

17 aug 2012 kl. 10.45 s= =3D krev Karli Sj=3DF6berg:

Hey all,

= =3D using "ovirt-shell" I can do:
$ create user --user_name somename(a)foo.bar --domain-name so= methin=3D g.foo.bar

How do express that as a POST with the a= =3D pi? Could you provide a xml example?



Med V=3DE4nli= ga H=3D =3DE4lsningar
----------------------------------------------------------= --=3D -------------------
Karli Sj=3DF6berg
Swedish University of Agricultu= ra=3D l Sciences
Box 7079 (Visiting Address Kron=3DE5sv=3DE4gen 8)
S-750 07= Upp=3D sala, Sweden
Phone:  +46-(0)18-67 15 66

_______________________________________________
Users ma= =3D iling list
Users(a)ovirt.org<= br>htt=3D p://lists.ovirt.org/mailman/listinfo/users



Med V=3DE4nli= ga H=3D =3DE4lsningar
----------------------------------------------------------= --=3D -------------------
Karli Sj=3DF6berg
Swedish University of Agricultu= ra=3D l Sciences
Box 7079 (Visiting Address Kron=3DE5sv=3DE4gen 8)
S-750 07= Upp=3D sala, Sweden
Phone:  +46-(0)18-67 15 66

=3D --_000_0684264A6C09444FA8F28E1BCFEA6614sluse_-- --===============5986923667083230968== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" LS1fMDAwXzA2ODQyNjRBNkMwOTQ0NEZBOEYyOEUxQkNGRUE2NjE0c2x1c2VfCkNvbnRlbnQtVHlw ZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iaXNvLTg4NTktMSIKQ29udGVudC1UcmFuc2Zlci1FbmNv ZGluZzogcXVvdGVkLXByaW50YWJsZQoKSGV5IGFsbCwgSSBraW5kIG9mIGZpZ3VyZWQgdGhpcyBv dXQgb24gbXkgb3duLiBTdGlsbCBoYXZlIHNvbWUga2lua3MgdG8gaXJvPQpuIG91dCwgZnJvbSB0 aGUgd2ViIHBlcnNwZWN0aXZlLCBidXQgST1CNGxsIGdldCBiYWNrIHRvIHlvdSBvbiB0aGF0LiBJ biB0aGU9CiBtZWFuIHRpbWUgSSBub3RpY2VkIGEgcmF0aGVyIHN0cmFuZ2UgcmVkaXJlY3Rpb24g c2VudCBiYWNrIHdoZW4gYWRkaW5nIGEgdT0Kc2VyLiBDaGVjayB0aGlzIG91dDoKCiMgY3VybCAt diAtWCBQT1NUIC1IICJBY2NlcHQ6IGFwcGxpY2F0aW9uL3htbCIgLUggIkFjY2VwdDogYXBwbGlj YXRpb24veG1sIj0KIC1IICJDb250ZW50LXR5cGU6IGFwcGxpY2F0aW9uL3htbCIgLXUgYWRtaW5A aW50ZXJuYWw6bGV0bWVpbiEgLVQgdXBsb2FkLnhtPQpsIGh0dHA6Ly9lbmdpbmUuc2x1LnNlOjgw L2FwaS91c2VycwoKdXBsb2FkLnhtbDoKPHVzZXI+CiAgPHVzZXJfbmFtZT5zb21lbmFtZUBzbHUu c2U8L3VzZXJfbmFtZT4KICA8ZG9tYWluIGlkPTNEIjYxNjQyZTczLTZjNzUtMmU3My02NTYxLTY0 MmU3MzZjNzUyZSIgLz4KICA8cm9sZXM+CiAgICA8cm9sZT4KICAgICAgPG5hbWU+U29tZVJvbGU8 L25hbWU+CiAgICA8L3JvbGU+CiAgPC9yb2xlcz4KPC91c2VyPgoKKiBBYm91dCB0byBjb25uZWN0 KCkgdG8gZW5naW5lLnNsdS5zZTxodHRwOi8vZW5naW5lLnNsdS5zZT4gcG9ydCA4MCAoIzApCiog ICBUcnlpbmcgWFhYLlhYWC5YWFguWFhYLi4uIGNvbm5lY3RlZAoqIENvbm5lY3RlZCB0byBlbmdp bmUuc2x1LnNlPGh0dHA6Ly9lbmdpbmUuc2x1LnNlPiAoWFhYLlhYWC5YWFguWFhYKSBwb3J0IDg9 CjAgKCMwKQoqIFNlcnZlciBhdXRoIHVzaW5nIEJhc2ljIHdpdGggdXNlciAnYWRtaW5AaW50ZXJu YWwnClBPU1QgL2FwaS91c2VycyBIVFRQLzEuMQpBdXRob3JpemF0aW9uOiBCYXNpYyBZV1J0YVc1 QWFXNTBaWEp1WUdINFVpWFZoYURKa1lXaz0zRApVc2VyLUFnZW50OiBjdXJsLzcuMTkuNyAodW5p dmVyc2FsLWFwcGxlLWRhcndpbjEwLjApIGxpYmN1cmwvNy4xOS43IE9wZW5TU0w9Ci8wLjkuOHIg emxpYi8xLjIuMwpIb3N0OiBlbmdpbmUuc2x1LnNlPGh0dHA6Ly9lbmdpbmUuc2x1LnNlPgpBY2Nl cHQ6IGFwcGxpY2F0aW9uL3htbApBY2NlcHQ6IGFwcGxpY2F0aW9uL3htbApDb250ZW50LXR5cGU6 IGFwcGxpY2F0aW9uL3htbApDb250ZW50LUxlbmd0aDogMTg0CkV4cGVjdDogMTAwLWNvbnRpbnVl Cgo8IEhUVFAvMS4xIDEwMCBDb250aW51ZQo8IEhUVFAvMS4xIDIwMSBDcmVhdGVkCjwgRGF0ZTog RnJpLCAxNyBBdWcgMjAxMiAxMzo0NzowMCBHTVQKPCBTZXQtQ29va2llOiBKU0VTU0lPTklEPTNE TFhCYkgxV2Ntdi1qZXBzU2wwNkZ0TWFBLnVuZGVmaW5lZDsgUGF0aD0zRC9hcGkKPCBMb2NhdGlv bjogaHR0cDovL2VuZ2luZS5zbHUuc2UvYXBpL2FwaS9kb21haW5zLzYxNjQyZTczLTZjNzUtMmU3 My02NTYxLTY0PQoyZTczNmM3NTJlL3VzZXJzLzk0MTU1ZTY5LTQ2OTEtNGNiYi1hNmI1LWQzMGE2 YmQ1YjY2Nwo8IENvbnRlbnQtVHlwZTogYXBwbGljYXRpb24veG1sCjwgQ29ubmVjdGlvbjogY2xv c2UKPCBUcmFuc2Zlci1FbmNvZGluZzogY2h1bmtlZAo8CgpUaGF0IExvY2F0aW9uIGlzIGludmFs aWQuIFByb3BlciBsb2NhdGlvbiB3b3VsZCBiZToKPCBMb2NhdGlvbjogaHR0cDovL2VuZ2luZS5z bHUuc2UvYXBpL2RvbWFpbnMvNjE2NDJlNzMtNmM3NS0yZTczLTY1NjEtNjQyZTczPQo2Yzc1MmUv dXNlcnMvOTQxNTVlNjktNDY5MS00Y2JiLWE2YjUtZDMwYTZiZDViNjY3CgpCdWc/CgovS2FybGkK CjE3IGF1ZyAyMDEyIGtsLiAxMC40NSBza3JldiBLYXJsaSBTaj1GNmJlcmc6CgpIZXkgYWxsLAoK dXNpbmcgIm92aXJ0LXNoZWxsIiBJIGNhbiBkbzoKJCBjcmVhdGUgdXNlciAtLXVzZXJfbmFtZSBz b21lbmFtZUBmb28uYmFyPG1haWx0bzpzb21lbmFtZUBmb28uYmFyPiAtLWRvbWFpPQpuLW5hbWUg c29tZXRoaW5nLmZvby5iYXIKCkhvdyBkbyBleHByZXNzIHRoYXQgYXMgYSBQT1NUIHdpdGggdGhl IGFwaT8gQ291bGQgeW91IHByb3ZpZGUgYSB4bWwgZXhhbXBsZT0KPwoKCgpNZWQgVj1FNG5saWdh IEg9RTRsc25pbmdhcgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS09Ci0tLS0KS2FybGkgU2o9RjZiZXJnClN3 ZWRpc2ggVW5pdmVyc2l0eSBvZiBBZ3JpY3VsdHVyYWwgU2NpZW5jZXMKQm94IDcwNzkgKFZpc2l0 aW5nIEFkZHJlc3MgS3Jvbj1FNXN2PUU0Z2VuIDgpClMtNzUwIDA3IFVwcHNhbGEsIFN3ZWRlbgpQ aG9uZTogICs0Ni0oMCkxOC02NyAxNSA2NgprYXJsaS5zam9iZXJnQHNsdS5zZTxtYWlsdG86a2Fy bGkuc2pvYmVyZ0BhZG0uc2x1LnNlPgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KVXNlcnMgbWFpbGluZyBsaXN0ClVzZXJzQG92aXJ0Lm9yZzxtYWlsdG86 VXNlcnNAb3ZpcnQub3JnPgpodHRwOi8vbGlzdHMub3ZpcnQub3JnL21haWxtYW4vbGlzdGluZm8v dXNlcnMKCgoKTWVkIFY9RTRubGlnYSBIPUU0bHNuaW5nYXIKLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPQot LS0tCkthcmxpIFNqPUY2YmVyZwpTd2VkaXNoIFVuaXZlcnNpdHkgb2YgQWdyaWN1bHR1cmFsIFNj aWVuY2VzCkJveCA3MDc5IChWaXNpdGluZyBBZGRyZXNzIEtyb249RTVzdj1FNGdlbiA4KQpTLTc1 MCAwNyBVcHBzYWxhLCBTd2VkZW4KUGhvbmU6ICArNDYtKDApMTgtNjcgMTUgNjYKa2FybGkuc2pv YmVyZ0BzbHUuc2U8bWFpbHRvOmthcmxpLnNqb2JlcmdAYWRtLnNsdS5zZT4KCgotLV8wMDBfMDY4 NDI2NEE2QzA5NDQ0RkE4RjI4RTFCQ0ZFQTY2MTRzbHVzZV8KQ29udGVudC1UeXBlOiB0ZXh0L2h0 bWw7IGNoYXJzZXQ9Imlzby04ODU5LTEiCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3Rl ZC1wcmludGFibGUKCjxodG1sPjxoZWFkPjwvaGVhZD48Ym9keSBzdHlsZT0zRCJ3b3JkLXdyYXA6 IGJyZWFrLXdvcmQ7IC13ZWJraXQtbmJzcC1tb2RlOj0KIHNwYWNlOyAtd2Via2l0LWxpbmUtYnJl YWs6IGFmdGVyLXdoaXRlLXNwYWNlOyAiPkhleSBhbGwsIEkga2luZCBvZiBmaWd1cmVkPQogdGhp cyBvdXQgb24gbXkgb3duLiBTdGlsbCBoYXZlIHNvbWUga2lua3MgdG8gaXJvbiBvdXQsIGZyb20g dGhlIHdlYiBwZXJzcGU9CmN0aXZlLCBidXQgST1CNGxsIGdldCBiYWNrIHRvIHlvdSBvbiB0aGF0 LiBJbiB0aGUgbWVhbiB0aW1lIEkgbm90aWNlZCBhIHJhdD0KaGVyIHN0cmFuZ2UgcmVkaXJlY3Rp b24gc2VudCBiYWNrIHdoZW4gYWRkaW5nIGEgdXNlci4gQ2hlY2sgdGhpcyBvdXQ6PGRpdj48PQpi cj48L2Rpdj48ZGl2PiMmbmJzcDtjdXJsIC12IC1YIFBPU1QgLUggIkFjY2VwdDogYXBwbGljYXRp b24veG1sIiAtSCAiQWNjZXA9CnQ6IGFwcGxpY2F0aW9uL3htbCIgLUggIkNvbnRlbnQtdHlwZTog YXBwbGljYXRpb24veG1sIiAtdSBhZG1pbkBpbnRlcm5hbDpsZT0KdG1laW4hIC1UIHVwbG9hZC54 bWwgPGEgaHJlZj0zRCJodHRwOi8vZW5naW5lLnNsdS5zZTo4MC9hcGkvdXNlcnMiPmh0dHA6Ly9l PQpuZ2luZS5zbHUuc2U6ODAvYXBpL3VzZXJzPC9hPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+ dXBsb2FkLnhtbDo8L2Rpdj48ZGk9CnY+PGRpdj4mbHQ7dXNlciZndDs8L2Rpdj48ZGl2PiZuYnNw OyAmbHQ7dXNlcl9uYW1lJmd0O3NvbWVuYW1lQHNsdS5zZSZsdDsvdT0Kc2VyX25hbWUmZ3Q7PC9k aXY+PGRpdj4mbmJzcDsgJmx0O2RvbWFpbiBpZD0zRCI2MTY0MmU3My02Yzc1LTJlNzMtNjU2MS02 NDJlPQo3MzZjNzUyZSIgLyZndDs8L2Rpdj48ZGl2PiZuYnNwOyAmbHQ7cm9sZXMmZ3Q7PC9kaXY+ PGRpdj4mbmJzcDsgJm5ic3A7ICZsdDs9CnJvbGUmZ3Q7PC9kaXY+PGRpdj4mbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbHQ7bmFtZSZndDtTb21lUm9sZSZsdDsvbmFtZSZndDs8Lz0KZGl2PjxkaXY+Jm5i c3A7ICZuYnNwOyAmbHQ7L3JvbGUmZ3Q7PC9kaXY+PGRpdj4mbmJzcDsgJmx0Oy9yb2xlcyZndDs8 L2Rpdj48PQpkaXY+Jmx0Oy91c2VyJmd0OzwvZGl2PjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+ PGRpdj4qIEFib3V0IHRvIGNvbm5lY3QoKSA9CnRvIDxhIGhyZWY9M0QiaHR0cDovL2VuZ2luZS5z bHUuc2UiPmVuZ2luZS5zbHUuc2U8L2E+IHBvcnQgODAgKCMwKTwvZGl2PjxkaT0Kdj4qICZuYnNw OyBUcnlpbmcgWFhYLlhYWC5YWFguWFhYLi4uIGNvbm5lY3RlZDwvZGl2PjxkaXY+KiBDb25uZWN0 ZWQgdG8gPGEgPQpocmVmPTNEImh0dHA6Ly9lbmdpbmUuc2x1LnNlIj5lbmdpbmUuc2x1LnNlPC9h PiAoWFhYLlhYWC5YWFguWFhYKSBwb3J0IDgwICg9CiMwKTwvZGl2PjxkaXY+KiBTZXJ2ZXIgYXV0 aCB1c2luZyBCYXNpYyB3aXRoIHVzZXIgJ2FkbWluQGludGVybmFsJzwvZGl2PjxkaT0Kdj5QT1NU IC9hcGkvdXNlcnMgSFRUUC8xLjE8L2Rpdj48ZGl2PkF1dGhvcml6YXRpb246IEJhc2ljIFlXUnRh VzVBYVc1MFpYSnVZPQpHSDRVaVhWaGFESmtZV2s9M0Q8L2Rpdj48ZGl2PlVzZXItQWdlbnQ6IGN1 cmwvNy4xOS43ICh1bml2ZXJzYWwtYXBwbGUtZGFyd2k9Cm4xMC4wKSBsaWJjdXJsLzcuMTkuNyBP cGVuU1NMLzAuOS44ciB6bGliLzEuMi4zPC9kaXY+PGRpdj5Ib3N0OiA8YSBocmVmPTNEIj0KaHR0 cDovL2VuZ2luZS5zbHUuc2UiPmVuZ2luZS5zbHUuc2U8L2E+PC9kaXY+PGRpdj5BY2NlcHQ6IGFw cGxpY2F0aW9uL3htbDwvPQpkaXY+PGRpdj5BY2NlcHQ6IGFwcGxpY2F0aW9uL3htbDwvZGl2Pjxk aXY+Q29udGVudC10eXBlOiBhcHBsaWNhdGlvbi94bWw8L2Q9Cml2PjxkaXY+Q29udGVudC1MZW5n dGg6IDE4NDwvZGl2PjxkaXY+RXhwZWN0OiAxMDAtY29udGludWU8L2Rpdj48ZGl2Pjxicj48Lz0K ZGl2PjxkaXY+Jmx0OyBIVFRQLzEuMSAxMDAgQ29udGludWU8L2Rpdj48ZGl2PiZsdDsgSFRUUC8x LjEgMjAxIENyZWF0ZWQ8L2RpPQp2PjxkaXY+Jmx0OyBEYXRlOiBGcmksIDE3IEF1ZyAyMDEyIDEz OjQ3OjAwIEdNVDwvZGl2PjxkaXY+Jmx0OyBTZXQtQ29va2llOiA9CkpTRVNTSU9OSUQ9M0RMWEJi SDFXY212LWplcHNTbDA2RnRNYUEudW5kZWZpbmVkOyBQYXRoPTNEL2FwaTwvZGl2PjxkaXY+Jmx0 Oz0KIExvY2F0aW9uOiA8YSBocmVmPTNEImh0dHA6Ly9lbmdpbmUuc2x1LnNlIj5odHRwOi8vZW5n aW5lLnNsdS5zZTwvYT48Yj4vYXBpPQovYXBpLzwvYj5kb21haW5zLzYxNjQyZTczLTZjNzUtMmU3 My02NTYxLTY0MmU3MzZjNzUyZS91c2Vycy85NDE1NWU2OS00NjkxLTQ9CmNiYi1hNmI1LWQzMGE2 YmQ1YjY2NzwvZGl2PjxkaXY+Jmx0OyBDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL3htbDwvZGl2 PjxkaT0Kdj4mbHQ7IENvbm5lY3Rpb246IGNsb3NlPC9kaXY+PGRpdj4mbHQ7IFRyYW5zZmVyLUVu Y29kaW5nOiBjaHVua2VkPC9kaXY+PGRpPQp2PiZsdDs8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2 PlRoYXQgTG9jYXRpb24gaXMgaW52YWxpZC4gUHJvcGVyIGxvY2F0aW9uIHc9Cm91bGQgYmU6PC9k aXY+PGRpdj4mbHQ7IExvY2F0aW9uOiA8YSBocmVmPTNEImh0dHA6Ly9lbmdpbmUuc2x1LnNlLyI+ aHR0cDovLz0KZW5naW5lLnNsdS5zZS88L2E+YXBpL2RvbWFpbnMvNjE2NDJlNzMtNmM3NS0yZTcz LTY1NjEtNjQyZTczNmM3NTJlL3VzZXJzLzk0PQoxNTVlNjktNDY5MS00Y2JiLWE2YjUtZDMwYTZi ZDViNjY3PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5CdWc/PC9kaXY+PGRpdj49Cjxicj48L2Rp dj48ZGl2Pi9LYXJsaTwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+PGRpdj4xNyBhdWcgMjAxMiBr bC4gMTAuNDUgcz0Ka3JldiBLYXJsaSBTaj1GNmJlcmc6PC9kaXY+PGJyIGNsYXNzPTNEIkFwcGxl LWludGVyY2hhbmdlLW5ld2xpbmUiPjxibG9ja3F1PQpvdGUgdHlwZT0zRCJjaXRlIj48ZGl2IHN0 eWxlPTNEIndvcmQtd3JhcDogYnJlYWstd29yZDsgLXdlYmtpdC1uYnNwLW1vZGU6IHM9CnBhY2U7 IC13ZWJraXQtbGluZS1icmVhazogYWZ0ZXItd2hpdGUtc3BhY2U7ICI+SGV5IGFsbCw8ZGl2Pjxi cj48L2Rpdj48ZGl2Pj0KdXNpbmcgIm92aXJ0LXNoZWxsIiBJIGNhbiBkbzo8L2Rpdj48ZGl2PiQm bmJzcDtjcmVhdGUgdXNlciAtLXVzZXJfbmFtZSA8YSBoPQpyZWY9M0QibWFpbHRvOnNvbWVuYW1l QGZvby5iYXIiPnNvbWVuYW1lQGZvby5iYXI8L2E+IC0tZG9tYWluLW5hbWUgc29tZXRoaW49Cmcu Zm9vLmJhcjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+SG93IGRvIGV4cHJlc3MgdGhhdCBhcyBh IFBPU1Qgd2l0aCB0aGUgYT0KcGk/IENvdWxkIHlvdSBwcm92aWRlIGEgeG1sIGV4YW1wbGU/PC9k aXY+PGRpdj48YnI+PGRpdj4KPGRpdj48YnIgY2xhc3M9M0QiQXBwbGUtaW50ZXJjaGFuZ2UtbmV3 bGluZSI+PGJyPjwvZGl2PjxkaXY+TWVkIFY9RTRubGlnYSBIPQo9RTRsc25pbmdhcjxicj4tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS09 Ci0tLS0tLS0tLS0tLS0tLS0tLS08YnI+S2FybGkgU2o9RjZiZXJnPGJyPlN3ZWRpc2ggVW5pdmVy c2l0eSBvZiBBZ3JpY3VsdHVyYT0KbCBTY2llbmNlczxicj5Cb3ggNzA3OSAoVmlzaXRpbmcgQWRk cmVzcyBLcm9uPUU1c3Y9RTRnZW4gOCk8YnI+Uy03NTAgMDcgVXBwPQpzYWxhLCBTd2VkZW48YnI+ UGhvbmU6ICZuYnNwOys0Ni0oMCkxOC02NyAxNSA2NjwvZGl2PjxkaXY+PGEgaHJlZj0zRCJtYWls dG89CjprYXJsaS5zam9iZXJnQGFkbS5zbHUuc2UiPmthcmxpLnNqb2JlcmdAc2x1LnNlPC9hPjwv ZGl2Pgo8L2Rpdj4KPGJyPjwvZGl2PjwvZGl2Pl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fPGJyPlVzZXJzIG1hPQppbGluZyBsaXN0PGJyPjxhIGhyZWY9M0Qi bWFpbHRvOlVzZXJzQG92aXJ0Lm9yZyI+VXNlcnNAb3ZpcnQub3JnPC9hPjxicj5odHQ9CnA6Ly9s aXN0cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2Vyczxicj48L2Jsb2NrcXVvdGU+PC9k aXY+PGJyPjxkaXY+CjxkaXY+PGJyIGNsYXNzPTNEIkFwcGxlLWludGVyY2hhbmdlLW5ld2xpbmUi Pjxicj48L2Rpdj48ZGl2Pk1lZCBWPUU0bmxpZ2EgSD0KPUU0bHNuaW5nYXI8YnI+LS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPQotLS0t LS0tLS0tLS0tLS0tLS0tPGJyPkthcmxpIFNqPUY2YmVyZzxicj5Td2VkaXNoIFVuaXZlcnNpdHkg b2YgQWdyaWN1bHR1cmE9CmwgU2NpZW5jZXM8YnI+Qm94IDcwNzkgKFZpc2l0aW5nIEFkZHJlc3Mg S3Jvbj1FNXN2PUU0Z2VuIDgpPGJyPlMtNzUwIDA3IFVwcD0Kc2FsYSwgU3dlZGVuPGJyPlBob25l OiAmbmJzcDsrNDYtKDApMTgtNjcgMTUgNjY8L2Rpdj48ZGl2PjxhIGhyZWY9M0QibWFpbHRvPQo6 a2FybGkuc2pvYmVyZ0BhZG0uc2x1LnNlIj5rYXJsaS5zam9iZXJnQHNsdS5zZTwvYT48L2Rpdj4K PC9kaXY+Cjxicj48L2Rpdj48L2JvZHk+PC9odG1sPj0KCi0tXzAwMF8wNjg0MjY0QTZDMDk0NDRG QThGMjhFMUJDRkVBNjYxNHNsdXNlXy0tCg== --===============5986923667083230968==-- From ofrenkel at redhat.com Mon Aug 20 03:38:29 2012 Content-Type: multipart/mixed; boundary="===============3447625172333187340==" MIME-Version: 1.0 From: Omer Frenkel To: users at ovirt.org Subject: Re: [Users] Create domain user with api Date: Mon, 20 Aug 2012 03:38:27 -0400 Message-ID: <1148552987.32071892.1345448307837.JavaMail.root@redhat.com> In-Reply-To: 0684264A-6C09-444F-A8F2-8E1BCFEA6614@slu.se --===============3447625172333187340== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable ------=3D_Part_32071891_1853162604.1345448307836 Content-Type: text/plain; charset=3Dutf-8 Content-Transfer-Encoding: quoted-printable adding Ori, comment inside=3D20 ----- Original Message ----- > From: "Karli Sj=3DC3=3DB6berg" > To: "Karli Sj=3DC3=3DB6berg" > Cc: "users" > Sent: Monday, August 20, 2012 9:25:19 AM > Subject: Re: [Users] Create domain user with api > Hey all, I kind of figured this out on my own. Still have some kinks > to iron out, from the web perspective, but I=3DC2=3DB4ll get back to you = on > that. In the mean time I noticed a rather strange redirection sent > back when adding a user. Check this out: > # curl -v -X POST -H "Accept: application/xml" -H "Accept: > application/xml" -H "Content-type: application/xml" -u > admin(a)internal:letmein! -T upload.xml > http://engine.slu.se:80/api/users > upload.xml: > > somename(a)slu.se > maybe i missed something, but why you have domain id under user?=3D20 user entity has 'domain' which is the directory server.=3D20 > > SomeRole > > > > * About to connect() to engine.slu.se port 80 (#0) > * Trying XXX.XXX.XXX.XXX... connected > * Connected to engine.slu.se (XXX.XXX.XXX.XXX) port 80 (#0) > * Server auth using Basic with user 'admin(a)internal' > POST /api/users HTTP/1.1 > Authorization: Basic YWRtaW5AaW50ZXJuYGH4UiXVhaDJkYWk=3D3D > User-Agent: curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 > OpenSSL/0.9.8r zlib/1.2.3 > Host: engine.slu.se > Accept: application/xml > Accept: application/xml > Content-type: application/xml > Content-Length: 184 > Expect: 100-continue > < HTTP/1.1 100 Continue > < HTTP/1.1 201 Created > < Date: Fri, 17 Aug 2012 13:47:00 GMT > < Set-Cookie: JSESSIONID=3D3DLXBbH1Wcmv-jepsSl06FtMaA.undefined; > Path=3D3D/api > < Location: http://engine.slu.se /api/api/ > domains/61642e73-6c75-2e73-6561-642e736c752e/users/94155e69-4691-4cbb-a6b= =3D 5-d30a6bd5b667 > < Content-Type: application/xml > < Connection: close > < Transfer-Encoding: chunked > < > That Location is invalid. Proper location would be: > < Location: http://engine.slu.se/ > api/domains/61642e73-6c75-2e73-6561-642e736c752e/users/94155e69-4691-4cbb= =3D -a6b5-d30a6bd5b667 > Bug? > /Karli > 17 aug 2012 kl. 10.45 skrev Karli Sj=3DC3=3DB6berg: > > Hey all, >=3D20 > > using "ovirt-shell" I can do: >=3D20 > > $ create user --user_name somename(a)foo.bar --domain-name > > something.foo.bar >=3D20 > > How do express that as a POST with the api? Could you provide a xml > > example? >=3D20 > > Med V=3DC3=3DA4nliga H=3DC3=3DA4lsningar >=3D20 > > -----------------------------------------------------------------------= =3D -------- >=3D20 > > Karli Sj=3DC3=3DB6berg >=3D20 > > Swedish University of Agricultural Sciences >=3D20 > > Box 7079 (Visiting Address Kron=3DC3=3DA5sv=3DC3=3DA4gen 8) >=3D20 > > S-750 07 Uppsala, Sweden >=3D20 > > Phone: +46-(0)18-67 15 66 >=3D20 > > karli.sjoberg(a)slu.se >=3D20 > > _______________________________________________ >=3D20 > > Users mailing list >=3D20 > > Users(a)ovirt.org >=3D20 > > http://lists.ovirt.org/mailman/listinfo/users >=3D20 > Med V=3DC3=3DA4nliga H=3DC3=3DA4lsningar > -------------------------------------------------------------------------= =3D ------ > Karli Sj=3DC3=3DB6berg > Swedish University of Agricultural Sciences > Box 7079 (Visiting Address Kron=3DC3=3DA5sv=3DC3=3DA4gen 8) > S-750 07 Uppsala, Sweden > Phone: +46-(0)18-67 15 66 > karli.sjoberg(a)slu.se > _______________________________________________ > Users mailing list > Users(a)ovirt.org > http://lists.ovirt.org/mailman/listinfo/users ------=3D_Part_32071891_1853162604.1345448307836 Content-Type: text/html; charset=3Dutf-8 Content-Transfer-Encoding: quoted-printable <=3D div style=3D3D'font-family: times new roman,new york,times,serif; font-size= : =3D 12pt; color: #000000'>adding Ori, comment inside


= From: = =3D "Karli Sj=3DC3=3DB6berg" <Karli.Sjoberg(a)slu.se>
To: "= Karli =3D Sj=3DC3=3DB6berg" <Karli.Sjoberg(a)slu.se>
Cc: "users" <= users@=3D ovirt.org>
Sent: Monday, August 20, 2012 9:25:19 AM
Subj= =3D ect: Re: [Users] Create domain user with api

Hey all, I kind of = =3D figured this out on my own. Still have some kinks to iron out, from the web= =3D perspective, but I=3DC2=3DB4ll get back to you on that. In the mean time I= not=3D iced a rather strange redirection sent back when adding a user. Check this = =3D out:

# curl -v -X POST -H "Accept: application/xml"= =3D -H "Accept: application/xml" -H "Content-type: application/xml" -u admin(a= )i=3D nternal:letmein! -T upload.xml http://engine.slu.se:80/api/users

<= /d=3D iv>
upload.xml:
<user>
  <user_n= =3D ame>somename(a)slu.se</user_name>
  <domain id= =3D3D"=3D 61642e73-6c75-2e73-6561-642e736c752e" />
&nbs= p;=3D
maybe i missed something, but why you have domain= =3D id under user?
user entity has 'domain' which is the directory server.<= =3D br>
    <= =3D role>
      <name>SomeRole</name>
    </role>
  </roles>
<= =3D div></user>

* About to connect() = =3D to engine.slu.se= por=3D t 80 (#0)
*   Trying XXX.XXX.XXX.XXX... connected
= =3D * Connected to engin= e.sl=3D u.se (XXX.XXX.XXX.XXX) port 80 (#0)
* Server auth using Basic= =3D with user 'admin(a)internal'
POST /api/users HTTP/1.1
= Au=3D thorization: Basic YWRtaW5AaW50ZXJuYGH4UiXVhaDJkYWk=3D3D
User-Age= nt=3D : curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL/0.9.8r zl= =3D ib/1.2.3
Accept: application/xml
Accept: appl= =3D ication/xml
Content-type: application/xml
Content-Lengt= =3D h: 184
Expect: 100-continue

< HTTP/1.= =3D 1 100 Continue
< HTTP/1.1 201 Created
< Date: Fri= =3D , 17 Aug 2012 13:47:00 GMT
< Set-Cookie: JSESSIONID=3D3DLXBbH1= Wc=3D mv-jepsSl06FtMaA.undefined; Path=3D3D/api
< Location: http://engine.slu.se/api/= ap=3D i/domains/61642e73-6c75-2e73-6561-642e736c752e/users/94155e69-4691-4cbb= =3D -a6b5-d30a6bd5b667
< Content-Type: application/xml
&= =3D lt; Connection: close
< Transfer-Encoding: chunked
&= =3D lt;

That Location is invalid. Proper location woul= =3D d be:
< Location: http://engine.slu.se/api/domains/61642e73-6c75-2e73-6561-642e73= =3D 6c752e/users/94155e69-4691-4cbb-a6b5-d30a6bd5b667

= =3D Bug?

/Karli

17 aug 2= =3D 012 kl. 10.45 skrev Karli Sj=3DC3=3DB6berg:

Hey all,
=
using "ovirt-shell" I can do:
$ create user --u= =3D ser_name somena= me(a)foo=3D .bar --domain-name something.foo.bar

How do ex= =3D press that as a POST with the api? Could you provide a xml example?



Med V=3DC3=3D= A4nlig=3D a H=3DC3=3DA4lsningar
--------------------------------------------------= ----=3D -------------------------
Karli Sj=3DC3=3DB6berg
Swedish University o= f Ag=3D ricultural Sciences
Box 7079 (Visiting Address Kron=3DC3=3DA5sv=3DC3=3DA= 4gen 8)<=3D br>S-750 07 Uppsala, Sweden
Phone:  +46-(0)18-67 15 66
karli.sjo= berg(a)s=3D lu.se

_______________________________________________
Users ma= =3D iling list
Us= ers(a)ov=3D irt.org
http://lists.ovirt.org/mailman/listinfo/users



Med V=3DC3=3D= A4nlig=3D a H=3DC3=3DA4lsningar
--------------------------------------------------= ----=3D -------------------------
Karli Sj=3DC3=3DB6berg
Swedish University o= f Ag=3D ricultural Sciences
Box 7079 (Visiting Address Kron=3DC3=3DA5sv=3DC3=3DA= 4gen 8)<=3D br>S-750 07 Uppsala, Sweden
Phone:  +46-(0)18-67 15 66
karli.sjo= berg(a)s=3D lu.se


_______________________________________________
Users mail= =3D ing list
Users(a)ovirt.org
http://lists.ovirt.org/mailman/listinfo/us= er=3D s

------=3D_Part_32071891_1853162604.1345448307836-- --===============3447625172333187340== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" LS0tLS0tPV9QYXJ0XzMyMDcxODkxXzE4NTMxNjI2MDQuMTM0NTQ0ODMwNzgzNgpDb250ZW50LVR5 cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9dXRmLTgKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzog cXVvdGVkLXByaW50YWJsZQoKYWRkaW5nIE9yaSwgY29tbWVudCBpbnNpZGU9MjAKCi0tLS0tIE9y aWdpbmFsIE1lc3NhZ2UgLS0tLS0KCj4gRnJvbTogIkthcmxpIFNqPUMzPUI2YmVyZyIgPEthcmxp LlNqb2JlcmdAc2x1LnNlPgo+IFRvOiAiS2FybGkgU2o9QzM9QjZiZXJnIiA8S2FybGkuU2pvYmVy Z0BzbHUuc2U+Cj4gQ2M6ICJ1c2VycyIgPHVzZXJzQG92aXJ0Lm9yZz4KPiBTZW50OiBNb25kYXks IEF1Z3VzdCAyMCwgMjAxMiA5OjI1OjE5IEFNCj4gU3ViamVjdDogUmU6IFtVc2Vyc10gQ3JlYXRl IGRvbWFpbiB1c2VyIHdpdGggYXBpCgo+IEhleSBhbGwsIEkga2luZCBvZiBmaWd1cmVkIHRoaXMg b3V0IG9uIG15IG93bi4gU3RpbGwgaGF2ZSBzb21lIGtpbmtzCj4gdG8gaXJvbiBvdXQsIGZyb20g dGhlIHdlYiBwZXJzcGVjdGl2ZSwgYnV0IEk9QzI9QjRsbCBnZXQgYmFjayB0byB5b3Ugb24KPiB0 aGF0LiBJbiB0aGUgbWVhbiB0aW1lIEkgbm90aWNlZCBhIHJhdGhlciBzdHJhbmdlIHJlZGlyZWN0 aW9uIHNlbnQKPiBiYWNrIHdoZW4gYWRkaW5nIGEgdXNlci4gQ2hlY2sgdGhpcyBvdXQ6Cgo+ICMg Y3VybCAtdiAtWCBQT1NUIC1IICJBY2NlcHQ6IGFwcGxpY2F0aW9uL3htbCIgLUggIkFjY2VwdDoK PiBhcHBsaWNhdGlvbi94bWwiIC1IICJDb250ZW50LXR5cGU6IGFwcGxpY2F0aW9uL3htbCIgLXUK PiBhZG1pbkBpbnRlcm5hbDpsZXRtZWluISAtVCB1cGxvYWQueG1sCj4gaHR0cDovL2VuZ2luZS5z bHUuc2U6ODAvYXBpL3VzZXJzCgo+IHVwbG9hZC54bWw6Cgo+IDx1c2VyPgo+IDx1c2VyX25hbWU+ c29tZW5hbWVAc2x1LnNlPC91c2VyX25hbWU+Cj4gPGRvbWFpbiBpZD0zRCI2MTY0MmU3My02Yzc1 LTJlNzMtNjU2MS02NDJlNzM2Yzc1MmUiIC8+CgptYXliZSBpIG1pc3NlZCBzb21ldGhpbmcsIGJ1 dCB3aHkgeW91IGhhdmUgZG9tYWluIGlkIHVuZGVyIHVzZXI/PTIwCnVzZXIgZW50aXR5IGhhcyAn ZG9tYWluJyB3aGljaCBpcyB0aGUgZGlyZWN0b3J5IHNlcnZlci49MjAKCj4gPHJvbGU+Cj4gPG5h bWU+U29tZVJvbGU8L25hbWU+Cj4gPC9yb2xlPgo+IDwvcm9sZXM+Cj4gPC91c2VyPgoKPiAqIEFi b3V0IHRvIGNvbm5lY3QoKSB0byBlbmdpbmUuc2x1LnNlIHBvcnQgODAgKCMwKQo+ICogVHJ5aW5n IFhYWC5YWFguWFhYLlhYWC4uLiBjb25uZWN0ZWQKPiAqIENvbm5lY3RlZCB0byBlbmdpbmUuc2x1 LnNlIChYWFguWFhYLlhYWC5YWFgpIHBvcnQgODAgKCMwKQo+ICogU2VydmVyIGF1dGggdXNpbmcg QmFzaWMgd2l0aCB1c2VyICdhZG1pbkBpbnRlcm5hbCcKPiBQT1NUIC9hcGkvdXNlcnMgSFRUUC8x LjEKPiBBdXRob3JpemF0aW9uOiBCYXNpYyBZV1J0YVc1QWFXNTBaWEp1WUdINFVpWFZoYURKa1lX az0zRAo+IFVzZXItQWdlbnQ6IGN1cmwvNy4xOS43ICh1bml2ZXJzYWwtYXBwbGUtZGFyd2luMTAu MCkgbGliY3VybC83LjE5LjcKPiBPcGVuU1NMLzAuOS44ciB6bGliLzEuMi4zCj4gSG9zdDogZW5n aW5lLnNsdS5zZQo+IEFjY2VwdDogYXBwbGljYXRpb24veG1sCj4gQWNjZXB0OiBhcHBsaWNhdGlv bi94bWwKPiBDb250ZW50LXR5cGU6IGFwcGxpY2F0aW9uL3htbAo+IENvbnRlbnQtTGVuZ3RoOiAx ODQKPiBFeHBlY3Q6IDEwMC1jb250aW51ZQoKPiA8IEhUVFAvMS4xIDEwMCBDb250aW51ZQo+IDwg SFRUUC8xLjEgMjAxIENyZWF0ZWQKPiA8IERhdGU6IEZyaSwgMTcgQXVnIDIwMTIgMTM6NDc6MDAg R01UCj4gPCBTZXQtQ29va2llOiBKU0VTU0lPTklEPTNETFhCYkgxV2Ntdi1qZXBzU2wwNkZ0TWFB LnVuZGVmaW5lZDsKPiBQYXRoPTNEL2FwaQo+IDwgTG9jYXRpb246IGh0dHA6Ly9lbmdpbmUuc2x1 LnNlIC9hcGkvYXBpLwo+IGRvbWFpbnMvNjE2NDJlNzMtNmM3NS0yZTczLTY1NjEtNjQyZTczNmM3 NTJlL3VzZXJzLzk0MTU1ZTY5LTQ2OTEtNGNiYi1hNmI9CjUtZDMwYTZiZDViNjY3Cj4gPCBDb250 ZW50LVR5cGU6IGFwcGxpY2F0aW9uL3htbAo+IDwgQ29ubmVjdGlvbjogY2xvc2UKPiA8IFRyYW5z ZmVyLUVuY29kaW5nOiBjaHVua2VkCj4gPAoKPiBUaGF0IExvY2F0aW9uIGlzIGludmFsaWQuIFBy b3BlciBsb2NhdGlvbiB3b3VsZCBiZToKPiA8IExvY2F0aW9uOiBodHRwOi8vZW5naW5lLnNsdS5z ZS8KPiBhcGkvZG9tYWlucy82MTY0MmU3My02Yzc1LTJlNzMtNjU2MS02NDJlNzM2Yzc1MmUvdXNl cnMvOTQxNTVlNjktNDY5MS00Y2JiPQotYTZiNS1kMzBhNmJkNWI2NjcKCj4gQnVnPwoKPiAvS2Fy bGkKCj4gMTcgYXVnIDIwMTIga2wuIDEwLjQ1IHNrcmV2IEthcmxpIFNqPUMzPUI2YmVyZzoKCj4g PiBIZXkgYWxsLAo+PTIwCgo+ID4gdXNpbmcgIm92aXJ0LXNoZWxsIiBJIGNhbiBkbzoKPj0yMAo+ ID4gJCBjcmVhdGUgdXNlciAtLXVzZXJfbmFtZSBzb21lbmFtZUBmb28uYmFyIC0tZG9tYWluLW5h bWUKPiA+IHNvbWV0aGluZy5mb28uYmFyCj49MjAKCj4gPiBIb3cgZG8gZXhwcmVzcyB0aGF0IGFz IGEgUE9TVCB3aXRoIHRoZSBhcGk/IENvdWxkIHlvdSBwcm92aWRlIGEgeG1sCj4gPiBleGFtcGxl Pwo+PTIwCgo+ID4gTWVkIFY9QzM9QTRubGlnYSBIPUMzPUE0bHNuaW5nYXIKPj0yMAo+ID4gLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS09Ci0tLS0tLS0tCj49MjAKPiA+IEthcmxpIFNqPUMzPUI2YmVyZwo+PTIwCj4g PiBTd2VkaXNoIFVuaXZlcnNpdHkgb2YgQWdyaWN1bHR1cmFsIFNjaWVuY2VzCj49MjAKPiA+IEJv eCA3MDc5IChWaXNpdGluZyBBZGRyZXNzIEtyb249QzM9QTVzdj1DMz1BNGdlbiA4KQo+PTIwCj4g PiBTLTc1MCAwNyBVcHBzYWxhLCBTd2VkZW4KPj0yMAo+ID4gUGhvbmU6ICs0Ni0oMCkxOC02NyAx NSA2Ngo+PTIwCj4gPiBrYXJsaS5zam9iZXJnQHNsdS5zZQo+PTIwCj4gPiBfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+PTIwCj4gPiBVc2VycyBtYWlsaW5n IGxpc3QKPj0yMAo+ID4gVXNlcnNAb3ZpcnQub3JnCj49MjAKPiA+IGh0dHA6Ly9saXN0cy5vdmly dC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2Vycwo+PTIwCgo+IE1lZCBWPUMzPUE0bmxpZ2EgSD1D Mz1BNGxzbmluZ2FyCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT0KLS0tLS0tCj4gS2FybGkgU2o9QzM9QjZi ZXJnCj4gU3dlZGlzaCBVbml2ZXJzaXR5IG9mIEFncmljdWx0dXJhbCBTY2llbmNlcwo+IEJveCA3 MDc5IChWaXNpdGluZyBBZGRyZXNzIEtyb249QzM9QTVzdj1DMz1BNGdlbiA4KQo+IFMtNzUwIDA3 IFVwcHNhbGEsIFN3ZWRlbgo+IFBob25lOiArNDYtKDApMTgtNjcgMTUgNjYKPiBrYXJsaS5zam9i ZXJnQHNsdS5zZQoKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwo+IFVzZXJzIG1haWxpbmcgbGlzdAo+IFVzZXJzQG92aXJ0Lm9yZwo+IGh0dHA6Ly9saXN0 cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2VycwoKLS0tLS0tPV9QYXJ0XzMyMDcxODkx XzE4NTMxNjI2MDQuMTM0NTQ0ODMwNzgzNgpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNl dD11dGYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBxdW90ZWQtcHJpbnRhYmxlCgo8aHRt bD48aGVhZD48c3R5bGUgdHlwZT0zRCd0ZXh0L2Nzcyc+cCB7IG1hcmdpbjogMDsgfTwvc3R5bGU+ PC9oZWFkPjxib2R5Pjw9CmRpdiBzdHlsZT0zRCdmb250LWZhbWlseTogdGltZXMgbmV3IHJvbWFu LG5ldyB5b3JrLHRpbWVzLHNlcmlmOyBmb250LXNpemU6ID0KMTJwdDsgY29sb3I6ICMwMDAwMDAn PmFkZGluZyBPcmksIGNvbW1lbnQgaW5zaWRlPGJyPjxicj48aHIgaWQ9M0QiendjaHIiPjxiPQps b2NrcXVvdGUgc3R5bGU9M0QiYm9yZGVyLWxlZnQ6MnB4IHNvbGlkIHJnYigxNiwgMTYsIDI1NSk7 bWFyZ2luLWxlZnQ6NXB4O3A9CmFkZGluZy1sZWZ0OjVweDtjb2xvcjojMDAwO2ZvbnQtd2VpZ2h0 Om5vcm1hbDtmb250LXN0eWxlOm5vcm1hbDt0ZXh0LWRlY29yYT0KdGlvbjpub25lO2ZvbnQtZmFt aWx5OkhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMnB0OyI+PGI+RnJvbTog PQo8L2I+IkthcmxpIFNqPUMzPUI2YmVyZyIgJmx0O0thcmxpLlNqb2JlcmdAc2x1LnNlJmd0Ozxi cj48Yj5UbzogPC9iPiJLYXJsaSA9ClNqPUMzPUI2YmVyZyIgJmx0O0thcmxpLlNqb2JlcmdAc2x1 LnNlJmd0Ozxicj48Yj5DYzogPC9iPiJ1c2VycyIgJmx0O3VzZXJzQD0Kb3ZpcnQub3JnJmd0Ozxi cj48Yj5TZW50OiA8L2I+TW9uZGF5LCBBdWd1c3QgMjAsIDIwMTIgOToyNToxOSBBTTxicj48Yj5T dWJqPQplY3Q6IDwvYj5SZTogW1VzZXJzXSBDcmVhdGUgZG9tYWluIHVzZXIgd2l0aCBhcGk8YnI+ PGJyPkhleSBhbGwsIEkga2luZCBvZiA9CmZpZ3VyZWQgdGhpcyBvdXQgb24gbXkgb3duLiBTdGls bCBoYXZlIHNvbWUga2lua3MgdG8gaXJvbiBvdXQsIGZyb20gdGhlIHdlYj0KIHBlcnNwZWN0aXZl LCBidXQgST1DMj1CNGxsIGdldCBiYWNrIHRvIHlvdSBvbiB0aGF0LiBJbiB0aGUgbWVhbiB0aW1l IEkgbm90PQppY2VkIGEgcmF0aGVyIHN0cmFuZ2UgcmVkaXJlY3Rpb24gc2VudCBiYWNrIHdoZW4g YWRkaW5nIGEgdXNlci4gQ2hlY2sgdGhpcyA9Cm91dDo8ZGl2Pjxicj48L2Rpdj48ZGl2PiMmbmJz cDtjdXJsIC12IC1YIFBPU1QgLUggIkFjY2VwdDogYXBwbGljYXRpb24veG1sIj0KIC1IICJBY2Nl cHQ6IGFwcGxpY2F0aW9uL3htbCIgLUggIkNvbnRlbnQtdHlwZTogYXBwbGljYXRpb24veG1sIiAt dSBhZG1pbkBpPQpudGVybmFsOmxldG1laW4hIC1UIHVwbG9hZC54bWwgPGEgaHJlZj0zRCJodHRw Oi8vZW5naW5lLnNsdS5zZTo4MC9hcGkvdXNlcnM9CiIgdGFyZ2V0PTNEIl9ibGFuayI+aHR0cDov L2VuZ2luZS5zbHUuc2U6ODAvYXBpL3VzZXJzPC9hPjwvZGl2PjxkaXY+PGJyPjwvZD0KaXY+PGRp dj51cGxvYWQueG1sOjwvZGl2PjxkaXY+PGRpdj4mbHQ7dXNlciZndDs8L2Rpdj48ZGl2PiZuYnNw OyAmbHQ7dXNlcl9uPQphbWUmZ3Q7c29tZW5hbWVAc2x1LnNlJmx0Oy91c2VyX25hbWUmZ3Q7PC9k aXY+PGRpdj4mbmJzcDsgJmx0O2RvbWFpbiBpZD0zRCI9CjYxNjQyZTczLTZjNzUtMmU3My02NTYx LTY0MmU3MzZjNzUyZSIgLyZndDs8L2Rpdj48ZGl2IGlkPTNEIkRXVDMzODEiPiZuYnNwOz0KIDwv ZGl2PjwvZGl2PjwvYmxvY2txdW90ZT5tYXliZSBpIG1pc3NlZCBzb21ldGhpbmcsIGJ1dCB3aHkg eW91IGhhdmUgZG9tYWluPQogaWQgdW5kZXIgdXNlcj88YnI+dXNlciBlbnRpdHkgaGFzICdkb21h aW4nIHdoaWNoIGlzIHRoZSBkaXJlY3Rvcnkgc2VydmVyLjw9CmJyPjxibG9ja3F1b3RlIHN0eWxl PTNEImJvcmRlci1sZWZ0OiAycHggc29saWQgcmdiKDE2LCAxNiwgMjU1KTsgbWFyZ2luLWxlZj0K dDogNXB4OyBwYWRkaW5nLWxlZnQ6IDVweDsgY29sb3I6IHJnYigwLCAwLCAwKTsgZm9udC13ZWln aHQ6IG5vcm1hbDsgZm9udC1zPQp0eWxlOiBub3JtYWw7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsg Zm9udC1mYW1pbHk6IEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmk9CmY7IGZvbnQtc2l6ZTogMTJw dDsiPjxkaXY+PGRpdj48cm9sZXM+PC9yb2xlcz48L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgJmx0 Oz0Kcm9sZSZndDs8L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDtuYW1lJmd0O1Nv bWVSb2xlJmx0Oy9uYW1lJmd0OzwvPQpkaXY+PGRpdj4mbmJzcDsgJm5ic3A7ICZsdDsvcm9sZSZn dDs8L2Rpdj48ZGl2PiZuYnNwOyAmbHQ7L3JvbGVzJmd0OzwvZGl2Pjw9CmRpdj4mbHQ7L3VzZXIm Z3Q7PC9kaXY+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj48ZGl2PiogQWJvdXQgdG8gY29ubmVj dCgpID0KdG8gPGEgaHJlZj0zRCJodHRwOi8vZW5naW5lLnNsdS5zZSIgdGFyZ2V0PTNEIl9ibGFu ayI+ZW5naW5lLnNsdS5zZTwvYT4gcG9yPQp0IDgwICgjMCk8L2Rpdj48ZGl2PiogJm5ic3A7IFRy eWluZyBYWFguWFhYLlhYWC5YWFguLi4gY29ubmVjdGVkPC9kaXY+PGRpdj49CiogQ29ubmVjdGVk IHRvIDxhIGhyZWY9M0QiaHR0cDovL2VuZ2luZS5zbHUuc2UiIHRhcmdldD0zRCJfYmxhbmsiPmVu Z2luZS5zbD0KdS5zZTwvYT4gKFhYWC5YWFguWFhYLlhYWCkgcG9ydCA4MCAoIzApPC9kaXY+PGRp dj4qIFNlcnZlciBhdXRoIHVzaW5nIEJhc2ljPQogd2l0aCB1c2VyICdhZG1pbkBpbnRlcm5hbCc8 L2Rpdj48ZGl2PlBPU1QgL2FwaS91c2VycyBIVFRQLzEuMTwvZGl2PjxkaXY+QXU9CnRob3JpemF0 aW9uOiBCYXNpYyBZV1J0YVc1QWFXNTBaWEp1WUdINFVpWFZoYURKa1lXaz0zRDwvZGl2PjxkaXY+ VXNlci1BZ2VudD0KOiBjdXJsLzcuMTkuNyAodW5pdmVyc2FsLWFwcGxlLWRhcndpbjEwLjApIGxp YmN1cmwvNy4xOS43IE9wZW5TU0wvMC45LjhyIHpsPQppYi8xLjIuMzwvZGl2PjxkaXY+SG9zdDog PGEgaHJlZj0zRCJodHRwOi8vZW5naW5lLnNsdS5zZSIgdGFyZ2V0PTNEIl9ibGFuayI9Cj5lbmdp bmUuc2x1LnNlPC9hPjwvZGl2PjxkaXY+QWNjZXB0OiBhcHBsaWNhdGlvbi94bWw8L2Rpdj48ZGl2 PkFjY2VwdDogYXBwbD0KaWNhdGlvbi94bWw8L2Rpdj48ZGl2PkNvbnRlbnQtdHlwZTogYXBwbGlj YXRpb24veG1sPC9kaXY+PGRpdj5Db250ZW50LUxlbmd0PQpoOiAxODQ8L2Rpdj48ZGl2PkV4cGVj dDogMTAwLWNvbnRpbnVlPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj4mbHQ7IEhUVFAvMS49CjEg MTAwIENvbnRpbnVlPC9kaXY+PGRpdj4mbHQ7IEhUVFAvMS4xIDIwMSBDcmVhdGVkPC9kaXY+PGRp dj4mbHQ7IERhdGU6IEZyaT0KLCAxNyBBdWcgMjAxMiAxMzo0NzowMCBHTVQ8L2Rpdj48ZGl2PiZs dDsgU2V0LUNvb2tpZTogSlNFU1NJT05JRD0zRExYQmJIMVdjPQptdi1qZXBzU2wwNkZ0TWFBLnVu ZGVmaW5lZDsgUGF0aD0zRC9hcGk8L2Rpdj48ZGl2PiZsdDsgTG9jYXRpb246IDxhIGhyZWY9M0Q9 CiJodHRwOi8vZW5naW5lLnNsdS5zZSIgdGFyZ2V0PTNEIl9ibGFuayI+aHR0cDovL2VuZ2luZS5z bHUuc2U8L2E+PGI+L2FwaS9hcD0KaS88L2I+ZG9tYWlucy82MTY0MmU3My02Yzc1LTJlNzMtNjU2 MS02NDJlNzM2Yzc1MmUvdXNlcnMvOTQxNTVlNjktNDY5MS00Y2JiPQotYTZiNS1kMzBhNmJkNWI2 Njc8L2Rpdj48ZGl2PiZsdDsgQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi94bWw8L2Rpdj48ZGl2 PiY9Cmx0OyBDb25uZWN0aW9uOiBjbG9zZTwvZGl2PjxkaXY+Jmx0OyBUcmFuc2Zlci1FbmNvZGlu ZzogY2h1bmtlZDwvZGl2PjxkaXY+Jj0KbHQ7PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5UaGF0 IExvY2F0aW9uIGlzIGludmFsaWQuIFByb3BlciBsb2NhdGlvbiB3b3VsPQpkIGJlOjwvZGl2Pjxk aXY+Jmx0OyBMb2NhdGlvbjogPGEgaHJlZj0zRCJodHRwOi8vZW5naW5lLnNsdS5zZS8iIHRhcmdl dD0zRCI9Cl9ibGFuayI+aHR0cDovL2VuZ2luZS5zbHUuc2UvPC9hPmFwaS9kb21haW5zLzYxNjQy ZTczLTZjNzUtMmU3My02NTYxLTY0MmU3Mz0KNmM3NTJlL3VzZXJzLzk0MTU1ZTY5LTQ2OTEtNGNi Yi1hNmI1LWQzMGE2YmQ1YjY2NzwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+PQpCdWc/PC9kaXY+ PGRpdj48YnI+PC9kaXY+PGRpdj4vS2FybGk8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PjxkaXY+ MTcgYXVnIDI9CjAxMiBrbC4gMTAuNDUgc2tyZXYgS2FybGkgU2o9QzM9QjZiZXJnOjwvZGl2Pjxi ciBjbGFzcz0zRCJBcHBsZS1pbnRlcmNoYW5nZT0KLW5ld2xpbmUiPjxibG9ja3F1b3RlPjxkaXYg c3R5bGU9M0Qid29yZC13cmFwOiBicmVhay13b3JkOyI+SGV5IGFsbCw8ZGl2PjxiPQpyPjwvZGl2 PjxkaXY+dXNpbmcgIm92aXJ0LXNoZWxsIiBJIGNhbiBkbzo8L2Rpdj48ZGl2PiQmbmJzcDtjcmVh dGUgdXNlciAtLXU9CnNlcl9uYW1lIDxhIGhyZWY9M0QibWFpbHRvOnNvbWVuYW1lQGZvby5iYXIi IHRhcmdldD0zRCJfYmxhbmsiPnNvbWVuYW1lQGZvbz0KLmJhcjwvYT4gLS1kb21haW4tbmFtZSBz b21ldGhpbmcuZm9vLmJhcjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+SG93IGRvIGV4PQpwcmVz cyB0aGF0IGFzIGEgUE9TVCB3aXRoIHRoZSBhcGk/IENvdWxkIHlvdSBwcm92aWRlIGEgeG1sIGV4 YW1wbGU/PC9kaXY+PGQ9Cml2Pjxicj48ZGl2Pgo8ZGl2PjxiciBjbGFzcz0zRCJBcHBsZS1pbnRl cmNoYW5nZS1uZXdsaW5lIj48YnI+PC9kaXY+PGRpdj5NZWQgVj1DMz1BNG5saWc9CmEgSD1DMz1B NGxzbmluZ2FyPGJyPi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLT0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLTxicj5LYXJsaSBTaj1DMz1CNmJl cmc8YnI+U3dlZGlzaCBVbml2ZXJzaXR5IG9mIEFnPQpyaWN1bHR1cmFsIFNjaWVuY2VzPGJyPkJv eCA3MDc5IChWaXNpdGluZyBBZGRyZXNzIEtyb249QzM9QTVzdj1DMz1BNGdlbiA4KTw9CmJyPlMt NzUwIDA3IFVwcHNhbGEsIFN3ZWRlbjxicj5QaG9uZTogJm5ic3A7KzQ2LSgwKTE4LTY3IDE1IDY2 PC9kaXY+PGRpdj48YT0KIGhyZWY9M0QibWFpbHRvOmthcmxpLnNqb2JlcmdAYWRtLnNsdS5zZSIg dGFyZ2V0PTNEIl9ibGFuayI+a2FybGkuc2pvYmVyZ0BzPQpsdS5zZTwvYT48L2Rpdj4KPC9kaXY+ Cjxicj48L2Rpdj48L2Rpdj5fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXzxicj5Vc2VycyBtYT0KaWxpbmcgbGlzdDxicj48YSBocmVmPTNEIm1haWx0bzpVc2Vy c0BvdmlydC5vcmciIHRhcmdldD0zRCJfYmxhbmsiPlVzZXJzQG92PQppcnQub3JnPC9hPjxicj5o dHRwOi8vbGlzdHMub3ZpcnQub3JnL21haWxtYW4vbGlzdGluZm8vdXNlcnM8YnI+PC9ibG9ja3F1 b3Q9CmU+PC9kaXY+PGJyPjxkaXY+CjxkaXY+PGJyIGNsYXNzPTNEIkFwcGxlLWludGVyY2hhbmdl LW5ld2xpbmUiPjxicj48L2Rpdj48ZGl2Pk1lZCBWPUMzPUE0bmxpZz0KYSBIPUMzPUE0bHNuaW5n YXI8YnI+LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tPQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPGJyPkthcmxpIFNqPUMzPUI2YmVyZzxicj5T d2VkaXNoIFVuaXZlcnNpdHkgb2YgQWc9CnJpY3VsdHVyYWwgU2NpZW5jZXM8YnI+Qm94IDcwNzkg KFZpc2l0aW5nIEFkZHJlc3MgS3Jvbj1DMz1BNXN2PUMzPUE0Z2VuIDgpPD0KYnI+Uy03NTAgMDcg VXBwc2FsYSwgU3dlZGVuPGJyPlBob25lOiAmbmJzcDsrNDYtKDApMTgtNjcgMTUgNjY8L2Rpdj48 ZGl2PjxhPQogaHJlZj0zRCJtYWlsdG86a2FybGkuc2pvYmVyZ0BhZG0uc2x1LnNlIiB0YXJnZXQ9 M0QiX2JsYW5rIj5rYXJsaS5zam9iZXJnQHM9Cmx1LnNlPC9hPjwvZGl2Pgo8L2Rpdj4KPGJyPjwv ZGl2Pjxicj5fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzxi cj5Vc2VycyBtYWlsPQppbmcgbGlzdDxicj5Vc2Vyc0BvdmlydC5vcmc8YnI+aHR0cDovL2xpc3Rz Lm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3VzZXI9CnM8YnI+PC9ibG9ja3F1b3RlPjxicj48 L2Rpdj48L2JvZHk+PC9odG1sPgotLS0tLS09X1BhcnRfMzIwNzE4OTFfMTg1MzE2MjYwNC4xMzQ1 NDQ4MzA3ODM2LS0K --===============3447625172333187340==-- From Karli.Sjoberg at slu.se Mon Aug 20 04:03:25 2012 Content-Type: multipart/mixed; boundary="===============8159774927895373491==" MIME-Version: 1.0 From: =?utf-8?q?Karli_Sj=C3=B6berg_=3CKarli=2ESjoberg_at_slu=2Ese=3E?= To: users at ovirt.org Subject: Re: [Users] Create domain user with api Date: Mon, 20 Aug 2012 10:03:21 +0200 Message-ID: In-Reply-To: 1148552987.32071892.1345448307837.JavaMail.root@redhat.com --===============8159774927895373491== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable --_000_BFE9D2EE2E224128AEF9C2BD4A65A6E7sluse_ Content-Type: text/plain; charset=3D"iso-8859-1" Content-Transfer-Encoding: quoted-printable 20 aug 2012 kl. 09.38 skrev Omer Frenkel: adding Ori, comment inside ________________________________ From: "Karli Sj=3DF6berg" > To: "Karli Sj=3DF6berg" > Cc: "users" > Sent: Monday, August 20, 2012 9:25:19 AM Subject: Re: [Users] Create domain user with api Hey all, I kind of figured this out on my own. Still have some kinks to iro= =3D n out, from the web perspective, but I=3DB4ll get back to you on that. In t= he=3D mean time I noticed a rather strange redirection sent back when adding a u= =3D ser. Check this out: # curl -v -X POST -H "Accept: application/xml" -H "Accept: application/xml"= =3D -H "Content-type: application/xml" -u admin(a)internal:letmein! -T upload.= xm=3D lhttp://engine.slu.se:80/api/users upload.xml: somename(a)slu.se maybe i missed something, but why you have domain id under user? user entity has 'domain' which is the directory server. Well, mostly because our domain is quite oddly set up, called "ad.slu.se"(long story), while users are called only "user(a)slu.se", and I thought that maybe you=3DB4d have to be specific abo= ut t=3D hat. I can try add another user without specified, but does tha= =3D t have an impact to the redirection(/api/api/) you get back? SomeRole * About to connect() to engine.slu.se port 80 (#0) * Trying XXX.XXX.XXX.XXX... connected * Connected to engine.slu.se (XXX.XXX.XXX.XXX) port 8= =3D 0 (#0) * Server auth using Basic with user 'admin(a)internal' POST /api/users HTTP/1.1 Authorization: Basic YWRtaW5AaW50ZXJuYGH4UiXVhaDJkYWk=3D3D User-Agent: curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL= =3D /0.9.8r zlib/1.2.3 Host: engine.slu.se Accept: application/xml Accept: application/xml Content-type: application/xml Content-Length: 184 Expect: 100-continue < HTTP/1.1 100 Continue < HTTP/1.1 201 Created < Date: Fri, 17 Aug 2012 13:47:00 GMT < Set-Cookie: JSESSIONID=3D3DLXBbH1Wcmv-jepsSl06FtMaA.undefined; Path=3D3D/= api < Location: http://engine.slu.se/api/api/domains/61642e73-6c75-2e73-6561-64= =3D 2e736c752e/users/94155e69-4691-4cbb-a6b5-d30a6bd5b667 < Content-Type: application/xml < Connection: close < Transfer-Encoding: chunked < That Location is invalid. Proper location would be: < Location: http://engine.slu.se/api/domains/61642e73-6c75-2e73-6561-642e73= =3D 6c752e/users/94155e69-4691-4cbb-a6b5-d30a6bd5b667 Bug? /Karli 17 aug 2012 kl. 10.45 skrev Karli Sj=3DF6berg: Hey all, using "ovirt-shell" I can do: $ create user --user_name somename(a)foo.bar --d= omai=3D n-name something.foo.bar How do express that as a POST with the api? Could you provide a xml example= =3D ? Med V=3DE4nliga H=3DE4lsningar ---------------------------------------------------------------------------= =3D ---- Karli Sj=3DF6berg Swedish University of Agricultural Sciences Box 7079 (Visiting Address Kron=3DE5sv=3DE4gen 8) S-750 07 Uppsala, Sweden Phone: +46-(0)18-67 15 66 karli.sjoberg(a)slu.se _______________________________________________ Users mailing list Users(a)ovirt.org http://lists.ovirt.org/mailman/listinfo/users Med V=3DE4nliga H=3DE4lsningar ---------------------------------------------------------------------------= =3D ---- Karli Sj=3DF6berg Swedish University of Agricultural Sciences Box 7079 (Visiting Address Kron=3DE5sv=3DE4gen 8) S-750 07 Uppsala, Sweden Phone: +46-(0)18-67 15 66 karli.sjoberg(a)slu.se _______________________________________________ Users mailing list Users(a)ovirt.org http://lists.ovirt.org/mailman/listinfo/users Med V=3DE4nliga H=3DE4lsningar ---------------------------------------------------------------------------= =3D ---- Karli Sj=3DF6berg Swedish University of Agricultural Sciences Box 7079 (Visiting Address Kron=3DE5sv=3DE4gen 8) S-750 07 Uppsala, Sweden Phone: +46-(0)18-67 15 66 karli.sjoberg(a)slu.se --_000_BFE9D2EE2E224128AEF9C2BD4A65A6E7sluse_ Content-Type: text/html; charset=3D"iso-8859-1" Content-Transfer-Encoding: quoted-printable
20 aug 2012 kl. 09.38 skrev Omer Frenkel:

adding Ori, comment inside


From: "Karli Sj=3D= F6be=3D rg" <Karli.Sjoberg(a)slu.se<= /a>>=3D ;
To: "Karli = Sj=3D =3DF6berg" <
Karli.Sjoberg(a)= slu.se>
Cc: "u= se=3D rs" <
users(a)ovirt.org>Se=3D nt: Monday, August = 20=3D , 2012 9:25:19 AM
Subject:&nb= sp=3D ;Re: [Users] Create domain user with api

Hey all, I kind = =3D of figured this out on my own. Still have some kinks to iron out, from the = =3D web perspective, but I=3DB4ll get back to you on that. In the mean time I n= ot=3D iced a rather strange redirection sent back when adding a user. Check this = =3D out:

# curl -v -X POST -H "Accept: application/xml"= =3D -H "Accept: application/xml" -H "Content-type: application/xml" -u admin(a= )i=3D nternal:letmein! -T upload.xmlhttp://engine.slu.se:80/api/users

upload.xml:
<user>
  <user_na= =3D me>somename(a)slu.se</user_name>
  <domain id=3D= 3D"6=3D 1642e73-6c75-2e73-6561-642e736c752e" />
 = ;<=3D /div>
maybe i missed something, but why you have domain i= =3D d under user?
user entity has 'domain' which is the directory server.

Well, mostly because our do= =3D main is quite oddly set up, called "ad.s= lu=3D .se"(long story), while users are called only "user(a)slu.se", and I thought that maybe you=3DB4d have to be sp= ecif=3D ic about that. I can try add another user without <domain id> specifi= =3D ed, but does that have an impact to the redirection(/api/api/) you get back= =3D ?
= =3D
    <role>
&n= =3D bsp;     <name>SomeRole</name>
   = =3D ; </role>
  </roles>
</user>

* About to connect() to engine.slu.se port 80 (#0)
*   Trying XXX.XXX.XXX.XXX... connected
<= =3D div>* Connected to engine.slu.se (XXX.XXX.XXX.XXX) port 80 (#0)
* Server auth using Basic with user 'admin(a)internal'
POST= /=3D api/users HTTP/1.1
Authorization: Basic YWRtaW5AaW50ZXJuYGH4UiXVh= =3D aDJkYWk=3D3D
User-Agent: curl/7.19.7 (universal-apple-darwin10.0)= l=3D ibcurl/7.19.7 OpenSSL/0.9.8r zlib/1.2.3
Accept: application/xml
Accept= =3D : application/xml
Content-type: application/xml
Content= =3D -Length: 184
Expect: 100-continue

< H= =3D TTP/1.1 100 Continue
< HTTP/1.1 201 Created
< Dat= =3D e: Fri, 17 Aug 2012 13:47:00 GMT
< Set-Cookie: JSESSIONID=3D3D= LX=3D BbH1Wcmv-jepsSl06FtMaA.undefined; Path=3D3D/api
< Location: http://engine.slu.se/api/api/domains/616= 42=3D e73-6c75-2e73-6561-642e736c752e/users/94155e69-4691-4cbb-a6b5-d30a6bd5b667<= =3D /div>
< Content-Type: application/xml
< Connection: clo= =3D se
< Transfer-Encoding: chunked
<

<= =3D /div>
That Location is invalid. Proper location would be:
<= =3D ; Location: http://engine.slu.se/api/domai= ns=3D /61642e73-6c75-2e73-6561-642e736c752e/users/94155e69-4691-4cbb-a6b5-d30a6bd= =3D 5b667

Bug?

/Karli

17 aug 2012 kl. 10.45 skrev Karli Sj=3DF6berg:
=
Hey all,

using "ovirt-shell" I can do:
$ create user --user_name=3D  so= mename=3D @foo.bar --domain-n= am=3D e something.foo.bar

How do express that as a POST = =3D with the api? Could you provide a xml example?



Med V=3DE4nliga H=3DE4= lsning=3D ar
---------------------------------------------------------------------= =3D ----------
Karli Sj=3DF6berg
Swedish University of Agricultural Scien= ce=3D s
Box 7079 (Visiting Address Kron=3DE5sv=3DE4gen 8)
S-750 07 Uppsala,= Swe=3D den
Phone:  +46-(0)18-67 15 66
_______________________________________________
Users maili= =3D ng list
Users= (a)ovirt=3D .org
htt= p:=3D //lists.ovirt.org/mailman/listinfo/users



Med V=3DE4nl= iga =3D H=3DE4lsningar
---------------------------------------------------------= --=3D --------------------
Karli Sj=3DF6berg
Swedish University of Agricult= ur=3D al Sciences
Box 7079 (Visiting Address Kron=3DE5sv=3DE4gen 8)
S-750 0= 7 Up=3D psala, Sweden
Phone:  +46-(0)18-67 15 66


_______________________________________________
Use= =3D rs mailing list
Users(a)ovirt.org= http://lists.= ov=3D irt.org/mailman/listinfo/users

<= =3D br class=3D3D"Apple-interchange-newline">



Med V=3DE4nliga H=3DE4lsningar
-------------------------= ----=3D --------------------------------------------------
Karli Sj=3DF6berg
= Sw=3D edish University of Agricultural Sciences
Box 7079 (Visiting Address Kro= =3D n=3DE5sv=3DE4gen 8)
S-750 07 Uppsala, Sweden
Phone:  +46-(0)18-6= 7 15=3D 66

=3D --_000_BFE9D2EE2E224128AEF9C2BD4A65A6E7sluse_-- --===============8159774927895373491== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" LS1fMDAwX0JGRTlEMkVFMkUyMjQxMjhBRUY5QzJCRDRBNjVBNkU3c2x1c2VfCkNvbnRlbnQtVHlw ZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iaXNvLTg4NTktMSIKQ29udGVudC1UcmFuc2Zlci1FbmNv ZGluZzogcXVvdGVkLXByaW50YWJsZQoKCjIwIGF1ZyAyMDEyIGtsLiAwOS4zOCBza3JldiBPbWVy IEZyZW5rZWw6CgphZGRpbmcgT3JpLCBjb21tZW50IGluc2lkZQoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KRnJvbTogIkthcmxpIFNqPUY2YmVyZyIgPEthcmxpLlNqb2JlcmdAc2x1 LnNlPG1haWx0bzpLYXJsaS5Tam9iZXJnQHNsdS5zZT4+ClRvOiAiS2FybGkgU2o9RjZiZXJnIiA8 S2FybGkuU2pvYmVyZ0BzbHUuc2U8bWFpbHRvOkthcmxpLlNqb2JlcmdAc2x1LnNlPj4KQ2M6ICJ1 c2VycyIgPHVzZXJzQG92aXJ0Lm9yZzxtYWlsdG86dXNlcnNAb3ZpcnQub3JnPj4KU2VudDogTW9u ZGF5LCBBdWd1c3QgMjAsIDIwMTIgOToyNToxOSBBTQpTdWJqZWN0OiBSZTogW1VzZXJzXSBDcmVh dGUgZG9tYWluIHVzZXIgd2l0aCBhcGkKCkhleSBhbGwsIEkga2luZCBvZiBmaWd1cmVkIHRoaXMg b3V0IG9uIG15IG93bi4gU3RpbGwgaGF2ZSBzb21lIGtpbmtzIHRvIGlybz0KbiBvdXQsIGZyb20g dGhlIHdlYiBwZXJzcGVjdGl2ZSwgYnV0IEk9QjRsbCBnZXQgYmFjayB0byB5b3Ugb24gdGhhdC4g SW4gdGhlPQogbWVhbiB0aW1lIEkgbm90aWNlZCBhIHJhdGhlciBzdHJhbmdlIHJlZGlyZWN0aW9u IHNlbnQgYmFjayB3aGVuIGFkZGluZyBhIHU9CnNlci4gQ2hlY2sgdGhpcyBvdXQ6CgojIGN1cmwg LXYgLVggUE9TVCAtSCAiQWNjZXB0OiBhcHBsaWNhdGlvbi94bWwiIC1IICJBY2NlcHQ6IGFwcGxp Y2F0aW9uL3htbCI9CiAtSCAiQ29udGVudC10eXBlOiBhcHBsaWNhdGlvbi94bWwiIC11IGFkbWlu QGludGVybmFsOmxldG1laW4hIC1UIHVwbG9hZC54bT0KbGh0dHA6Ly9lbmdpbmUuc2x1LnNlOjgw L2FwaS91c2VycwoKdXBsb2FkLnhtbDoKPHVzZXI+CiAgPHVzZXJfbmFtZT5zb21lbmFtZUBzbHUu c2U8L3VzZXJfbmFtZT4KICA8ZG9tYWluIGlkPTNEIjYxNjQyZTczLTZjNzUtMmU3My02NTYxLTY0 MmU3MzZjNzUyZSIgLz4KCm1heWJlIGkgbWlzc2VkIHNvbWV0aGluZywgYnV0IHdoeSB5b3UgaGF2 ZSBkb21haW4gaWQgdW5kZXIgdXNlcj8KdXNlciBlbnRpdHkgaGFzICdkb21haW4nIHdoaWNoIGlz IHRoZSBkaXJlY3Rvcnkgc2VydmVyLgoKV2VsbCwgbW9zdGx5IGJlY2F1c2Ugb3VyIGRvbWFpbiBp cyBxdWl0ZSBvZGRseSBzZXQgdXAsIGNhbGxlZCAiYWQuc2x1LnNlPGh0PQp0cDovL3NsdS5zZT4i KGxvbmcgc3RvcnkpLCB3aGlsZSB1c2VycyBhcmUgY2FsbGVkIG9ubHkgInVzZXJAc2x1LnNlPG1h aWx0bzo9CnVzZXJAc2x1LnNlPiIsIGFuZCBJIHRob3VnaHQgdGhhdCBtYXliZSB5b3U9QjRkIGhh dmUgdG8gYmUgc3BlY2lmaWMgYWJvdXQgdD0KaGF0LiBJIGNhbiB0cnkgYWRkIGFub3RoZXIgdXNl ciB3aXRob3V0IDxkb21haW4gaWQ+IHNwZWNpZmllZCwgYnV0IGRvZXMgdGhhPQp0IGhhdmUgYW4g aW1wYWN0IHRvIHRoZSByZWRpcmVjdGlvbigvYXBpL2FwaS8pIHlvdSBnZXQgYmFjaz8KICAgIDxy b2xlPgogICAgICA8bmFtZT5Tb21lUm9sZTwvbmFtZT4KICAgIDwvcm9sZT4KICA8L3JvbGVzPgo8 L3VzZXI+CgoqIEFib3V0IHRvIGNvbm5lY3QoKSB0byBlbmdpbmUuc2x1LnNlPGh0dHA6Ly9lbmdp bmUuc2x1LnNlPiBwb3J0IDgwICgjMCkKKiAgIFRyeWluZyBYWFguWFhYLlhYWC5YWFguLi4gY29u bmVjdGVkCiogQ29ubmVjdGVkIHRvIGVuZ2luZS5zbHUuc2U8aHR0cDovL2VuZ2luZS5zbHUuc2U+ IChYWFguWFhYLlhYWC5YWFgpIHBvcnQgOD0KMCAoIzApCiogU2VydmVyIGF1dGggdXNpbmcgQmFz aWMgd2l0aCB1c2VyICdhZG1pbkBpbnRlcm5hbCcKUE9TVCAvYXBpL3VzZXJzIEhUVFAvMS4xCkF1 dGhvcml6YXRpb246IEJhc2ljIFlXUnRhVzVBYVc1MFpYSnVZR0g0VWlYVmhhREprWVdrPTNEClVz ZXItQWdlbnQ6IGN1cmwvNy4xOS43ICh1bml2ZXJzYWwtYXBwbGUtZGFyd2luMTAuMCkgbGliY3Vy bC83LjE5LjcgT3BlblNTTD0KLzAuOS44ciB6bGliLzEuMi4zCkhvc3Q6IGVuZ2luZS5zbHUuc2U8 aHR0cDovL2VuZ2luZS5zbHUuc2U+CkFjY2VwdDogYXBwbGljYXRpb24veG1sCkFjY2VwdDogYXBw bGljYXRpb24veG1sCkNvbnRlbnQtdHlwZTogYXBwbGljYXRpb24veG1sCkNvbnRlbnQtTGVuZ3Ro OiAxODQKRXhwZWN0OiAxMDAtY29udGludWUKCjwgSFRUUC8xLjEgMTAwIENvbnRpbnVlCjwgSFRU UC8xLjEgMjAxIENyZWF0ZWQKPCBEYXRlOiBGcmksIDE3IEF1ZyAyMDEyIDEzOjQ3OjAwIEdNVAo8 IFNldC1Db29raWU6IEpTRVNTSU9OSUQ9M0RMWEJiSDFXY212LWplcHNTbDA2RnRNYUEudW5kZWZp bmVkOyBQYXRoPTNEL2FwaQo8IExvY2F0aW9uOiBodHRwOi8vZW5naW5lLnNsdS5zZS9hcGkvYXBp L2RvbWFpbnMvNjE2NDJlNzMtNmM3NS0yZTczLTY1NjEtNjQ9CjJlNzM2Yzc1MmUvdXNlcnMvOTQx NTVlNjktNDY5MS00Y2JiLWE2YjUtZDMwYTZiZDViNjY3CjwgQ29udGVudC1UeXBlOiBhcHBsaWNh dGlvbi94bWwKPCBDb25uZWN0aW9uOiBjbG9zZQo8IFRyYW5zZmVyLUVuY29kaW5nOiBjaHVua2Vk CjwKClRoYXQgTG9jYXRpb24gaXMgaW52YWxpZC4gUHJvcGVyIGxvY2F0aW9uIHdvdWxkIGJlOgo8 IExvY2F0aW9uOiBodHRwOi8vZW5naW5lLnNsdS5zZS9hcGkvZG9tYWlucy82MTY0MmU3My02Yzc1 LTJlNzMtNjU2MS02NDJlNzM9CjZjNzUyZS91c2Vycy85NDE1NWU2OS00NjkxLTRjYmItYTZiNS1k MzBhNmJkNWI2NjcKCkJ1Zz8KCi9LYXJsaQoKMTcgYXVnIDIwMTIga2wuIDEwLjQ1IHNrcmV2IEth cmxpIFNqPUY2YmVyZzoKCkhleSBhbGwsCgp1c2luZyAib3ZpcnQtc2hlbGwiIEkgY2FuIGRvOgok IGNyZWF0ZSB1c2VyIC0tdXNlcl9uYW1lIHNvbWVuYW1lQGZvby5iYXI8bWFpbHRvOnNvbWVuYW1l QGZvby5iYXI+IC0tZG9tYWk9Cm4tbmFtZSBzb21ldGhpbmcuZm9vLmJhcgoKSG93IGRvIGV4cHJl c3MgdGhhdCBhcyBhIFBPU1Qgd2l0aCB0aGUgYXBpPyBDb3VsZCB5b3UgcHJvdmlkZSBhIHhtbCBl eGFtcGxlPQo/CgoKCk1lZCBWPUU0bmxpZ2EgSD1FNGxzbmluZ2FyCi0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LT0KLS0tLQpLYXJsaSBTaj1GNmJlcmcKU3dlZGlzaCBVbml2ZXJzaXR5IG9mIEFncmljdWx0dXJh bCBTY2llbmNlcwpCb3ggNzA3OSAoVmlzaXRpbmcgQWRkcmVzcyBLcm9uPUU1c3Y9RTRnZW4gOCkK Uy03NTAgMDcgVXBwc2FsYSwgU3dlZGVuClBob25lOiAgKzQ2LSgwKTE4LTY3IDE1IDY2Cmthcmxp LnNqb2JlcmdAc2x1LnNlPG1haWx0bzprYXJsaS5zam9iZXJnQGFkbS5zbHUuc2U+CgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpVc2VycyBtYWlsaW5nIGxp c3QKVXNlcnNAb3ZpcnQub3JnPG1haWx0bzpVc2Vyc0BvdmlydC5vcmc+Cmh0dHA6Ly9saXN0cy5v dmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2VycwoKCgpNZWQgVj1FNG5saWdhIEg9RTRsc25p bmdhcgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS09Ci0tLS0KS2FybGkgU2o9RjZiZXJnClN3ZWRpc2ggVW5p dmVyc2l0eSBvZiBBZ3JpY3VsdHVyYWwgU2NpZW5jZXMKQm94IDcwNzkgKFZpc2l0aW5nIEFkZHJl c3MgS3Jvbj1FNXN2PUU0Z2VuIDgpClMtNzUwIDA3IFVwcHNhbGEsIFN3ZWRlbgpQaG9uZTogICs0 Ni0oMCkxOC02NyAxNSA2NgprYXJsaS5zam9iZXJnQHNsdS5zZTxtYWlsdG86a2FybGkuc2pvYmVy Z0BhZG0uc2x1LnNlPgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fClVzZXJzIG1haWxpbmcgbGlzdApVc2Vyc0BvdmlydC5vcmc8bWFpbHRvOlVzZXJzQG92 aXJ0Lm9yZz4KaHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzCgoK CgoKTWVkIFY9RTRubGlnYSBIPUU0bHNuaW5nYXIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPQotLS0tCkth cmxpIFNqPUY2YmVyZwpTd2VkaXNoIFVuaXZlcnNpdHkgb2YgQWdyaWN1bHR1cmFsIFNjaWVuY2Vz CkJveCA3MDc5IChWaXNpdGluZyBBZGRyZXNzIEtyb249RTVzdj1FNGdlbiA4KQpTLTc1MCAwNyBV cHBzYWxhLCBTd2VkZW4KUGhvbmU6ICArNDYtKDApMTgtNjcgMTUgNjYKa2FybGkuc2pvYmVyZ0Bz bHUuc2U8bWFpbHRvOmthcmxpLnNqb2JlcmdAYWRtLnNsdS5zZT4KCgotLV8wMDBfQkZFOUQyRUUy RTIyNDEyOEFFRjlDMkJENEE2NUE2RTdzbHVzZV8KQ29udGVudC1UeXBlOiB0ZXh0L2h0bWw7IGNo YXJzZXQ9Imlzby04ODU5LTEiCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmlu dGFibGUKCjxodG1sPjxoZWFkPjxiYXNlIGhyZWY9M0QieC1tc2c6Ly8xOC8iPjwvaGVhZD48Ym9k eSBzdHlsZT0zRCJ3b3JkLXdyYXA6IGJyZT0KYWstd29yZDsgLXdlYmtpdC1uYnNwLW1vZGU6IHNw YWNlOyAtd2Via2l0LWxpbmUtYnJlYWs6IGFmdGVyLXdoaXRlLXNwYWNlOyAiPQo+PGJyPjxkaXY+ PGRpdj4yMCBhdWcgMjAxMiBrbC4gMDkuMzggc2tyZXYgT21lciBGcmVua2VsOjwvZGl2PjxiciBj bGFzcz0zRCI9CkFwcGxlLWludGVyY2hhbmdlLW5ld2xpbmUiPjxibG9ja3F1b3RlIHR5cGU9M0Qi Y2l0ZSI+PHNwYW4gY2xhc3M9M0QiQXBwbGUtcz0KdHlsZS1zcGFuIiBzdHlsZT0zRCJib3JkZXIt Y29sbGFwc2U6IHNlcGFyYXRlOyBmb250LWZhbWlseTogSGVsdmV0aWNhOyBmb250PQotc3R5bGU6 IG5vcm1hbDsgZm9udC12YXJpYW50OiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxldHRl ci1zcGFjaW5nOiA9Cm5vcm1hbDsgbGluZS1oZWlnaHQ6IG5vcm1hbDsgb3JwaGFuczogMjsgdGV4 dC1hbGlnbjogLXdlYmtpdC1hdXRvOyB0ZXh0LWluZD0KZW50OiAwcHg7IHRleHQtdHJhbnNmb3Jt OiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3aWRvd3M6IDI7IHdvcmQtc3BhY2luPQpnOiAw cHg7IC13ZWJraXQtYm9yZGVyLWhvcml6b250YWwtc3BhY2luZzogMHB4OyAtd2Via2l0LWJvcmRl ci12ZXJ0aWNhbC1zcGE9CmNpbmc6IDBweDsgLXdlYmtpdC10ZXh0LWRlY29yYXRpb25zLWluLWVm ZmVjdDogbm9uZTsgLXdlYmtpdC10ZXh0LXNpemUtYWRqdT0Kc3Q6IGF1dG87IC13ZWJraXQtdGV4 dC1zdHJva2Utd2lkdGg6IDBweDsgZm9udC1zaXplOiBtZWRpdW07ICI+PGRpdj48ZGl2IHN0PQp5 bGU9M0QiZm9udC1mYW1pbHk6ICd0aW1lcyBuZXcgcm9tYW4nLCAnbmV3IHlvcmsnLCB0aW1lcywg c2VyaWY7IGZvbnQtc2l6ZTo9CiAxMnB0OyBjb2xvcjogcmdiKDAsIDAsIDApOyAiPmFkZGluZyBP cmksIGNvbW1lbnQgaW5zaWRlPGJyPjxicj48aHIgaWQ9M0Qiej0Kd2NociI+PGJsb2NrcXVvdGUg c3R5bGU9M0QiYm9yZGVyLWxlZnQtd2lkdGg6IDJweDsgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlk PQo7IGJvcmRlci1sZWZ0LWNvbG9yOiByZ2IoMTYsIDE2LCAyNTUpOyBtYXJnaW4tbGVmdDogNXB4 OyBwYWRkaW5nLWxlZnQ6IDVweDs9CiBjb2xvcjogcmdiKDAsIDAsIDApOyBmb250LXdlaWdodDog bm9ybWFsOyBmb250LXN0eWxlOiBub3JtYWw7IHRleHQtZGVjb3JhdD0KaW9uOiBub25lOyBmb250 LWZhbWlseTogSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxMnB0OyAi PjxiPQo+RnJvbTo8c3BhbiBjbGFzcz0zRCJBcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwv c3Bhbj48L2I+IkthcmxpIFNqPUY2YmU9CnJnIiAmbHQ7PGEgaHJlZj0zRCJtYWlsdG86S2FybGku U2pvYmVyZ0BzbHUuc2UiPkthcmxpLlNqb2JlcmdAc2x1LnNlPC9hPiZndD0KOzxicj48Yj5Ubzo8 c3BhbiBjbGFzcz0zRCJBcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwvc3Bhbj48L2I+Ikth cmxpIFNqPQo9RjZiZXJnIiAmbHQ7PGEgaHJlZj0zRCJtYWlsdG86S2FybGkuU2pvYmVyZ0BzbHUu c2UiPkthcmxpLlNqb2JlcmdAc2x1LnNlPC89CmE+Jmd0Ozxicj48Yj5DYzo8c3BhbiBjbGFzcz0z RCJBcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwvc3Bhbj48L2I+InVzZT0KcnMiICZsdDs8 YSBocmVmPTNEIm1haWx0bzp1c2Vyc0BvdmlydC5vcmciPnVzZXJzQG92aXJ0Lm9yZzwvYT4mZ3Q7 PGJyPjxiPlNlPQpudDo8c3BhbiBjbGFzcz0zRCJBcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNw Ozwvc3Bhbj48L2I+TW9uZGF5LCBBdWd1c3QgMjA9CiwgMjAxMiA5OjI1OjE5IEFNPGJyPjxiPlN1 YmplY3Q6PHNwYW4gY2xhc3M9M0QiQXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcD0KOzwvc3Bh bj48L2I+UmU6IFtVc2Vyc10gQ3JlYXRlIGRvbWFpbiB1c2VyIHdpdGggYXBpPGJyPjxicj5IZXkg YWxsLCBJIGtpbmQgPQpvZiBmaWd1cmVkIHRoaXMgb3V0IG9uIG15IG93bi4gU3RpbGwgaGF2ZSBz b21lIGtpbmtzIHRvIGlyb24gb3V0LCBmcm9tIHRoZSA9CndlYiBwZXJzcGVjdGl2ZSwgYnV0IEk9 QjRsbCBnZXQgYmFjayB0byB5b3Ugb24gdGhhdC4gSW4gdGhlIG1lYW4gdGltZSBJIG5vdD0KaWNl ZCBhIHJhdGhlciBzdHJhbmdlIHJlZGlyZWN0aW9uIHNlbnQgYmFjayB3aGVuIGFkZGluZyBhIHVz ZXIuIENoZWNrIHRoaXMgPQpvdXQ6PGRpdj48YnI+PC9kaXY+PGRpdj4jJm5ic3A7Y3VybCAtdiAt WCBQT1NUIC1IICJBY2NlcHQ6IGFwcGxpY2F0aW9uL3htbCI9CiAtSCAiQWNjZXB0OiBhcHBsaWNh dGlvbi94bWwiIC1IICJDb250ZW50LXR5cGU6IGFwcGxpY2F0aW9uL3htbCIgLXUgYWRtaW5AaT0K bnRlcm5hbDpsZXRtZWluISAtVCB1cGxvYWQueG1sPGEgaHJlZj0zRCJodHRwOi8vZW5naW5lLnNs dS5zZTo4MC9hcGkvdXNlcnMiPQogdGFyZ2V0PTNEIl9ibGFuayI+aHR0cDovL2VuZ2luZS5zbHUu c2U6ODAvYXBpL3VzZXJzPC9hPjwvZGl2PjxkaXY+PGJyPjwvZGk9CnY+PGRpdj51cGxvYWQueG1s OjwvZGl2PjxkaXY+PGRpdj4mbHQ7dXNlciZndDs8L2Rpdj48ZGl2PiZuYnNwOyAmbHQ7dXNlcl9u YT0KbWUmZ3Q7c29tZW5hbWVAc2x1LnNlJmx0Oy91c2VyX25hbWUmZ3Q7PC9kaXY+PGRpdj4mbmJz cDsgJmx0O2RvbWFpbiBpZD0zRCI2PQoxNjQyZTczLTZjNzUtMmU3My02NTYxLTY0MmU3MzZjNzUy ZSIgLyZndDs8L2Rpdj48ZGl2IGlkPTNEIkRXVDMzODEiPiZuYnNwOzw9Ci9kaXY+PC9kaXY+PC9i bG9ja3F1b3RlPm1heWJlIGkgbWlzc2VkIHNvbWV0aGluZywgYnV0IHdoeSB5b3UgaGF2ZSBkb21h aW4gaT0KZCB1bmRlciB1c2VyPzxicj51c2VyIGVudGl0eSBoYXMgJ2RvbWFpbicgd2hpY2ggaXMg dGhlIGRpcmVjdG9yeSBzZXJ2ZXIuPGJyPQo+PC9kaXY+PC9kaXY+PC9zcGFuPjwvYmxvY2txdW90 ZT48ZGl2Pjxicj48L2Rpdj5XZWxsLCBtb3N0bHkgYmVjYXVzZSBvdXIgZG89Cm1haW4gaXMgcXVp dGUgb2RkbHkgc2V0IHVwLCBjYWxsZWQgIjxiPmFkLjwvYj48YSBocmVmPTNEImh0dHA6Ly9zbHUu c2UiPnNsdT0KLnNlPC9hPiIobG9uZyBzdG9yeSksIHdoaWxlIHVzZXJzIGFyZSBjYWxsZWQgb25s eSAiPGEgaHJlZj0zRCJtYWlsdG86dXNlckBzPQpsdS5zZSI+dXNlckBzbHUuc2U8L2E+IiwgYW5k IEkgdGhvdWdodCB0aGF0IG1heWJlIHlvdT1CNGQgaGF2ZSB0byBiZSBzcGVjaWY9CmljIGFib3V0 IHRoYXQuIEkgY2FuIHRyeSBhZGQgYW5vdGhlciB1c2VyIHdpdGhvdXQgJmx0O2RvbWFpbiBpZCZn dDsgc3BlY2lmaT0KZWQsIGJ1dCBkb2VzIHRoYXQgaGF2ZSBhbiBpbXBhY3QgdG8gdGhlIHJlZGly ZWN0aW9uKC9hcGkvYXBpLykgeW91IGdldCBiYWNrPQo/PGJyPjxibG9ja3F1b3RlIHR5cGU9M0Qi Y2l0ZSI+PHNwYW4gY2xhc3M9M0QiQXBwbGUtc3R5bGUtc3BhbiIgc3R5bGU9M0QiYm89CnJkZXIt Y29sbGFwc2U6IHNlcGFyYXRlOyBmb250LWZhbWlseTogSGVsdmV0aWNhOyBmb250LXN0eWxlOiBu b3JtYWw7IGZvbnQtdj0KYXJpYW50OiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxldHRl ci1zcGFjaW5nOiBub3JtYWw7IGxpbmUtaGVpZ2h0OiBuPQpvcm1hbDsgb3JwaGFuczogMjsgdGV4 dC1hbGlnbjogLXdlYmtpdC1hdXRvOyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRyYW5zZm89CnJt OiBub25lOyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB3aWRvd3M6IDI7IHdvcmQtc3BhY2luZzogMHB4 OyAtd2Via2l0LWJvcmRlcj0KLWhvcml6b250YWwtc3BhY2luZzogMHB4OyAtd2Via2l0LWJvcmRl ci12ZXJ0aWNhbC1zcGFjaW5nOiAwcHg7IC13ZWJraXQtdGV4PQp0LWRlY29yYXRpb25zLWluLWVm ZmVjdDogbm9uZTsgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiBhdXRvOyAtd2Via2l0LXRleHQ9 Ci1zdHJva2Utd2lkdGg6IDBweDsgZm9udC1zaXplOiBtZWRpdW07ICI+PGRpdj48ZGl2IHN0eWxl PTNEImZvbnQtZmFtaWx5OiAndD0KaW1lcyBuZXcgcm9tYW4nLCAnbmV3IHlvcmsnLCB0aW1lcywg c2VyaWY7IGZvbnQtc2l6ZTogMTJwdDsgY29sb3I6IHJnYigwLCAwPQosIDApOyAiPjxibG9ja3F1 b3RlIHN0eWxlPTNEImJvcmRlci1sZWZ0LXdpZHRoOiAycHg7IGJvcmRlci1sZWZ0LXN0eWxlOiBz b2w9CmlkOyBib3JkZXItbGVmdC1jb2xvcjogcmdiKDE2LCAxNiwgMjU1KTsgbWFyZ2luLWxlZnQ6 IDVweDsgcGFkZGluZy1sZWZ0OiA1cD0KeDsgY29sb3I6IHJnYigwLCAwLCAwKTsgZm9udC13ZWln aHQ6IG5vcm1hbDsgZm9udC1zdHlsZTogbm9ybWFsOyB0ZXh0LWRlY29yPQphdGlvbjogbm9uZTsg Zm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTJw dDsgIj49CjxkaXY+PGRpdj48cm9sZXM+PC9yb2xlcz48L2Rpdj48ZGl2PiZuYnNwOyAmbmJzcDsg Jmx0O3JvbGUmZ3Q7PC9kaXY+PGRpdj4mbj0KYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDtuYW1lJmd0 O1NvbWVSb2xlJmx0Oy9uYW1lJmd0OzwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNwPQo7ICZsdDsvcm9s ZSZndDs8L2Rpdj48ZGl2PiZuYnNwOyAmbHQ7L3JvbGVzJmd0OzwvZGl2PjxkaXY+Jmx0Oy91c2Vy Jmd0OzwvZGk9CnY+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj48ZGl2PiogQWJvdXQgdG8gY29u bmVjdCgpIHRvPHNwYW4gY2xhc3M9M0QiQXBwbD0KZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwv c3Bhbj48YSBocmVmPTNEImh0dHA6Ly9lbmdpbmUuc2x1LnNlIiB0YXJnZXQ9M0QiPQpfYmxhbmsi PmVuZ2luZS5zbHUuc2U8L2E+PHNwYW4gY2xhc3M9M0QiQXBwbGUtY29udmVydGVkLXNwYWNlIj4m bmJzcDs8L3NwYW49Cj5wb3J0IDgwICgjMCk8L2Rpdj48ZGl2PiogJm5ic3A7IFRyeWluZyBYWFgu WFhYLlhYWC5YWFguLi4gY29ubmVjdGVkPC9kaXY+PD0KZGl2PiogQ29ubmVjdGVkIHRvPHNwYW4g Y2xhc3M9M0QiQXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+PGEgaHJlPQpmPTNE Imh0dHA6Ly9lbmdpbmUuc2x1LnNlIiB0YXJnZXQ9M0QiX2JsYW5rIj5lbmdpbmUuc2x1LnNlPC9h PjxzcGFuIGNsYXNzPQo9M0QiQXBwbGUtY29udmVydGVkLXNwYWNlIj4mbmJzcDs8L3NwYW4+KFhY WC5YWFguWFhYLlhYWCkgcG9ydCA4MCAoIzApPC9kaXY9Cj48ZGl2PiogU2VydmVyIGF1dGggdXNp bmcgQmFzaWMgd2l0aCB1c2VyICdhZG1pbkBpbnRlcm5hbCc8L2Rpdj48ZGl2PlBPU1QgLz0KYXBp L3VzZXJzIEhUVFAvMS4xPC9kaXY+PGRpdj5BdXRob3JpemF0aW9uOiBCYXNpYyBZV1J0YVc1QWFX NTBaWEp1WUdINFVpWFZoPQphREprWVdrPTNEPC9kaXY+PGRpdj5Vc2VyLUFnZW50OiBjdXJsLzcu MTkuNyAodW5pdmVyc2FsLWFwcGxlLWRhcndpbjEwLjApIGw9CmliY3VybC83LjE5LjcgT3BlblNT TC8wLjkuOHIgemxpYi8xLjIuMzwvZGl2PjxkaXY+SG9zdDo8c3BhbiBjbGFzcz0zRCJBcHBsZT0K LWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7PC9zcGFuPjxhIGhyZWY9M0QiaHR0cDovL2VuZ2luZS5z bHUuc2UiIHRhcmdldD0zRCJfPQpibGFuayI+ZW5naW5lLnNsdS5zZTwvYT48L2Rpdj48ZGl2PkFj Y2VwdDogYXBwbGljYXRpb24veG1sPC9kaXY+PGRpdj5BY2NlcHQ9CjogYXBwbGljYXRpb24veG1s PC9kaXY+PGRpdj5Db250ZW50LXR5cGU6IGFwcGxpY2F0aW9uL3htbDwvZGl2PjxkaXY+Q29udGVu dD0KLUxlbmd0aDogMTg0PC9kaXY+PGRpdj5FeHBlY3Q6IDEwMC1jb250aW51ZTwvZGl2PjxkaXY+ PGJyPjwvZGl2PjxkaXY+Jmx0OyBIPQpUVFAvMS4xIDEwMCBDb250aW51ZTwvZGl2PjxkaXY+Jmx0 OyBIVFRQLzEuMSAyMDEgQ3JlYXRlZDwvZGl2PjxkaXY+Jmx0OyBEYXQ9CmU6IEZyaSwgMTcgQXVn IDIwMTIgMTM6NDc6MDAgR01UPC9kaXY+PGRpdj4mbHQ7IFNldC1Db29raWU6IEpTRVNTSU9OSUQ9 M0RMWD0KQmJIMVdjbXYtamVwc1NsMDZGdE1hQS51bmRlZmluZWQ7IFBhdGg9M0QvYXBpPC9kaXY+ PGRpdj4mbHQ7IExvY2F0aW9uOjxzcGFuPQogY2xhc3M9M0QiQXBwbGUtY29udmVydGVkLXNwYWNl Ij4mbmJzcDs8L3NwYW4+PGEgaHJlZj0zRCJodHRwOi8vZW5naW5lLnNsdS49CnNlIiB0YXJnZXQ9 M0QiX2JsYW5rIj5odHRwOi8vZW5naW5lLnNsdS5zZTwvYT48Yj4vYXBpL2FwaS88L2I+ZG9tYWlu cy82MTY0Mj0KZTczLTZjNzUtMmU3My02NTYxLTY0MmU3MzZjNzUyZS91c2Vycy85NDE1NWU2OS00 NjkxLTRjYmItYTZiNS1kMzBhNmJkNWI2Njc8PQovZGl2PjxkaXY+Jmx0OyBDb250ZW50LVR5cGU6 IGFwcGxpY2F0aW9uL3htbDwvZGl2PjxkaXY+Jmx0OyBDb25uZWN0aW9uOiBjbG89CnNlPC9kaXY+ PGRpdj4mbHQ7IFRyYW5zZmVyLUVuY29kaW5nOiBjaHVua2VkPC9kaXY+PGRpdj4mbHQ7PC9kaXY+ PGRpdj48YnI+PD0KL2Rpdj48ZGl2PlRoYXQgTG9jYXRpb24gaXMgaW52YWxpZC4gUHJvcGVyIGxv Y2F0aW9uIHdvdWxkIGJlOjwvZGl2PjxkaXY+Jmx0PQo7IExvY2F0aW9uOjxzcGFuIGNsYXNzPTNE IkFwcGxlLWNvbnZlcnRlZC1zcGFjZSI+Jm5ic3A7PC9zcGFuPjxhIGhyZWY9M0QiaHQ9CnRwOi8v ZW5naW5lLnNsdS5zZS8iIHRhcmdldD0zRCJfYmxhbmsiPmh0dHA6Ly9lbmdpbmUuc2x1LnNlLzwv YT5hcGkvZG9tYWlucz0KLzYxNjQyZTczLTZjNzUtMmU3My02NTYxLTY0MmU3MzZjNzUyZS91c2Vy cy85NDE1NWU2OS00NjkxLTRjYmItYTZiNS1kMzBhNmJkPQo1YjY2NzwvZGl2PjxkaXY+PGJyPjwv ZGl2PjxkaXY+QnVnPzwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+L0thcmxpPC9kaXY+PGQ9Cml2 Pjxicj48L2Rpdj48ZGl2PjxkaXY+MTcgYXVnIDIwMTIga2wuIDEwLjQ1IHNrcmV2IEthcmxpIFNq PUY2YmVyZzo8L2Rpdj48Yj0KciBjbGFzcz0zRCJBcHBsZS1pbnRlcmNoYW5nZS1uZXdsaW5lIj48 YmxvY2txdW90ZT48ZGl2IHN0eWxlPTNEIndvcmQtd3JhcDogPQpicmVhay13b3JkOyAiPkhleSBh bGwsPGRpdj48YnI+PC9kaXY+PGRpdj51c2luZyAib3ZpcnQtc2hlbGwiIEkgY2FuIGRvOjwvZGk9 CnY+PGRpdj4kJm5ic3A7Y3JlYXRlIHVzZXIgLS11c2VyX25hbWU8c3BhbiBjbGFzcz0zRCJBcHBs ZS1jb252ZXJ0ZWQtc3BhY2UiPj0KJm5ic3A7PC9zcGFuPjxhIGhyZWY9M0QibWFpbHRvOnNvbWVu YW1lQGZvby5iYXIiIHRhcmdldD0zRCJfYmxhbmsiPnNvbWVuYW1lPQpAZm9vLmJhcjwvYT48c3Bh biBjbGFzcz0zRCJBcHBsZS1jb252ZXJ0ZWQtc3BhY2UiPiZuYnNwOzwvc3Bhbj4tLWRvbWFpbi1u YW09CmUgc29tZXRoaW5nLmZvby5iYXI8L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PkhvdyBkbyBl eHByZXNzIHRoYXQgYXMgYSBQT1NUID0Kd2l0aCB0aGUgYXBpPyBDb3VsZCB5b3UgcHJvdmlkZSBh IHhtbCBleGFtcGxlPzwvZGl2PjxkaXY+PGJyPjxkaXY+PGRpdj48YnIgPQpjbGFzcz0zRCJBcHBs ZS1pbnRlcmNoYW5nZS1uZXdsaW5lIj48YnI+PC9kaXY+PGRpdj5NZWQgVj1FNG5saWdhIEg9RTRs c25pbmc9CmFyPGJyPi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT0KLS0tLS0tLS0tLTxicj5LYXJsaSBTaj1GNmJlcmc8 YnI+U3dlZGlzaCBVbml2ZXJzaXR5IG9mIEFncmljdWx0dXJhbCBTY2llbmNlPQpzPGJyPkJveCA3 MDc5IChWaXNpdGluZyBBZGRyZXNzIEtyb249RTVzdj1FNGdlbiA4KTxicj5TLTc1MCAwNyBVcHBz YWxhLCBTd2U9CmRlbjxicj5QaG9uZTogJm5ic3A7KzQ2LSgwKTE4LTY3IDE1IDY2PC9kaXY+PGRp dj48YSBocmVmPTNEIm1haWx0bzprYXJsaS5zaj0Kb2JlcmdAYWRtLnNsdS5zZSIgdGFyZ2V0PTNE Il9ibGFuayI+a2FybGkuc2pvYmVyZ0BzbHUuc2U8L2E+PC9kaXY+PC9kaXY+PGJyPQo+PC9kaXY+ PC9kaXY+X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX188YnI+ VXNlcnMgbWFpbGk9Cm5nIGxpc3Q8YnI+PGEgaHJlZj0zRCJtYWlsdG86VXNlcnNAb3ZpcnQub3Jn IiB0YXJnZXQ9M0QiX2JsYW5rIj5Vc2Vyc0BvdmlydD0KLm9yZzwvYT48YnI+PGEgaHJlZj0zRCJo dHRwOi8vbGlzdHMub3ZpcnQub3JnL21haWxtYW4vbGlzdGluZm8vdXNlcnMiPmh0dHA6PQovL2xp c3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzPC9hPjxicj48L2Jsb2NrcXVvdGU+ PC9kaXY+PGJyPjxkaXY9Cj48ZGl2PjxiciBjbGFzcz0zRCJBcHBsZS1pbnRlcmNoYW5nZS1uZXds aW5lIj48YnI+PC9kaXY+PGRpdj5NZWQgVj1FNG5saWdhID0KSD1FNGxzbmluZ2FyPGJyPi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPQot LS0tLS0tLS0tLS0tLS0tLS0tLTxicj5LYXJsaSBTaj1GNmJlcmc8YnI+U3dlZGlzaCBVbml2ZXJz aXR5IG9mIEFncmljdWx0dXI9CmFsIFNjaWVuY2VzPGJyPkJveCA3MDc5IChWaXNpdGluZyBBZGRy ZXNzIEtyb249RTVzdj1FNGdlbiA4KTxicj5TLTc1MCAwNyBVcD0KcHNhbGEsIFN3ZWRlbjxicj5Q aG9uZTogJm5ic3A7KzQ2LSgwKTE4LTY3IDE1IDY2PC9kaXY+PGRpdj48YSBocmVmPTNEIm1haWx0 PQpvOmthcmxpLnNqb2JlcmdAYWRtLnNsdS5zZSIgdGFyZ2V0PTNEIl9ibGFuayI+a2FybGkuc2pv YmVyZ0BzbHUuc2U8L2E+PC9kaXY9Cj48L2Rpdj48YnI+PC9kaXY+PGJyPl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fPGJyPlVzZT0KcnMgbWFpbGluZyBsaXN0 PGJyPjxhIGhyZWY9M0QibWFpbHRvOlVzZXJzQG92aXJ0Lm9yZyI+VXNlcnNAb3ZpcnQub3JnPC9h PjxiPQpyPjxhIGhyZWY9M0QiaHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv L3VzZXJzIj5odHRwOi8vbGlzdHMub3Y9CmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2Vyczwv YT48YnI+PC9ibG9ja3F1b3RlPjxicj48L2Rpdj48L2Rpdj48L3NwYW4+PD0KYnIgY2xhc3M9M0Qi QXBwbGUtaW50ZXJjaGFuZ2UtbmV3bGluZSI+PC9ibG9ja3F1b3RlPjwvZGl2Pjxicj48ZGl2Pgo8 c3BhbiBjbGFzcz0zRCJBcHBsZS1zdHlsZS1zcGFuIiBzdHlsZT0zRCJib3JkZXItY29sbGFwc2U6 IHNlcGFyYXRlOyBjb2xvcjo9CiByZ2IoMCwgMCwgMCk7IGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2E7 IGZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC12YXJpYW50OiBubz0Kcm1hbDsgZm9udC13ZWlnaHQ6 IG5vcm1hbDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgbGluZS1oZWlnaHQ6IG5vcm1hbDsgb3Jw PQpoYW5zOiAyOyB0ZXh0LWFsaWduOiAtd2Via2l0LWF1dG87IHRleHQtaW5kZW50OiAwcHg7IHRl eHQtdHJhbnNmb3JtOiBub25lOyA9CndoaXRlLXNwYWNlOiBub3JtYWw7IHdpZG93czogMjsgd29y ZC1zcGFjaW5nOiAwcHg7IC13ZWJraXQtYm9yZGVyLWhvcml6b250YT0KbC1zcGFjaW5nOiAwcHg7 IC13ZWJraXQtYm9yZGVyLXZlcnRpY2FsLXNwYWNpbmc6IDBweDsgLXdlYmtpdC10ZXh0LWRlY29y YXRpPQpvbnMtaW4tZWZmZWN0OiBub25lOyAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IGF1dG87 IC13ZWJraXQtdGV4dC1zdHJva2Utd2k9CmR0aDogMHB4OyBmb250LXNpemU6IG1lZGl1bTsgIj48 ZGl2PjxiciBjbGFzcz0zRCJBcHBsZS1pbnRlcmNoYW5nZS1uZXdsaW5lIj0KPjxicj48L2Rpdj48 ZGl2Pk1lZCBWPUU0bmxpZ2EgSD1FNGxzbmluZ2FyPGJyPi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tPQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LTxicj5LYXJsaSBTaj1GNmJlcmc8YnI+U3c9CmVkaXNoIFVuaXZlcnNpdHkgb2YgQWdyaWN1bHR1 cmFsIFNjaWVuY2VzPGJyPkJveCA3MDc5IChWaXNpdGluZyBBZGRyZXNzIEtybz0Kbj1FNXN2PUU0 Z2VuIDgpPGJyPlMtNzUwIDA3IFVwcHNhbGEsIFN3ZWRlbjxicj5QaG9uZTogJm5ic3A7KzQ2LSgw KTE4LTY3IDE1PQogNjY8L2Rpdj48ZGl2PjxhIGhyZWY9M0QibWFpbHRvOmthcmxpLnNqb2JlcmdA YWRtLnNsdS5zZSI+a2FybGkuc2pvYmVyZ0BzbHU9Ci5zZTwvYT48L2Rpdj48L3NwYW4+CjwvZGl2 Pgo8YnI+PC9ib2R5PjwvaHRtbD49CgotLV8wMDBfQkZFOUQyRUUyRTIyNDEyOEFFRjlDMkJENEE2 NUE2RTdzbHVzZV8tLQo= --===============8159774927895373491==--