From: Harald A. M. <har...@gm...> - 2006-04-19 13:30:31
|
SGVsbG8gSmltbXksCgplbmpveWluZyBhbGwgeW91ciB3b3JrIHdpdGgga2VlcGluZyBweTJleGUg bW9kZXJuaXplZCwgdG9kYXkgSSBpbnN0YWxsZWQKcHkyZXhlIDAuNjUKCk15IG9sZCBzZXR1cC5w eSBrZXB0IHdvcmtpbmcsIHdoaWNoIHdhcyBhIGpveSEhISAgdW50aWxsLi4uLiBJIHdhbnRlZCB0 byB1c2UKdGhlIG5ldyAic2tpcC1hcmNoaXZlIiBvcHRpb24uCgpteSBzZXR1cC5weSBpcyBiYXNp Y2FsbHkgYW4gZXh0ZW5zaW9uIG9mIHRoZSBleHRlbmRpbmcgZXhhbXBsZTsgYW5kIGhlcmUgdGhl CnRyb3VibGUgYmVnaW5zOgoKIkV4dGVuZGluZyIgY29udGFpbnMgbWV0aG9kcyB0byBjcmVhdGUg YSBpbm5vc2V0dXAtaW5zdGFsbGVyLXNrcmlwdAp0aGF0IGNyZWF0ZS1tZXRob2QgaGFzIG9uZSBz ZWN0aW9uOgoKZm9yIHBhdGggaW4gc2VsZi53aW5kb3dzX2V4ZV9maWxlcyArIHNlbGYubGliX2Zp bGVzOgogICAgIHByaW50ID4+IG9maSwgcidTb3VyY2U6ICIlcyI7IERlc3REaXI6ICJ7YXBwfVwl cyI7IEZsYWdzOgppZ25vcmV2ZXJzaW9uJyAlIChwYXRoLCBvcy5wYXRoLmRpcm5hbWUocGF0aCkp CgoKdGhhdCBpcywgZXZlcnkgZmlsZSBpbiB3aW5kb3dzX2V4ZV9maWxlcyBhbmQgc2VsZi5saWJf ZmlsZXMgaXMgY29waWVkLi4uLi4uCmJlY2F1c2UgaW5ub3NldHVwIGhhcyB0byAiY29tcHJlc3Mi IHRoZW0gaW50byB0aGUgaW5zdGFsbGVyLgoKTk9XIHdpdGggc2tpcC1hcmNoaXYgdGhlIHRyb3Vi bGUgYmVnaW5zOgoKYnVpbGRfZXhlLnB5IGNvbnRhaW5zIHRoZSBtZXRob2QKCmRlZiBtYWtlX2xp Yl9hcmNoaXZlKHNlbGYsIHppcF9maWxlbmFtZSwgYmFzZV9kaXIsIGZpbGVzLAogICAgICAgICAg ICAgICAgICAgICAgICAgdmVyYm9zZT0wLCBkcnlfcnVuPTApOgoKaWYgbm90IHNlbGYuc2tpcF9h cmNoaXZlOgogLi4uLi4uCmVsc2U6IHJldHVybiAiLiIKIC4uLi4uCgp0aGlzICJzaW5nbGUgZG90 IiAiLiIgZ2V0cyBhcHBlbmRlZCB0byBzZWxmLmxpYl9maWxlcy4gT0YgQ09VUlNFLCAiLiIgaXMg bm90CnJlYWxseSBhbiBhcmNoaXZlIGZpbGUsIHNvIG9uIHRyeWluZyB0byBjb3B5IGl0IGludG8g YW4gaW5zdGFsbGVyLCB0aGF0CmZhaWxzIEJBRExZLgoKCldvcnNlIC4uLiB0aGlzICIuIiBzdGFu ZHMgZm9yIGFsbCB0aGUgLnB5byBvciAucHljIGZpbGVzLCB3aGljaCBTSE9VTEQgYmUKZGlzdHJp YnV0ZWQgOikpKSBTbywgc2ltcGx5IHN0cmlwcGluZyB0aGUgIi4iIGZyb20gbGliX2ZpbGVzIG1h a2VzIGEgbm90CndvcmtpbmcgaW5zdGFsbGVyLgoKSSBjaGFuZ2VkIG1ha2VfbGliX2FyY2hpdmUg dG8gdGhlIGZvbGxvd2luZzoKICAgIGRlZiBtYWtlX2xpYl9hcmNoaXZlKHNlbGYsIHppcF9maWxl bmFtZSwgYmFzZV9kaXIsIGZpbGVzLAogICAgICAgICAgICAgICAgICAgICAgICAgdmVyYm9zZT0w LCBkcnlfcnVuPTApOgogICAgICAgIGZyb20gZGlzdHV0aWxzLmRpcl91dGlsIGltcG9ydCBta3Bh dGgKICAgICAgICBpZiBub3Qgc2VsZi5za2lwX2FyY2hpdmU6CiAgICAgICAgICAgICMgTGlrZSBk aXN0dXRpbHMgIm1ha2VfYXJjaGl2ZSIsIGJ1dCB3ZSBjYW4gc3BlY2lmeSB0aGUgZmlsZXMKICAg ICAgICAgICAgIyB0byBpbmNsdWRlLCBhbmQgdGhlIGNvbXByZXNzaW9uIHRvIHVzZSAtIGRlZmF1 bHQgaXMKICAgICAgICAgICAgIyBaSVBfU1RPUkVEIHRvIGtlZXAgdGhlIHJ1bnRpbWUgcGVyZm9y bWFuY2UgdXAuICBBbHNvLCB3ZQogICAgICAgICAgICAjIGRvbid0IGFwcGVuZCAnLnppcCcgdG8g dGhlIGZpbGVuYW1lLgogICAgICAgICAgICBta3BhdGgob3MucGF0aC5kaXJuYW1lKHppcF9maWxl bmFtZSksIGRyeV9ydW49ZHJ5X3J1bikKCiAgICAgICAgICAgIGlmIHNlbGYuY29tcHJlc3NlZDoK ICAgICAgICAgICAgICAgIGNvbXByZXNzaW9uID0gemlwZmlsZS5aSVBfREVGTEFURUQKICAgICAg ICAgICAgZWxzZToKICAgICAgICAgICAgICAgIGNvbXByZXNzaW9uID0gemlwZmlsZS5aSVBfU1RP UkVECgogICAgICAgICAgICBpZiBub3QgZHJ5X3J1bjoKICAgICAgICAgICAgICAgIHogPSB6aXBm aWxlLlppcEZpbGUoemlwX2ZpbGVuYW1lLCAidyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbXByZXNzaW9uPWNvbXByZXNzaW9uKQogICAgICAgICAgICAgICAgZm9yIGYg aW4gZmlsZXM6CiAgICAgICAgICAgICAgICAgICAgei53cml0ZShvcy5wYXRoLmpvaW4oYmFzZV9k aXIsIGYpLCBmKQogICAgICAgICAgICAgICAgei5jbG9zZSgpCgogICAgICAgICAgICByZXR1cm4g emlwX2ZpbGVuYW1lCiAgICAgICAgZWxzZToKICAgICAgICAgICAgIyBEb24ndCByZWFsbHkgcHJv ZHVjZSBhbiBhcmNoaXZlLCBqdXN0IGNvcHkgdGhlIGZpbGVzLgogICAgICAgICAgICBmcm9tIGRp c3R1dGlscy5maWxlX3V0aWwgaW1wb3J0IGNvcHlfZmlsZQoKICAgICAgICAgICAgZGVzdEZvbGRl ciA9IG9zLnBhdGguZGlybmFtZSh6aXBfZmlsZW5hbWUpCiAgICAgICAgICAgIHNlbGYuZGVzdGNv cGllZEZpbGVzPVtdICAjSEFNIGFkZGVkCgogICAgICAgICAgICBmb3IgZiBpbiBmaWxlczoKICAg ICAgICAgICAgICAgIGQgPSBvcy5wYXRoLmRpcm5hbWUoZikKICAgICAgICAgICAgICAgIGlmIGQ6 CiAgICAgICAgICAgICAgICAgICAgbWtwYXRoKG9zLnBhdGguam9pbihkZXN0Rm9sZGVyLCBkKSwg dmVyYm9zZT12ZXJib3NlLApkcnlfcnVuPWRyeV9ydW4pCiAgICAgICAgICAgICAgICBkZXN0cGF0 aD1vcy5wYXRoLmpvaW4oZGVzdEZvbGRlciwgZikKICAgICAgICAgICAgICAgIGNvcHlfZmlsZSgK ICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4oYmFzZV9kaXIsIGYpLAogICAg ICAgICAgICAgICAgICAgICAgICAgIGRlc3RwYXRoLAogICAgICAgICAgICAgICAgICAgICAgICAg IHByZXNlcnZlX21vZGU9MCwKICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJib3NlPXZlcmJv c2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgZHJ5X3J1bj1kcnlfcnVuCiAgICAgICAgICAg ICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICBzZWxmLmRlc3Rjb3BpZWRGaWxlcy5hcHBl bmQoZGVzdHBhdGgpICNIQU0gYWRkZWQKICAgICAgICAgICAgcmV0dXJuICIuIgoKCmFuZCBiZWZv cmUgSSBwYXNzIHRoZSAic2VsZi5saWJfZmlsZXMiIHRvIHRoZSBjcmVhdGUgbWV0aG9kLCBJIHB1 dCBpbgoKICAgICAgICBpZiAnLicgaW4gc2VsZi5saWJfZmlsZXM6CiAgICAgICAgICAgIHNlbGYu bGliX2ZpbGVzLnJlbW92ZSgiLiIpCiAgICAgICAgICAgIHNlbGYubGliX2ZpbGVzLmV4dGVuZChz ZWxmLmRlc3Rjb3BpZWRGaWxlcykKCnRoYXQgd29ya3MuIEkgYW0gaGFwcHkuIEJ1dCBpdCBsb29r cyBsaWtlIGEgdmVyeSB2ZXJ5IGNydWRlIGhhY2suIEFuZCB3aWxsCmJlIGdvbmUgd2l0aCB0aGUg bmV4dCB2ZXJzaW9uIG9mIHB5MmV4ZSAuLi4gdW5sZXNzIHlvdSBjYW4gaW5jb3Jwb3JhdGUgc29t ZQpvZiB0aGlzIGZpeCB3aXRoaW4gdGhlIGNvcmUgOikKCgpJZiBJIGNhbiBiZSBvZiBhbnkgaGVs cCwgcGxlYXNlIGxldCBtZSBrbm93IQoKSGFyYWxkCgoKLS0KR0hVTSBIYXJhbGQgTWFzc2EKcGVy c3VhZGVyZSBldCBwcm9ncmFtbWFyZQpIYXJhbGQgQXJtaW4gTWFzc2EKUmVpbnNidXJnc3RyYcOf ZSAyMDJiCjcwMTk3IFN0dXR0Z2FydAowMTczLzk0MDk2MDcKLQpQb3N0Z3JlU1FMIC0gc3VwcG9y dGVkIGJ5IGEgY29tbXVuaXR5IHRoYXQgZG9lcyBub3QgcHV0IHlvdSBvbiBob2xkCg== |