From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: passt.top; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: passt.top; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=Dqsjufo6; dkim-atps=neutral Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by passt.top (Postfix) with ESMTPS id 5AEE65A061C for ; Mon, 24 Aug 2026 15:45:04 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1787579103; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=fBlcJIkoG5if/eylPnH84YKQyty15msxAdbhTMak9M4=; b=Dqsjufo6uL1Q5Zmjqh0OoHDH8jQPot4Fy0CaC6fNHe7nqSqjiIq8Pvv2ReL3VsTrBhAJ3K lJi8+3a2sy080deF68spUt2WcHZve30ipyN4eiv7Av5i2d0zyfIqA6/Etkdd3CIUk0wZq+ wLf3DIKgtv7HD3XKUnHWfjobv3+NKSw= Received: from mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-70-vu2hGw8-NI-eqeGyIF1BWA-1; Mon, 24 Aug 2026 09:45:01 -0400 X-MC-Unique: vu2hGw8-NI-eqeGyIF1BWA-1 X-Mimecast-MFC-AGG-ID: vu2hGw8-NI-eqeGyIF1BWA_1787579101 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id EBF9F185FEFB; Mon, 24 Aug 2026 13:45:00 +0000 (UTC) Received: from anskuma-thinkpadp1gen7.bengluru.csb (unknown [10.74.80.6]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 7E60C1955F0F; Mon, 24 Aug 2026 13:44:55 +0000 (UTC) From: Anshu Kumari To: sbrivio@redhat.com, passt-dev@passt.top, anskuma@redhat.com Subject: [PATCH v6 3/6] dhcp: Add option overload Date: Mon, 24 Aug 2026 19:14:31 +0530 Message-ID: <20260824134436.282300-4-anskuma@redhat.com> In-Reply-To: <20260824134436.282300-1-anskuma@redhat.com> References: <20260824134436.282300-1-anskuma@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: Yfvd6JKTNVgVrth_I-KJ9cxWjIeb64-lgVLL7tZys6U_1787579101 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Message-ID-Hash: Y4HJ62HCY6KA2K5GGN4P5TQ7SJ2IC2X3 X-Message-ID-Hash: Y4HJ62HCY6KA2K5GGN4P5TQ7SJ2IC2X3 X-MailFrom: anskuma@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: david@gibson.dropbear.id.au, jmaloy@redhat.com, lvivier@redhat.com X-Mailman-Version: 3.3.8 Precedence: list List-Id: Development discussion and patches for passt Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: V2hlbiB0aGUgb3B0aW9ucyBmaWVsZCBpcyBmdWxsLCBvdmVyZmxvdyByZW1haW5pbmcgREhDUCBv cHRpb25zIGludG8NCnRoZSBzbmFtZSBhbmQgZmlsZSBmaWVsZHMgcGVyIFJGQyAyMTMyIG9wdGlv biA1Mi4NCg0KUGVyIFJGQyAyMTMyLCBTZWN0aW9uIDkuNSwgdGhlIGJvb3QgZmlsZSBuYW1lIGlz IGFsd2F5cyBwbGFjZWQgaW4gdGhlDQonZmlsZScgaGVhZGVyIGZpZWxkLiAgV2hlbiBhIGJvb3Qg ZmlsZSBpcyBzZXQsIHRoZSBmaWxlIGZpZWxkIGlzDQpyZXNlcnZlZCBmcm9tIG92ZXJsb2FkIGFu ZCBvdmVyZmxvdyB1c2VzIG9ubHkgdGhlIHNuYW1lIGZpZWxkLg0KDQpMaW5rOiBodHRwczovL2J1 Z3MucGFzc3QudG9wL3Nob3dfYnVnLmNnaT9pZD0xOTINClNpZ25lZC1vZmYtYnk6IEFuc2h1IEt1 bWFyaSA8YW5za3VtYUByZWRoYXQuY29tPg0KLS0tDQp2NjoNCiAgLSBDaGFuZ2VkIGZpbGxfb25l KCkgcmV0dXJuIHR5cGUgZnJvbSBib29sIHRvIHZvaWQuDQogIC0gUmVwbGFjZWQgcGVyLWNhbGwt c2l0ZSBkZWJ1ZyBtZXNzYWdlcyB3aXRoIGEgc2luZ2xlDQogICAgcmVwb3J0aW5nIGxvb3AgYXQg ZW5kIG9mIGZpbGwoKS4NCiAgLSBBZGRlZCBleHBsaWNpdCBudW1lcmljIHZhbHVlcyB0byBlbnVt IGRoY3Bfb3ZlcmxvYWQuDQogIC0gUmVtb3ZlZCB0ZW1wb3JhcnkgYnVmZmVyIGZvciBib290IGZp bGUgY29weSwNCiAgICBjb3B5IGRpcmVjdGx5IGludG8gcmVwbHkuZmlsZS4NCiAgLSBGaXhlZCBt aXhlZCBjb2RlIGFuZCBkZWNsYXJhdGlvbnMuDQogIC0gRml4ZWQgaW5kZW50YXRpb24gYW5kIHdo aXRlc3BhY2UgaXNzdWVzLg0KICAtIEFkZGVkIGN1cmx5IGJyYWNrZXRzIGZvciBtdWx0aS1saW5l IGlmIGNsYXVzZXMNCg0KdjU6DQogIC0gZW5oYW5jZWQgZW51bSBkaGNwX292ZXJsb2FkIHRvIGZv bGxvdyBrZXJuZWwtZG9jLg0KICAtIElubGluZSBmaWxsX292ZXJmbG93KCkgaW50byBmaWxsKCkN CiAgLSBVc2Ugc3RhdGUtYmFzZWQgY2hlY2tzIGluc3RlYWQgb2Ygc2xlbg0KDQp2NDoNCiAgLSBD b252ZXJ0ZWQgb3ZlcmxvYWQgI2RlZmluZXMgdG8gZW51bSBkaGNwX292ZXJsb2FkLg0KICAtIEZp eGVkIG1pc3Npbmcgd2hpdGVzcGFjZSBpbiBjb21tZW50IGJlZm9yZSAqLy4NCiAgLSBCb290IGZp bGUgbmFtZSBhbHdheXMgcGxhY2VkIGluICdmaWxlJyBoZWFkZXIgZmllbGQgcGVyIFJGQyAyMTMy LA0KICAgIFNlY3Rpb24gOS41OyBmaWxlIGZpZWxkIHJlc2VydmVkIGZyb20gb3ZlcmxvYWQgd2hl biBib290ZmlsZSBpcw0KICAgIHNldDsgb3B0aW9uIDY3IHN1cHByZXNzZWQgZnJvbSBvcHRpb25z IGFyZWEuDQoNCnYzOg0KICAtIEFkZGVkIFJGQyAyMTMyIFNlY3Rpb24gOS4zIHJlZmVyZW5jZSBj b21tZW50IG9uIG92ZXJsb2FkDQogICAgY29uc3RhbnRzLg0KICAtIFVzZSBBUlJBWV9TSVpFKG9w dHMpIGluc3RlYWQgb2YgcmF3IDI1NSBpbiBmaWxsX292ZXJmbG93KCkuDQogIC0gU3dhcHBlZCBv dmVyZmxvdyBvcmRlcjogdHJ5IHNuYW1lICg2NCBieXRlcykgZmlyc3QsIHRoZW4gZmlsZQ0KICAg ICgxMjggYnl0ZXMpIOKAlCBiZXR0ZXIgcGFja2luZyBhbmQga2VlcHMgZmlsZSBmaWVsZCBhdmFp bGFibGUgZm9yDQogICAgYm9vdCBmaWxlIG5hbWUuDQogIC0gUmVtb3ZlZCAnJicgZnJvbSAmcmVw bHkuZmlsZS4NCiAgLSBSZW1vdmVkICcrMScgZnJvbSBtZW1jcHkg4oCUIHJlcGx5LmZpbGUgYWxy ZWFkeSB6ZXJvZWQuDQogIC0gb3B0X3NldF9kbnNfc2VhcmNoKCkgbWF4X2xlbjogT1BUX01BWCAt IDMgaW5zdGVhZCBvZg0KICAgIHNpemVvZihtLT5vKS4NCg0KdjI6DQogIC0gQWRkZWQgI2RlZmlu ZSBESENQX09WRVJMT0FEX0ZJTEUgYW5kICNkZWZpbmUgREhDUF9PVkVSTE9BRF9TTkFNRSBjb25z dGFudHMNCiAgLSBBZGRlZCBjb21tZW50IGRvY3VtZW50aW5nIHNwYWNlIHJlc2VydmF0aW9uOiAv KiBSZXNlcnZlIDMgYnl0ZXMgZm9yIG9wdGlvbiA1MiAqLw0KICAtIEZpeGVkIEROUyBzZWFyY2gg bGVuZ3RoOiBzaXplb2YobS0+bykgb25seSwgbm90IGNvbWJpbmVkIHdpdGggZmlsZStzbmFtZQ0K ICAtIFJlbW92ZWQgZGhjcF9ib290IHJlZmVyZW5jZXMg4oCUIHJlcGx5LmZpbGUgY29weSBub3cg cmVhZHMgZnJvbSBvcHRzWzY3XQ0KICAtIFVzZWQgREhDUF9PVkVSTE9BRF9GSUxFIGNvbnN0YW50 IGluIHJlcGx5LmZpbGUgZ3VhcmQNCi0tLQ0KIGRoY3AuYyB8IDk4ICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0NCiAxIGZpbGUgY2hhbmdl ZCwgODEgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgYS9kaGNw LmMgYi9kaGNwLmMNCmluZGV4IDMyMTk2OGEuLjAyYzc3NDQgMTAwNjQ0DQotLS0gYS9kaGNwLmMN CisrKyBiL2RoY3AuYw0KQEAgLTE0NiwxNiArMTQ2LDE0IEBAIHN0cnVjdCBtc2cgew0KICAqIEBz aXplOglVc2FibGUgc2l6ZSBvZiBAYnVmIChleGNsdWRpbmcgZW5kIG1hcmtlcikNCiAgKiBAbzoJ CU9wdGlvbiBudW1iZXINCiAgKiBAb2Zmc2V0OglDdXJyZW50IG9mZnNldCB3aXRoaW4gQGJ1Ziwg dXBkYXRlZCBvbiBpbnNlcnRpb24NCi0gKg0KLSAqIFJldHVybjogZmFsc2UgaWYgQGJ1ZiBoYXMg c3BhY2UgdG8gd3JpdGUgdGhlIG9wdGlvbiwgdHJ1ZSBvdGhlcndpc2UNCiAgKi8NCi1zdGF0aWMg Ym9vbCBmaWxsX29uZSh1aW50OF90ICpidWYsIHNpemVfdCBzaXplLCBpbnQgbywgaW50ICpvZmZz ZXQpDQorc3RhdGljIHZvaWQgZmlsbF9vbmUodWludDhfdCAqYnVmLCBzaXplX3Qgc2l6ZSwgaW50 IG8sIGludCAqb2Zmc2V0KQ0KIHsNCiAJc2l6ZV90IHNsZW4gPSBvcHRzW29dLnNsZW47DQogDQog CS8qIElmIHdlIGRvbid0IGhhdmUgc3BhY2UgdG8gd3JpdGUgdGhlIG9wdGlvbiwgdGhlbiBqdXN0 IHNraXAgKi8NCiAJaWYgKCpvZmZzZXQgKyAyIC8qIGNvZGUgYW5kIGxlbmd0aCBvZiBvcHRpb24g Ki8gKyBzbGVuID4gc2l6ZSkNCi0JCXJldHVybiB0cnVlOw0KKwkJcmV0dXJuOw0KIA0KIAlidWZb Km9mZnNldF0gPSBvOw0KIAlidWZbKm9mZnNldCArIDFdID0gc2xlbjsNCkBAIC0xNjcsMTkgKzE2 NSwzNyBAQCBzdGF0aWMgYm9vbCBmaWxsX29uZSh1aW50OF90ICpidWYsIHNpemVfdCBzaXplLCBp bnQgbywgaW50ICpvZmZzZXQpDQogDQogCW9wdHNbb10uc2VudCA9IDE7DQogCSpvZmZzZXQgKz0g c2xlbjsNCi0JcmV0dXJuIGZhbHNlOw0KIH0NCiANCiAvKioNCi0gKiBmaWxsKCkgLSBGaWxsIG9w dGlvbnMgaW4gbWVzc2FnZQ0KLSAqIEBtOgkJTWVzc2FnZSB0byBmaWxsDQorICogZW51bSBkaGNw X292ZXJsb2FkIC0gREhDUCBvcHRpb24gb3ZlcmxvYWQgdmFsdWVzIChSRkMgMjEzMiwgU2VjdGlv biA5LjMpDQorICogQERIQ1BfT1ZFUkxPQURfTk9ORToJCU5vIG92ZXJsb2FkDQorICogQERIQ1Bf T1ZFUkxPQURfRklMRToJCWZpbGUgZmllbGQgY2FycmllcyBvcHRpb25zDQorICogQERIQ1BfT1ZF UkxPQURfU05BTUU6CXNuYW1lIGZpZWxkIGNhcnJpZXMgb3B0aW9ucw0KKyAqLw0KK2VudW0gZGhj cF9vdmVybG9hZCB7DQorCURIQ1BfT1ZFUkxPQURfTk9ORSAgPSAwLA0KKwlESENQX09WRVJMT0FE X0ZJTEUgID0gMSwNCisJREhDUF9PVkVSTE9BRF9TTkFNRSA9IDIsDQorfTsNCisNCisvKioNCisg KiBmaWxsKCkgLSBGaWxsIG9wdGlvbnMgaW4gbWVzc2FnZSwgd2l0aCBvdmVybG9hZCBpbnRvIGZp bGUvc25hbWUgaWYgbmVlZGVkDQorICogQG06CQkJTWVzc2FnZSB0byBmaWxsDQorICogQG92ZXJs b2FkOgkJU2V0IHRvIG9wdGlvbiA1MiB2YWx1ZSAoMCBpZiBub25lLCAxLzIvMyBwZXIgUkZDIDIx MzIpDQorICogQGhhc19ib290ZmlsZToJUmVzZXJ2ZSBmaWxlIGZpZWxkIGZvciBib290IGZpbGUg bmFtZQ0KICAqDQogICogUmV0dXJuOiBjdXJyZW50IHNpemUgb2Ygb3B0aW9ucyBmaWVsZA0KICAq Lw0KLXN0YXRpYyBpbnQgZmlsbChzdHJ1Y3QgbXNnICptKQ0KK3N0YXRpYyBpbnQgZmlsbChzdHJ1 Y3QgbXNnICptLCBlbnVtIGRoY3Bfb3ZlcmxvYWQgKm92ZXJsb2FkLCBib29sIGhhc19ib290Zmls ZSkNCiB7DQorCWludCBzbmFtZV9vZmYgPSAwLCBmaWxlX29mZiA9IDA7DQorCS8qIFJlc2VydmUg MyBieXRlcyBmb3Igb3B0aW9uIDUyIChvdmVybG9hZCkgaWYgbmVlZGVkICovDQorCXNpemVfdCBz aXplID0gT1BUX01BWCAtIDM7DQogCWludCBpLCBvLCBvZmZzZXQgPSAwOw0KIA0KKwkqb3Zlcmxv YWQgPSBESENQX09WRVJMT0FEX05PTkU7DQorDQogCWZvciAobyA9IDA7IG8gPCAyNTU7IG8rKykN CiAJCW9wdHNbb10uc2VudCA9IDA7DQogDQpAQCAtMTg4LDIwICsyMDQsNTQgQEAgc3RhdGljIGlu dCBmaWxsKHN0cnVjdCBtc2cgKm0pDQogCSAqIFB1dCBpdCB0aGVyZSBleHBsaWNpdGx5LCB1bmxl c3MgcmVxdWVzdGVkIHZpYSBvcHRpb24gNTUuDQogCSAqLw0KIAlpZiAob3B0c1s1NV0uY2xlbiA+ IDAgJiYgIW1lbWNocihvcHRzWzU1XS5jLCA1Mywgb3B0c1s1NV0uY2xlbikpDQotCQlpZiAoZmls bF9vbmUobS0+bywgT1BUX01BWCwgNTMsICZvZmZzZXQpKQ0KLQkJCWRlYnVnKCJESENQOiBza2lw cGluZyBvcHRpb24gNTMiKTsNCisJCWZpbGxfb25lKG0tPm8sIHNpemUsIDUzLCAmb2Zmc2V0KTsN CiANCiAJZm9yIChpID0gMDsgaSA8IG9wdHNbNTVdLmNsZW47IGkrKykgew0KIAkJbyA9IG9wdHNb NTVdLmNbaV07DQogCQlpZiAob3B0c1tvXS5zdGF0ZSAhPSBPUFRfVU5TRVQpDQotCQkJaWYgKGZp bGxfb25lKG0tPm8sIE9QVF9NQVgsIG8sICZvZmZzZXQpKQ0KLQkJCQlkZWJ1ZygiREhDUDogc2tp cHBpbmcgb3B0aW9uICVpIiwgbyk7DQorCQkJZmlsbF9vbmUobS0+bywgc2l6ZSwgbywgJm9mZnNl dCk7DQogCX0NCiANCiAJZm9yIChvID0gMDsgbyA8IDI1NTsgbysrKSB7DQogCQlpZiAob3B0c1tv XS5zdGF0ZSAhPSBPUFRfVU5TRVQgJiYgIW9wdHNbb10uc2VudCkNCi0JCQlpZiAoZmlsbF9vbmUo bS0+bywgT1BUX01BWCwgbywgJm9mZnNldCkpDQotCQkJCWRlYnVnKCJESENQOiBza2lwcGluZyBv cHRpb24gJWkiLCBvKTsNCisJCQlmaWxsX29uZShtLT5vLCBzaXplLCBvLCAmb2Zmc2V0KTsNCisJ fQ0KKw0KKwkvKiBPdmVyZmxvdyB1bnNlbnQgb3B0aW9ucyBpbnRvIHNuYW1lLCB0aGVuIGZpbGUg Ki8NCisJZm9yIChvID0gMDsgKHNpemVfdClvIDwgQVJSQVlfU0laRShvcHRzKTsgbysrKSB7DQor CQlpZiAob3B0c1tvXS5zdGF0ZSA9PSBPUFRfVU5TRVQgfHwgb3B0c1tvXS5zZW50KQ0KKwkJCWNv bnRpbnVlOw0KKwkJZmlsbF9vbmUobS0+c25hbWUsIHNpemVvZihtLT5zbmFtZSkgLSAxLCBvLCAm c25hbWVfb2ZmKTsNCisJfQ0KKw0KKwlpZiAoIWhhc19ib290ZmlsZSkgew0KKwkJZm9yIChvID0g MDsgKHNpemVfdClvIDwgQVJSQVlfU0laRShvcHRzKTsgbysrKSB7DQorCQkJaWYgKG9wdHNbb10u c3RhdGUgPT0gT1BUX1VOU0VUIHx8IG9wdHNbb10uc2VudCkNCisJCQkJY29udGludWU7DQorCQkJ ZmlsbF9vbmUobS0+ZmlsZSwgc2l6ZW9mKG0tPmZpbGUpIC0gMSwgbywgJmZpbGVfb2ZmKTsNCisJ CX0NCisJfQ0KKw0KKwkvKiBSZXBvcnQgYW55IG9wdGlvbnMgdGhhdCBjb3VsZCBub3QgYmUgc2Vu dCAqLw0KKwlmb3IgKG8gPSAwOyAoc2l6ZV90KW8gPCBBUlJBWV9TSVpFKG9wdHMpOyBvKyspIHsN CisJCWlmIChvcHRzW29dLnN0YXRlICE9IE9QVF9VTlNFVCAmJiAhb3B0c1tvXS5zZW50KQ0KKwkJ CWRlYnVnKCJESENQOiBza2lwcGluZyBvcHRpb24gJWkiLCBvKTsNCisJfQ0KKw0KKwlpZiAoc25h bWVfb2ZmKSB7DQorCQltLT5zbmFtZVtzbmFtZV9vZmZdID0gMjU1Ow0KKwkJKm92ZXJsb2FkIHw9 IERIQ1BfT1ZFUkxPQURfU05BTUU7DQorCX0NCisNCisJaWYgKGZpbGVfb2ZmKSB7DQorCQltLT5m aWxlW2ZpbGVfb2ZmXSA9IDI1NTsNCisJCSpvdmVybG9hZCB8PSBESENQX09WRVJMT0FEX0ZJTEU7 DQorCX0NCisNCisJaWYgKCpvdmVybG9hZCkgew0KKwkJbS0+b1tvZmZzZXQrK10gPSA1MjsNCisJ CW0tPm9bb2Zmc2V0KytdID0gMTsNCisJCW0tPm9bb2Zmc2V0KytdID0gKm92ZXJsb2FkOw0KIAl9 DQogDQogCW0tPm9bb2Zmc2V0KytdID0gMjU1Ow0KQEAgLTMxNSw2ICszNjUsNyBAQCBzdGF0aWMg dm9pZCBvcHRfc2V0X2Ruc19zZWFyY2goY29uc3Qgc3RydWN0IGN0eCAqYywgc2l6ZV90IG1heF9s ZW4pDQogaW50IGRoY3AoY29uc3Qgc3RydWN0IGN0eCAqYywgc3RydWN0IGlvdl90YWlsICpkYXRh KQ0KIHsNCiAJY2hhciBtYWNzdHJbRVRIX0FERFJTVFJMRU5dOw0KKwllbnVtIGRoY3Bfb3Zlcmxv YWQgb3ZlcmxvYWQ7DQogCXNpemVfdCBtbGVuLCBkbGVuLCBvcHRfbGVuOw0KIAlzdHJ1Y3QgaW5f YWRkciBtYXNrLCBkc3Q7DQogCXN0cnVjdCBldGhoZHIgZWhfc3RvcmFnZTsNCkBAIC0zMjUsNiAr Mzc2LDcgQEAgaW50IGRoY3AoY29uc3Qgc3RydWN0IGN0eCAqYywgc3RydWN0IGlvdl90YWlsICpk YXRhKQ0KIAljb25zdCBzdHJ1Y3QgdWRwaGRyICp1aDsNCiAJc3RydWN0IG1zZyBtX3N0b3JhZ2U7 DQogCXN0cnVjdCBtc2cgY29uc3QgKm07DQorCWJvb2wgaGFzX2Jvb3RmaWxlOw0KIAlzdHJ1Y3Qg bXNnIHJlcGx5Ow0KIAl1bnNpZ25lZCBpbnQgaTsNCiANCkBAIC00ODYsMTAgKzUzOCwyMiBAQCBp bnQgZGhjcChjb25zdCBzdHJ1Y3QgY3R4ICpjLCBzdHJ1Y3QgaW92X3RhaWwgKmRhdGEpDQogCQl9 DQogCX0NCiANCi0JaWYgKCFjLT5ub19kaGNwX2Ruc19zZWFyY2gpDQotCQlvcHRfc2V0X2Ruc19z ZWFyY2goYywgc2l6ZW9mKG0tPm8pKTsNCisJaWYgKCFjLT5ub19kaGNwX2Ruc19zZWFyY2gpIHsN CisJCS8qIDMgYnl0ZXMgcmVzZXJ2ZWQgZm9yIG9wdGlvbiA1MiAoY29kZSwgbGVuZ3RoLCB2YWx1 ZSkgKi8NCisJCW9wdF9zZXRfZG5zX3NlYXJjaChjLCBPUFRfTUFYIC0gMyk7DQorCX0NCisNCisJ LyogUkZDIDIxMzIsIFNlY3Rpb24gOS41OiBwdXQgYm9vdCBmaWxlIG5hbWUgaW4gdGhlICdmaWxl JyBoZWFkZXINCisJICogZmllbGQuICBTdXBwcmVzcyBvcHRpb24gNjcgZnJvbSB0aGUgb3B0aW9u cyBhcmVhIGFuZCByZXNlcnZlDQorCSAqIHRoZSBmaWxlIGZpZWxkIGZyb20gb3ZlcmxvYWQuDQor CSAqLw0KKwloYXNfYm9vdGZpbGUgPSBvcHRzWzY3XS5zbGVuID4gMCAmJg0KKwkJICAgICAgIChz aXplX3Qpb3B0c1s2N10uc2xlbiA8IHNpemVvZihyZXBseS5maWxlKTsNCisNCisJZGxlbiA9IG9m ZnNldG9mKHN0cnVjdCBtc2csIG8pICsgZmlsbCgmcmVwbHksICZvdmVybG9hZCwgaGFzX2Jvb3Rm aWxlKTsNCiANCi0JZGxlbiA9IG9mZnNldG9mKHN0cnVjdCBtc2csIG8pICsgZmlsbCgmcmVwbHkp Ow0KKwlpZiAoaGFzX2Jvb3RmaWxlKQ0KKwkJbWVtY3B5KHJlcGx5LmZpbGUsIG9wdHNbNjddLnMs IG9wdHNbNjddLnNsZW4pOw0KIA0KIAlpZiAobS0+ZmxhZ3MgJiBGTEFHX0JST0FEQ0FTVCkNCiAJ CWRzdCA9IGluNGFkZHJfYnJvYWRjYXN0Ow0KLS0gDQoyLjU1LjANCg0K