From owner-freebsd-bluetooth@FreeBSD.ORG Tue Oct 19 18:19:43 2010 Return-Path: Delivered-To: freebsd-bluetooth@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A7270106564A for ; Tue, 19 Oct 2010 18:19:43 +0000 (UTC) (envelope-from maksim.yevmenkin@gmail.com) Received: from mail-iw0-f182.google.com (mail-iw0-f182.google.com [209.85.214.182]) by mx1.freebsd.org (Postfix) with ESMTP id 3B9718FC1A for ; Tue, 19 Oct 2010 18:19:42 +0000 (UTC) Received: by iwn41 with SMTP id 41so117785iwn.13 for ; Tue, 19 Oct 2010 11:19:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type; bh=kt+uBfMC5ULVLD9Ag69T3dmLIx+OsmThFdi6a7DFP3E=; b=alykAOnl0GqPfJmG1DzSEqgeo90n8e4ASIskykxMw4vUNKSbknYnpjWRHUuEHfP1j9 XSoJe8fv8hRCb6bYDypHiYZFLEjzf+aJ2k1gF5TPo5nEidX+3iO6vsLo6Ua0Dhtt+17G zdWRDvPEKmG43i6Bw4mGaUuBgcgnrQqGv/Fg4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=XY3KKggLLTFYOsKyiMiqf1mothLdsE6nSluU9ueDukCYaJXIVkGj6p5S46Em8kl7Mv CVxLoz5U56ascT0Ks9CRX/EX5tQNNXmPyNFiHLCXDKDn9MSAFw9iD7VlOVJNFDMy14uy UpWDD0J7VJZ1UpoBQfbKIO93cf9I2Tl+FrejA= MIME-Version: 1.0 Received: by 10.231.161.16 with SMTP id p16mr5220634ibx.61.1287512380981; Tue, 19 Oct 2010 11:19:40 -0700 (PDT) Received: by 10.231.215.169 with HTTP; Tue, 19 Oct 2010 11:19:40 -0700 (PDT) In-Reply-To: <1287509041.022618.4884.nullmailer@galant.ukfsn.org> References: <1287509041.022618.4884.nullmailer@galant.ukfsn.org> Date: Tue, 19 Oct 2010 11:19:40 -0700 Message-ID: From: Maksim Yevmenkin To: Iain Hibbert Content-Type: multipart/mixed; boundary=001636d352721d19d10492fc5633 Cc: freebsd-bluetooth@freebsd.org Subject: Re: obexapp print stream statistics after transfer X-BeenThere: freebsd-bluetooth@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Using Bluetooth in FreeBSD environments List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 Oct 2010 18:19:43 -0000 --001636d352721d19d10492fc5633 Content-Type: text/plain; charset=ISO-8859-1 Hi Iain, thanks for all the patches! could you please try the combined patch (attached) and make sure it still works for you? thanks, mas --001636d352721d19d10492fc5633 Content-Type: text/plain; charset=US-ASCII; name="obexapp.iain.combined.txt" Content-Disposition: attachment; filename="obexapp.iain.combined.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gfh3mg331 SW5kZXg6IGNsaWVudC5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC91c3IvbG9jYWwvY3ZzL3BvcnRz L29iZXhhcHAvY2xpZW50LmMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTkKZGlmZiAtdSAtcjEu MTkgY2xpZW50LmMKLS0tIGNsaWVudC5jCTggSmFuIDIwMTAgMTg6MzE6MjIgLTAwMDAJMS4xOQor KysgY2xpZW50LmMJMTkgT2N0IDIwMTAgMTc6NTE6MDUgLTAwMDAKQEAgLTUwLDYgKzUwLDcgQEAK ICNpbmNsdWRlICJjbGllbnQuaCIKICNpbmNsdWRlICJldmVudC5oIgogI2luY2x1ZGUgImxvZy5o IgorI2luY2x1ZGUgInN0cmVhbS5oIgogI2luY2x1ZGUgInV0aWwuaCIKIAogLyoKQEAgLTc2OSw2 ICs3NzAsOCBAQAogCQkJbG9nX2VycigiJXMoKTogQ291bGQgbm90IGFkZCBIRFJfQk9EWSIsIF9f ZnVuY19fKTsKIAkJCWdvdG8gZG9uZTsKIAkJfQorCisJCW9iZXhhcHBfc3RyZWFtX3N0YXRzX3Jl c2V0KGNvbnRleHQpOwogCQlicmVhazsKIAogCWNhc2UgT0JFWEFQUF9QVVRfQ1JFQVRFX0VNUFRZ OgpAQCAtODAzLDggKzgwNiwxMiBAQAogCiAJaWYgKGNvbnRleHQtPnJzcCAhPSBPQkVYX1JTUF9T VUNDRVNTKQogCQllcnJvciA9IC0xOwotCWVsc2UKKwllbHNlIHsKIAkJZXJyb3IgPSAwOworCQlp ZiAob3Bjb2RlID09IE9CRVhBUFBfUFVUKQorCQkJb2JleGFwcF9zdHJlYW1fc3RhdHNfcHJpbnQo Y29udGV4dCk7CisJfQorCiBkb25lOgogCWlmIChvYmplY3QgIT0gTlVMTCkgewogCQlPQkVYX09i amVjdERlbGV0ZShoYW5kbGUsIG9iamVjdCk7CkBAIC05MDksNiArOTE2LDcgQEAKIAkJCWdvdG8g ZG9uZTsKIAkJfQogCisJCW9iZXhhcHBfc3RyZWFtX3N0YXRzX3Jlc2V0KGNvbnRleHQpOwogCQlP QkVYX09iamVjdFJlYWRTdHJlYW0oaGFuZGxlLCBvYmplY3QsIE5VTEwpOwogCQlicmVhazsKIApA QCAtOTkwLDYgKzk5OCw4IEBACiAJCQkJCSIlcyAoJWQpIiwgX19mdW5jX18sCiAJCQkJCWNvbnRl eHQtPnRlbXAsIGxvY2FsLCBzdHJlcnJvcihlcnJubyksCiAJCQkJCWVycm5vKTsKKwkJCWVsc2UK KwkJCQlvYmV4YXBwX3N0cmVhbV9zdGF0c19wcmludChjb250ZXh0KTsKIAkJCWJyZWFrOwogCQl9 CiAJfSBlbHNlCkluZGV4OiBldmVudC5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC91c3IvbG9jYWwv Y3ZzL3BvcnRzL29iZXhhcHAvZXZlbnQuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS43CmRpZmYg LXUgLXIxLjcgZXZlbnQuYwotLS0gZXZlbnQuYwkyMCBBdWcgMjAwOSAyMTo1NzoxOCAtMDAwMAkx LjcKKysrIGV2ZW50LmMJMTkgT2N0IDIwMTAgMTc6MzM6NTggLTAwMDAKQEAgLTEzNyw3ICsxMzcs NyBAQAogCQlzdGF0aWMgdWludDMyX3QJc3Bpbm5lcl9pZHggPSAwOwogCiAJCXByaW50ZigiJWNc YiIsIHNwaW5uZXJbc3Bpbm5lcl9pZHggKytdKTsKLQkJaWYgKHNwaW5uZXJfaWR4ID49IHNpemVv ZihzcGlubmVyKS9zaXplb2Yoc3Bpbm5lclswXSkpCisJCWlmIChzcGlubmVyX2lkeCA9PSBzaXpl b2Yoc3Bpbm5lcikvc2l6ZW9mKHNwaW5uZXJbMF0pIC0gMSkKIAkJCXNwaW5uZXJfaWR4ID0gMDsK IAl9CiB9IC8qIG9iZXhhcHBfZXZlbnRfcHJvZ3Jlc3MgKi8KSW5kZXg6IG1haW4uYwo9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09ClJDUyBmaWxlOiAvdXNyL2xvY2FsL2N2cy9wb3J0cy9vYmV4YXBwL21haW4uYyx2CnJldHJp ZXZpbmcgcmV2aXNpb24gMS4xNApkaWZmIC11IC1yMS4xNCBtYWluLmMKLS0tIG1haW4uYwkyMCBB dWcgMjAwOSAyMTo1NzoxOCAtMDAwMAkxLjE0CisrKyBtYWluLmMJMTkgT2N0IDIwMTAgMTc6NDI6 MDggLTAwMDAKQEAgLTI0OSw4ICsyNDksNyBAQAogCWFyZ3YgKz0gb3B0aW5kOwogCiAJaWYgKCFj b250ZXh0LnNlcnZlcikgewotCQlpZiAobWVtY21wKCZjb250ZXh0LnJhZGRyLCBOR19IQ0lfQkRB RERSX0FOWSwKLQkJCQlzaXplb2YoY29udGV4dC5yYWRkcikpID09IDApCisJCWlmIChiZGFkZHJf YW55KCZjb250ZXh0LnJhZGRyKSkKIAkJCWVycngoMSwgIk11c3Qgc3BlY2lmeSBzZXJ2ZXIgQkRf QUREUiIpOyAKIAogCQkvKiBDaGVjayBjaGFubmVsLCBpZiB3YXMgbm90IHNldCB0aGVuIG9idGFp biBpdCB2aWEgU0RQICovCkluZGV4OiBvYmV4YXBwLmgKPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL3Vz ci9sb2NhbC9jdnMvcG9ydHMvb2JleGFwcC9vYmV4YXBwLmgsdgpyZXRyaWV2aW5nIHJldmlzaW9u IDEuMTAKZGlmZiAtdSAtcjEuMTAgb2JleGFwcC5oCi0tLSBvYmV4YXBwLmgJMjAgQXVnIDIwMDkg MjE6NTc6MTggLTAwMDAJMS4xMAorKysgb2JleGFwcC5oCTE5IE9jdCAyMDEwIDE3OjUxOjA1IC0w MDAwCkBAIC0xMTAsNiArMTEwLDggQEAKIAkvKiBzdHJlYW0gZmlsZSBkZXNjcmlwdG9yIGFuZCBi dWZmZXIgKi8KIAlpbnQJCQkgc2ZkOwogCXVpbnQ4X3QJCQkqc2J1ZmZlcjsKKwlzaXplX3QJCQkg c3RvdGFsOworCXRpbWVfdAkJCSBzdGltZTsKIAogCWludAkJCSBtdHU7ICAgICAgICAgICAgLyog T0JFWCBNVFUgKi8KIApJbmRleDogc3RyZWFtLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL3Vzci9s b2NhbC9jdnMvcG9ydHMvb2JleGFwcC9zdHJlYW0uYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS45 CmRpZmYgLXUgLXIxLjkgc3RyZWFtLmMKLS0tIHN0cmVhbS5jCTkgQXByIDIwMDkgMjM6MTY6MzEg LTAwMDAJMS45CisrKyBzdHJlYW0uYwkxOSBPY3QgMjAxMCAxNzo1MjowMyAtMDAwMApAQCAtMzQs NyArMzQsOSBAQAogI2luY2x1ZGUgPGZjbnRsLmg+CiAjaW5jbHVkZSA8bGltaXRzLmg+CiAjaW5j bHVkZSA8b2JleC5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+Cisj aW5jbHVkZSA8dGltZS5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCiAjaW5jbHVkZSAiY29tcGF0 LmgiCkBAIC03OSw2ICs4MSw4IEBACiAKIAkJY2xvc2UoY29udGV4dC0+c2ZkKTsKIAkJY29udGV4 dC0+c2ZkID0gLTE7CisJfSBlbHNlIHsKKwkJY29udGV4dC0+c3RvdGFsICs9IGxlbmd0aDsKIAl9 CiB9IC8qIG9iZXhhcHBfc3RyZWFtX3dyaXRlICovCiAKQEAgLTIyNCw2ICsyMjgsMjYgQEAKIAkJ cmV0dXJuOwogCX0KIAorCWNvbnRleHQtPnN0b3RhbCArPSBsZW5ndGg7CiAJbG9nX2RlYnVnKCIl cygpOiBXcm90ZSAlZCBieXRlcyBvZiBzdHJlYW0gZGF0YSIsIF9fZnVuY19fLCBsZW5ndGgpOwog fSAvKiBvYmV4YXBwX3N0cmVhbV9yZWFkICovCiAKK3ZvaWQKK29iZXhhcHBfc3RyZWFtX3N0YXRz X3Jlc2V0KGNvbnRleHRfdCAqY29udGV4dCkKK3sKKwljb250ZXh0LT5zdG90YWwgPSAwOworCWNv bnRleHQtPnN0aW1lID0gdGltZShOVUxMKTsKK30KKwordm9pZAorb2JleGFwcF9zdHJlYW1fc3Rh dHNfcHJpbnQoY29udGV4dF90ICpjb250ZXh0KQoreworCWludCB0bTsKKworCXRtID0gKGludCko dGltZShOVUxMKSAtIGNvbnRleHQtPnN0aW1lKTsKKwlwcmludGYoIiV6dSBieXRlcyBzdHJlYW1l ZCBpbiAlZCBzZWNvbmQlcyIsCisJICAgIGNvbnRleHQtPnN0b3RhbCwgdG0sICh0bSA9PSAxID8g IiIgOiAicyIpKTsKKwlpZiAodG0gPiAxKQorCQlwcmludGYoIiAoJXp1IGJ5dGVzL3NlYykiLCBj b250ZXh0LT5zdG90YWwgLyB0bSk7CisJcHJpbnRmKCJcbiIpOworfQpJbmRleDogc3RyZWFtLmgK PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQpSQ1MgZmlsZTogL3Vzci9sb2NhbC9jdnMvcG9ydHMvb2JleGFwcC9zdHJlYW0u aCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xLjEuMQpkaWZmIC11IC1yMS4xLjEuMSBzdHJlYW0u aAotLS0gc3RyZWFtLmgJMTAgRmViIDIwMDMgMDM6Mjg6MDMgLTAwMDAJMS4xLjEuMQorKysgc3Ry ZWFtLmgJMTkgT2N0IDIwMTAgMTc6NTE6MDUgLTAwMDAKQEAgLTM1LDUgKzM1LDggQEAKIG9iZXhh cHBfZXZlbnRfaGFuZGxlcl90CW9iZXhhcHBfc3RyZWFtX3dyaXRlOwogb2JleGFwcF9ldmVudF9o YW5kbGVyX3QJb2JleGFwcF9zdHJlYW1fcmVhZDsKIAordm9pZCBvYmV4YXBwX3N0cmVhbV9zdGF0 c19yZXNldChjb250ZXh0X3QgKik7Cit2b2lkIG9iZXhhcHBfc3RyZWFtX3N0YXRzX3ByaW50KGNv bnRleHRfdCAqKTsKKwogI2VuZGlmIC8qIF9TVFJFQU1fSF8gKi8KIApJbmRleDogdHJhbnNwb3J0 LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQpSQ1MgZmlsZTogL3Vzci9sb2NhbC9jdnMvcG9ydHMvb2JleGFwcC90cmFu c3BvcnQuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xNApkaWZmIC11IC1yMS4xNCB0cmFuc3Bv cnQuYwotLS0gdHJhbnNwb3J0LmMJMjAgQXVnIDIwMDkgMjE6NTc6MTggLTAwMDAJMS4xNAorKysg dHJhbnNwb3J0LmMJMTkgT2N0IDIwMTAgMTc6Mzc6MjIgLTAwMDAKQEAgLTM1OCw2ICszNTgsMTAg QEAKIAogCQlyZXR1cm4gKG4pOwogCX0KKwlpZiAobiA9PSAwKSB7CisJCWxvZ19pbmZvKCIlcygp OiBDb25uZWN0aW9uIGNsb3NlZCIsIF9fZnVuY19fKTsKKwkJcmV0dXJuICgtMSk7CisJfQogCiAJ bG9nX2RlYnVnKCIlcygpOiBHb3QgJWQgYnl0ZXMiLCBfX2Z1bmNfXywgbik7CiAKSW5kZXg6IHV0 aWwuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvdXNyL2xvY2FsL2N2cy9wb3J0cy9vYmV4YXBwL3V0 aWwuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xNgpkaWZmIC11IC1yMS4xNiB1dGlsLmMKLS0t IHV0aWwuYwk4IEphbiAyMDEwIDE4OjMxOjIyIC0wMDAwCTEuMTYKKysrIHV0aWwuYwkxOSBPY3Qg MjAxMCAxNzozODozNyAtMDAwMApAQCAtMjg4LDE0ICsyODgsMTQgQEAKICAqIFJlYWQgdXB0byBi dWZmZXJfbGVuZ3RoIGJ5dGVzIGludG8gdGhlIGJ1ZmZlciBmcm9tIHRoZSBmaWxlIGRlc2NyaXB0 b3IgZmQKICAqLwogCi1pbnQKLW9iZXhhcHBfdXRpbF9yZWFkKGludCBmZCwgdWludDhfdCAqYnVm ZmVyLCBpbnQgYnVmZmVyX2xlbmd0aCkKK3NzaXplX3QKK29iZXhhcHBfdXRpbF9yZWFkKGludCBm ZCwgdWludDhfdCAqYnVmZmVyLCBzaXplX3QgYnVmZmVyX2xlbmd0aCkKIHsKLQlpbnQJbGVuZ3Ro OworCXNzaXplX3QgbGVuZ3RoOwogCiBhZ2FpbjoKIAlsZW5ndGggPSByZWFkKGZkLCBidWZmZXIs IGJ1ZmZlcl9sZW5ndGgpOwotCWlmIChsZW5ndGggPCAwICYmIGVycm5vID09IEVJTlRSKQorCWlm IChsZW5ndGggPT0gLTEgJiYgZXJybm8gPT0gRUlOVFIpCiAJCWdvdG8gYWdhaW47CiAKIAlyZXR1 cm4gKGxlbmd0aCk7CkBAIC0zMDUsMTUgKzMwNSwxNiBAQAogICogV3JpdGUgYnVmZmVyX2xlbmd0 aCBieXRlcyBmcm9tIHRoZSBidWZmZXIgdG8gdGhlIGRlc2NyaXB0b3IgZmQKICAqLwogCi1pbnQK LW9iZXhhcHBfdXRpbF93cml0ZShpbnQgZmQsIHVpbnQ4X3QgY29uc3QgKmJ1ZmZlciwgaW50IGJ1 ZmZlcl9sZW5ndGgpCitzc2l6ZV90CitvYmV4YXBwX3V0aWxfd3JpdGUoaW50IGZkLCB1aW50OF90 IGNvbnN0ICpidWZmZXIsIHNpemVfdCBidWZmZXJfbGVuZ3RoKQogewotCWludAl3cm90ZSwgc2l6 ZTsKKwlzc2l6ZV90IHNpemU7CisJc2l6ZV90IHdyb3RlOwogCiAJd3JvdGUgPSAwOwogCXdoaWxl ICh3cm90ZSA8IGJ1ZmZlcl9sZW5ndGgpIHsKIAkJc2l6ZSA9IHdyaXRlKGZkLCBidWZmZXIgKyB3 cm90ZSwgYnVmZmVyX2xlbmd0aCAtIHdyb3RlKTsKLQkJaWYgKHNpemUgPCAwKSB7CisJCWlmIChz aXplID09IC0xKSB7CiAJCQlpZiAoZXJybm8gPT0gRUlOVFIpCiAJCQkJY29udGludWU7CiAKSW5k ZXg6IHV0aWwuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvdXNyL2xvY2FsL2N2cy9wb3J0cy9vYmV4 YXBwL3V0aWwuaCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS45CmRpZmYgLXUgLXIxLjkgdXRpbC5o Ci0tLSB1dGlsLmgJOCBKYW4gMjAxMCAxODozMToyMiAtMDAwMAkxLjkKKysrIHV0aWwuaAkxOSBP Y3QgMjAxMCAxNzozODozNyAtMDAwMApAQCAtMzksOCArMzksOCBAQAogaW50IG9iZXhhcHBfdXRp bF9sb2NhbGVfZnJvbV91dGYxNmJlKHVpbnQ4X3QgY29uc3QgKnNyYywgc2l6ZV90IHNyY2xlbiwg Y2hhciAqZHN0LCBzaXplX3QgZHN0bGVuKTsKIGludCBvYmV4YXBwX3V0aWxfbG9jYWxlX3RvX3V0 ZjE2YmUoY2hhciBjb25zdCAqc3JjLCBzaXplX3Qgc3JjbGVuLCB1aW50OF90ICpkc3QsIHNpemVf dCBkc3RsZW4pOwogCi1pbnQgb2JleGFwcF91dGlsX3JlYWQoaW50IGZkLCB1aW50OF90ICpidWZm ZXIsIGludCBidWZmZXJfbGVuZ3RoKTsKLWludCBvYmV4YXBwX3V0aWxfd3JpdGUoaW50IGZkLCB1 aW50OF90IGNvbnN0ICpidWZmZXIsIGludCBidWZmZXJfbGVuZ3RoKTsKK3NzaXplX3Qgb2JleGFw cF91dGlsX3JlYWQoaW50IGZkLCB1aW50OF90ICpidWZmZXIsIHNpemVfdCBidWZmZXJfbGVuZ3Ro KTsKK3NzaXplX3Qgb2JleGFwcF91dGlsX3dyaXRlKGludCBmZCwgdWludDhfdCBjb25zdCAqYnVm ZmVyLCBzaXplX3QgYnVmZmVyX2xlbmd0aCk7CiBpbnQgb2JleGFwcF91dGlsX2Rpc3BsYXlfZm9s ZGVyX2xpc3RpbmcoY2hhciBjb25zdCAqbHMpOwogY2hhciAqCW9iZXhhcHBfdXRpbF9nZXRzKGNo YXIgY29uc3QgKnByb21wdCwgY2hhciAqYnVmZmVyLCBpbnQgYnVmZmVyX3NpemUpOwogY2hhciAq CW9iZXhhcHBfdXRpbF9zdHJzZXAoY2hhciAqKnNwLCBjaGFyIGNvbnN0ICpkZWxpbSk7Cg== --001636d352721d19d10492fc5633--