From owner-freebsd-tokenring Wed Mar 7 0:54:39 2001 Delivered-To: freebsd-tokenring@freebsd.org Received: from otdel-1.org (Draculina.Otdel-1.ORG [195.230.65.30]) by hub.freebsd.org (Postfix) with ESMTP id 3DE7437B718; Wed, 7 Mar 2001 00:54:33 -0800 (PST) (envelope-from nms@otdel-1.org) Received: by otdel-1.org (CommuniGate Pro PIPE 3.4.1) with PIPE id 840990; Wed, 07 Mar 2001 11:54:32 +0300 Date: Wed, 7 Mar 2001 11:54:29 +0300 From: Nikolai Saoukh To: "Matthew N. Dodd" Cc: freebsd-hardware@FreeBSD.ORG, freebsd-tokenring@FreeBSD.ORG Subject: At least someone alive with commit rights at tokenring niche ;-) Message-ID: <20010307115429.A56256@otdel-1.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from winter@jurai.net on Sat, Mar 03, 2001 at 02:41:43PM -0500 X-Mailer: CommuniGate Pro CLI mailer Sender: owner-freebsd-tokenring@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Sir, could you review and commit the following PRs (all with patches): kern/24073 -- the bug fix for -stable & -current for Olicom OC-3540 & OC-3129. kern/24074 -- the properties of token ring and implementation details must be in different files. kern/22078 -- the driver which take care of option ROMs at ISA i/o address space. Option ROMs can be a problem for pnp cards with i/o space requests like this (see memory range minimum address) Vendor ID IBM0001 (0x01004d24), Serial Number 0x0001a8e8 PnP Version 1.0, Vendor Version 1 *** Small Vendor Tag Detected Device Description: IBM Auto 16/4 Token-Ring ISA Adapter Logical Device ID: IBM0000 0x00004d24 #0 Device supports I/O Range Check Vendor register funcs 00 TAG Start DF Good Configuration I/O Range 0xa20 .. 0xa20, alignment 0x4, len 0x4 [16-bit addr] TAG Start DF Acceptable Configuration I/O Range 0xa24 .. 0xa24, alignment 0x4, len 0x4 [16-bit addr] TAG End DF Memory Range: Writeable Memory Range: Non-cacheable Memory Range: Decode supports range length Memory Range: 16-bit memory only Memory Range: Memory is not shadowable Memory Range: Memory is not an expansion ROM Memory range minimum address: 0xc0000 Memory range maximum address: 0xdc000 Memory range base alignment: 0x4000 Memory range length: 0x4000 Memory Range: Writeable Memory Range: Non-cacheable Memory Range: Decode supports range length Memory Range: 16-bit memory only Memory Range: Memory is not shadowable Memory Range: Memory is an expansion ROM Memory range minimum address: 0xc8000 Memory range maximum address: 0xde000 Memory range base alignment: 0x2000 Memory range length: 0x2000 IRQ: 3 9 10 11 IRQ: High true edge sensitive Device Description: IBM Auto 16/4 Token-Ring ISA Adapter End Tag Successfully got 13 resources, 1 logical fdevs -- card select # 0x0002 CSN IBM0001 (0x01004d24), Serial Number 0x0001a8e8 Logical device #0 IO: 0x0a20 0x0a20 0x0a20 0x0a20 0x0a20 0x0a20 0x0a20 0x0a20 IRQ 9 0 DMA 4 4 IO range check 0x00 activate 0x01 This changes will allow me to sumbit the driver for IBM "tropic" cards. Thanks in advance To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-tokenring" in the body of the message From owner-freebsd-tokenring Thu Mar 8 0:14:30 2001 Delivered-To: freebsd-tokenring@freebsd.org Received: from otdel-1.org (Draculina.Otdel-1.ORG [195.230.65.30]) by hub.freebsd.org (Postfix) with ESMTP id 0074137B719 for ; Thu, 8 Mar 2001 00:14:21 -0800 (PST) (envelope-from nms@otdel-1.org) Received: by otdel-1.org (CommuniGate Pro PIPE 3.4.1) with PIPE id 850296; Thu, 08 Mar 2001 11:14:19 +0300 Date: Thu, 8 Mar 2001 11:14:17 +0300 From: Nikolai Saoukh To: "Matthew N. Dodd" Cc: freebsd-tokenring@freebsd.org Subject: Re: At least someone alive with commit rights at tokenring niche ;-) Message-ID: <20010308111416.A2856@otdel-1.org> References: <20010307115429.A56256@otdel-1.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from winter@jurai.net on Wed, Mar 07, 2001 at 11:41:13PM -0500 X-Mailer: CommuniGate Pro CLI mailer Sender: owner-freebsd-tokenring@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > > kern/24073 -- the bug fix for -stable & -current for Olicom OC-3540 & OC-3129. > Committed. When we see MFC? > > kern/24074 -- the properties of token ring and implementation details > > must be in different files. > I'm not sure I see the need for this one. I think it would be good for any netgraph tokenring node, because now src/sys/net/iso88025.h contains stuff from traditional implementation (references to ifnet, sockaddr, rtentry, strange macro senderr, ...). > > kern/22078 -- the driver which take care of option ROMs at ISA i/o > > address space. Option ROMs can be a problem for pnp > > cards with i/o space requests like this (see memory range minimum > > address) > I'd rewritten part of the identify routine for this since the default > increment was (IIRC) missing some ranges following a found one. I did not found any differences (but cosmetic) against my sources. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-tokenring" in the body of the message From owner-freebsd-tokenring Fri Mar 9 2:38:36 2001 Delivered-To: freebsd-tokenring@freebsd.org Received: from sasami.jurai.net (sasami.jurai.net [64.0.106.45]) by hub.freebsd.org (Postfix) with ESMTP id 91AE437B71B; Fri, 9 Mar 2001 02:38:07 -0800 (PST) (envelope-from winter@jurai.net) Received: from localhost (winter@localhost) by sasami.jurai.net (8.9.3/8.8.7) with ESMTP id FAA56844; Fri, 9 Mar 2001 05:38:06 -0500 (EST) Date: Fri, 9 Mar 2001 05:38:06 -0500 (EST) From: "Matthew N. Dodd" To: freebsd-tokenring@freebsd.org, freebsd-net@freebsd.org Subject: Token Ring and IPX. Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1205283771-984134286=:54019" Sender: owner-freebsd-tokenring@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-1205283771-984134286=:54019 Content-Type: TEXT/PLAIN; charset=US-ASCII I've got a patch against -CURRENT to get our token ring code working against Novell 802.2 style IPX. This patch also may enable IPv6, however additional patches (not included) are required. I also took the time to do some code cleanups. :/ Anyhow, please find attached. My test consisted of mounting a Netware share using NWFS. # mount -a Filesystem 1K-blocks Used Avail Capacity Mounted on ... /SEX_KITTEN:WINTER/SYS 91980 28256 63724 31% /mnt # cd /mnt # du -s . 24642 . # Interested parties will also note that tcpdump is unable to properly decode IPX packets over token ring; I've got a fix for this too... -- | Matthew N. Dodd | '78 Datsun 280Z | '75 Volvo 164E | FreeBSD/NetBSD | | winter@jurai.net | 2 x '84 Volvo 245DL | ix86,sparc,pmax | | http://www.jurai.net/~winter | This Space For Rent | ISO8802.5 4ever | --0-1205283771-984134286=:54019 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="tr-ipx.patch" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="tr-ipx.patch" SW5kZXg6IGlmX2lzbzg4MDI1c3Vici5jDQo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09DQpSQ1MgZmlsZTogL2N2cy9zcmMvc3lzL25ldC9pZl9pc284ODAyNXN1 YnIuYyx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTQNCmRpZmYgLXUgLXIx LjE0IGlmX2lzbzg4MDI1c3Vici5jDQotLS0gaWZfaXNvODgwMjVzdWJyLmMJ MjAwMC8xMS8yNSAwNzozNTozMQkxLjE0DQorKysgaWZfaXNvODgwMjVzdWJy LmMJMjAwMS8wMy8wOSAxMDoxODo0Nw0KQEAgLTQxLDYgKzQxLDggQEANCiAg Ki8NCiANCiAjaW5jbHVkZSAib3B0X2luZXQuaCINCisjaW5jbHVkZSAib3B0 X2luZXQ2LmgiDQorI2luY2x1ZGUgIm9wdF9pcHguaCINCiANCiAjaW5jbHVk ZSA8c3lzL3BhcmFtLmg+DQogI2luY2x1ZGUgPHN5cy9zeXN0bS5oPg0KQEAg LTYwLDExICs2MiwxOSBAQA0KIA0KICNpbmNsdWRlIDxuZXQvaXNvODgwMjUu aD4NCiANCi0jaWZkZWYgSU5FVA0KKyNpZiBkZWZpbmVkKElORVQpIHx8IGRl ZmluZWQoSU5FVDYpDQogI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4NCiAjaW5j bHVkZSA8bmV0aW5ldC9pbl92YXIuaD4NCiAjaW5jbHVkZSA8bmV0aW5ldC9p Zl9ldGhlci5oPg0KICNlbmRpZg0KKyNpZmRlZiBJTkVUNg0KKyNpbmNsdWRl IDxuZXRpbmV0Ni9uZDYuaD4NCisjZW5kaWYNCisNCisjaWZkZWYgSVBYDQor I2luY2x1ZGUgPG5ldGlweC9pcHguaD4NCisjaW5jbHVkZSA8bmV0aXB4L2lw eF9pZi5oPg0KKyNlbmRpZg0KIA0KICNpbmNsdWRlIDxuZXQvYnBmLmg+DQog DQpAQCAtNzgsNiArODgsOCBAQA0KIA0KICNpbmNsdWRlIDxuZXQvaXNvODgw MjUuaD4NCiANCisjZGVmaW5lIElGUDJBQyhJRlApICgoc3RydWN0IGFycGNv bSAqKUlGUCkNCisNCiB2b2lkDQogaXNvODgwMjVfaWZhdHRhY2goc3RydWN0 IGlmbmV0ICppZnApDQogew0KQEAgLTEwMyw2ICsxMTUsMjAgQEANCiAgICAg ICAgIGJjb3B5KCgoc3RydWN0IGFycGNvbSAqKWlmcCktPmFjX2VuYWRkciwg TExBRERSKHNkbCksIGlmcC0+aWZfYWRkcmxlbik7DQogfQ0KIA0KKy8qDQor ICogUGVyZm9ybSBjb21tb24gZHV0aWVzIHdoaWxlIGRldGFjaGluZyBhIFRv a2VuIFJpbmcgaW50ZXJmYWNlDQorICovDQordm9pZA0KK2lzbzg4MDI1X2lm ZGV0YWNoKGlmcCwgYnBmKQ0KKyAgICAgICAgc3RydWN0IGlmbmV0ICppZnA7 DQorICAgICAgICBpbnQgYnBmOw0KK3sNCisJaWYgKGJwZikNCisgICAgICAg ICAgICAgICAgYnBmZGV0YWNoKGlmcCk7DQorCWlmX2RldGFjaChpZnApOw0K K30NCisNCisNCiBpbnQNCiBpc284ODAyNV9pb2N0bChzdHJ1Y3QgaWZuZXQg KmlmcCwgaW50IGNvbW1hbmQsIGNhZGRyX3QgZGF0YSkNCiB7DQpAQCAtMTIx LDYgKzE0NywzMiBAQA0KICAgICAgICAgICAgICAgICAgICAgICAgIGFycF9p ZmluaXQoKHN0cnVjdCBhcnBjb20gKilpZnAsIGlmYSk7DQogICAgICAgICAg ICAgICAgICAgICAgICAgYnJlYWs7DQogI2VuZGlmDQorI2lmZGVmIElQWA0K KyAgICAgICAgICAgICAgICAvKg0KKyAgICAgICAgICAgICAgICAgKiBYWFgg LSBUaGlzIGNvZGUgaXMgcHJvYmFibHkgd3JvbmcNCisgICAgICAgICAgICAg ICAgICovDQorICAgICAgICAgICAgICAgIGNhc2UgQUZfSVBYOg0KKyAgICAg ICAgICAgICAgICAgICAgICAgIHsNCisgICAgICAgICAgICAgICAgICAgICAg ICByZWdpc3RlciBzdHJ1Y3QgaXB4X2FkZHIgKmluYSA9ICYoSUFfU0lQWChp ZmEpLT5zaXB4X2FkZHIpOw0KKyAgICAgICAgICAgICAgICAgICAgICAgIHN0 cnVjdCBhcnBjb20gKmFjID0gSUZQMkFDKGlmcCk7DQorDQorICAgICAgICAg ICAgICAgICAgICAgICAgaWYgKGlweF9udWxsaG9zdCgqaW5hKSkNCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluYS0+eF9ob3N0ID0NCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKHVuaW9uIGlw eF9ob3N0ICopDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgYWMtPmFjX2VuYWRkcjsNCisgICAgICAgICAgICAgICAgICAgICAgICBl bHNlIHsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJjb3B5 KChjYWRkcl90KSBpbmEtPnhfaG9zdC5jX2hvc3QsDQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAoY2FkZHJfdCkgYWMtPmFjX2Vu YWRkciwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHNpemVvZihhYy0+YWNfZW5hZGRyKSk7DQorICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KKw0KKyAgICAgICAgICAgICAgICAgICAgICAgIC8qDQorICAg ICAgICAgICAgICAgICAgICAgICAgICogU2V0IG5ldyBhZGRyZXNzDQorICAg ICAgICAgICAgICAgICAgICAgICAgICovDQorICAgICAgICAgICAgICAgICAg ICAgICAgaWZwLT5pZl9pbml0KGlmcC0+aWZfc29mdGMpOw0KKyAgICAgICAg ICAgICAgICAgICAgICAgIGJyZWFrOw0KKyAgICAgICAgICAgICAgICAgICAg ICAgIH0NCisjZW5kaWYNCiAgICAgICAgICAgICAgICAgZGVmYXVsdDoNCiAg ICAgICAgICAgICAgICAgICAgICAgICBpZnAtPmlmX2luaXQoaWZwLT5pZl9z b2Z0Yyk7DQogICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7DQpAQCAt MTU1LDIzICsyMDcsMjcgQEANCiAgKiBJU084ODAyNSBlbmNhcHN1bGF0aW9u DQogICovDQogaW50DQotaXNvODgwMjVfb3V0cHV0KHN0cnVjdCBpZm5ldCAq aWZwLCBzdHJ1Y3QgbWJ1ZiAqbSwgc3RydWN0IHNvY2thZGRyICpkc3QsIHN0 cnVjdCBydGVudHJ5ICpydDApDQoraXNvODgwMjVfb3V0cHV0KGlmcCwgbSwg ZHN0LCBydDApDQorCXN0cnVjdCBpZm5ldCAqaWZwOw0KKwlzdHJ1Y3QgbWJ1 ZiAqbTsNCisJc3RydWN0IHNvY2thZGRyICpkc3Q7DQorCXN0cnVjdCBydGVu dHJ5ICpydDA7DQogew0KLQlyZWdpc3RlciBzdHJ1Y3QgaXNvODgwMjVfaGVh ZGVyICp0aDsNCisJdV9pbnQxNl90IHR5cGUgPSAwOw0KKyAgICAgICAgaW50 IGxvb3BfY29weSA9IDAsIGVycm9yID0gMCwgcmlmX2xlbiA9IDA7DQorIAl1 X2NoYXIgZWRzdFtJU084ODAyNV9BRERSX0xFTl07DQorCXN0cnVjdCBpc284 ODAyNV9oZWFkZXIgKnRoOw0KIAlzdHJ1Y3QgaXNvODgwMjVfaGVhZGVyIGdl bl90aDsNCi0JcmVnaXN0ZXIgc3RydWN0IGlzbzg4MDI1X3NvY2thZGRyX2Rh dGEgKnNkID0gKHN0cnVjdCBpc284ODAyNV9zb2NrYWRkcl9kYXRhICopZHN0 LT5zYV9kYXRhOw0KLSAgICAgICAgcmVnaXN0ZXIgc3RydWN0IGxsYyAqbDsN Ci0JcmVnaXN0ZXIgc3RydWN0IHNvY2thZGRyX2RsICpzZGwgPSBOVUxMOw0K LSAgICAgICAgaW50IGVycm9yID0gMCwgcmlmX2xlbiA9IDA7DQotIAl1X2No YXIgZWRzdFs2XTsNCi0JcmVnaXN0ZXIgc3RydWN0IHJ0ZW50cnkgKnJ0Ow0K LQlpbnQgbG9vcF9jb3B5ID0gMDsNCisJc3RydWN0IHNvY2thZGRyX2RsICpz ZGwgPSBOVUxMOw0KKwlzdHJ1Y3QgcnRlbnRyeSAqcnQ7DQogCXN0cnVjdCBh cnBjb20gKmFjID0gKHN0cnVjdCBhcnBjb20gKilpZnA7DQogDQogCWlmICgo aWZwLT5pZl9mbGFncyAmIChJRkZfVVB8SUZGX1JVTk5JTkcpKSAhPSAoSUZG X1VQfElGRl9SVU5OSU5HKSkNCiAJCXNlbmRlcnIoRU5FVERPV04pOw0KKwln ZXRtaWNyb3RpbWUoJmlmcC0+aWZfbGFzdGNoYW5nZSk7DQorDQogCXJ0ID0g cnQwOw0KLQlpZiAocnQpIHsNCisJaWYgKHJ0ICE9IE5VTEwpIHsNCiAJCWlm ICgocnQtPnJ0X2ZsYWdzICYgUlRGX1VQKSA9PSAwKSB7DQogCQkJcnQwID0g cnQgPSBydGFsbG9jMShkc3QsIDEsIDBVTCk7DQogCQkJaWYgKHJ0MCkNCkBA IC0yMDQsMzcgKzI2MCw2MSBAQA0KIAkvKiBHZW5lcmF0ZSBhIGdlbmVyaWMg ODAyLjUgaGVhZGVyIGZvciB0aGUgcGFja2V0ICovDQogCWdlbl90aC5hYyA9 IFRSX0FDOw0KIAlnZW5fdGguZmMgPSBUUl9MTENfRlJBTUU7DQotCW1lbWNw eShnZW5fdGguaXNvODgwMjVfc2hvc3QsIGFjLT5hY19lbmFkZHIsIHNpemVv ZihhYy0+YWNfZW5hZGRyKSk7DQorCSh2b2lkKW1lbWNweSgoY2FkZHJfdCln ZW5fdGguaXNvODgwMjVfc2hvc3QsIChjYWRkcl90KWFjLT5hY19lbmFkZHIs DQorCQlzaXplb2YoYWMtPmFjX2VuYWRkcikpOw0KIAlpZiAocmlmX2xlbikg ew0KIAkJZ2VuX3RoLmlzbzg4MDI1X3Nob3N0WzBdIHw9IFRSX1JJSTsNCiAJ CWlmIChyaWZfbGVuID4gMikgew0KIAkJCWdlbl90aC5yY2YgPSBzZGwtPnNk bF9yY2Y7DQotCQkJbWVtY3B5KGdlbl90aC5yZCwgc2RsLT5zZGxfcm91dGUs IHJpZl9sZW4gLSAyKTsNCisJCQkodm9pZCltZW1jcHkoKGNhZGRyX3QpZ2Vu X3RoLnJkLA0KKwkJCQkoY2FkZHJfdClzZGwtPnNkbF9yb3V0ZSwgcmlmX2xl biAtIDIpOw0KIAkJfQ0KIAl9DQogCQ0KLQ0KIAlzd2l0Y2ggKGRzdC0+c2Ff ZmFtaWx5KSB7DQogI2lmZGVmIElORVQNCiAJY2FzZSBBRl9JTkVUOg0KIAkJ aWYgKCFhcnByZXNvbHZlKGFjLCBydCwgbSwgZHN0LCBlZHN0LCBydDApKQ0K IAkJCXJldHVybiAoMCk7CS8qIGlmIG5vdCB5ZXQgcmVzb2x2ZWQgKi8NCi0J CS8qIEFkZCBMTEMgYW5kIFNOQVAgaGVhZGVycyAqLw0KLQkJTV9QUkVQRU5E KG0sIDgsIE1fRE9OVFdBSVQpOw0KLQkJaWYgKG0gPT0gMCkNCi0JCQlzZW5k ZXJyKEVOT0JVRlMpOw0KLQkJbCA9IG10b2QobSwgc3RydWN0IGxsYyAqKTsN Ci0JICAgICAgICBsLT5sbGNfdW4udHlwZV9zbmFwLmV0aGVyX3R5cGUgPSBo dG9ucyhFVEhFUlRZUEVfSVApOw0KLQkgICAgICAgIGwtPmxsY19kc2FwID0g bC0+bGxjX3NzYXAgPSBMTENfU05BUF9MU0FQOw0KLQkJbC0+bGxjX3VuLnR5 cGVfc25hcC5jb250cm9sID0gTExDX1VJOw0KLQkJbC0+bGxjX3VuLnR5cGVf c25hcC5vcmdfY29kZVswXSA9IDB4MDsNCi0JCWwtPmxsY191bi50eXBlX3Nu YXAub3JnX2NvZGVbMV0gPSAweDA7DQotCQlsLT5sbGNfdW4udHlwZV9zbmFw Lm9yZ19jb2RlWzJdID0gMHgwOw0KLQkJbWVtY3B5KGdlbl90aC5pc284ODAy NV9kaG9zdCwgZWRzdCwgc2l6ZW9mKGVkc3QpKTsNCisJCXR5cGUgPSBFVEhF UlRZUEVfSVA7DQorCQlicmVhazsNCisjZW5kaWYNCisjaWZkZWYgSU5FVDYN CisJY2FzZSBBRl9JTkVUNjoNCisJCWlmICghbmQ2X3N0b3JlbGxhZGRyKCZh Yy0+YWNfaWYsIHJ0LCBtLCBkc3QsICh1X2NoYXIgKillZHN0KSkgew0KKwkJ CS8qIHRoaXMgbXVzdCBiZSBpbXBvc3NpYmxlLCBzbyB3ZSBiYXJrICovDQor CQkJcHJpbnRmKCJuZDZfc3RvcmVsbGFkZHIgZmFpbGVkXG4iKTsNCisJCQly ZXR1cm4oMCk7DQorCQl9DQorCQl0eXBlID0gRVRIRVJUWVBFX0lQVjY7DQog CQlicmVhazsNCiAjZW5kaWYNCisjaWZkZWYgSVBYDQorCWNhc2UgQUZfSVBY Og0KKwl7DQorCQl1X2ludDhfdAkqY3A7DQogDQorCQl0eXBlID0gMDsNCisJ CWJjb3B5KChjYWRkcl90KSYoc2F0b2lweF9hZGRyKGRzdCkueF9ob3N0KSwg KGNhZGRyX3QpZWRzdCwNCisJCQlzaXplb2YgKGVkc3QpKTsNCisvKiAmKCgo c3RydWN0IHNvY2thZGRyX2lweCAqKWRzdCktPnNpcHhfYWRkci54X2hvc3Qp LCAqLw0KKw0KKwkJTV9QUkVQRU5EKG0sIDMsIE1fVFJZV0FJVCk7DQorCQlp ZiAobSA9PSAwKQ0KKwkJCXNlbmRlcnIoRU5PQlVGUyk7DQorCQltID0gbV9w dWxsdXAobSwgMyk7DQorCQlpZiAobSA9PSAwKQ0KKwkJCXNlbmRlcnIoRU5P QlVGUyk7DQorCQljcCA9IG10b2QobSwgdV9pbnQ4X3QgKik7DQorCQkqY3Ar KyA9IEVUSEVSVFlQRV9JUFhfODAyMjsNCisJCSpjcCsrID0gRVRIRVJUWVBF X0lQWF84MDIyOw0KKwkJKmNwKysgPSAweDAzOw0KKwl9DQorCWJyZWFrOw0K KyNlbmRpZg0KIAljYXNlIEFGX1VOU1BFQzoNCisJew0KKwkJc3RydWN0IGlz bzg4MDI1X3NvY2thZGRyX2RhdGEgKnNkOw0KIAkJLyoNCiAJCSAqIEZvciBB Rl9VTlNQRUMgc29ja2FkZHIuc2FfZGF0YSBtdXN0IGNvbnRhaW4gYWxsIG9m IHRoZQ0KIAkJICogbWFjIGluZm9ybWF0aW9uIG5lZWRlZCB0byBzZW5kIHRo ZSBwYWNrZXQuICBUaGlzIGFsbG93cw0KQEAgLTI0NywyNiArMzI3LDQ1IEBA DQogCQlzZCA9IChzdHJ1Y3QgaXNvODgwMjVfc29ja2FkZHJfZGF0YSAqKWRz dC0+c2FfZGF0YTsNCiAJCWdlbl90aC5hYyA9IHNkLT5hYzsNCiAJCWdlbl90 aC5mYyA9IHNkLT5mYzsNCi0JCW1lbWNweShnZW5fdGguaXNvODgwMjVfZGhv c3QsIHNkLT5ldGhlcl9kaG9zdCwgc2l6ZW9mKHNkLT5ldGhlcl9kaG9zdCkp Ow0KLQkJbWVtY3B5KGdlbl90aC5pc284ODAyNV9zaG9zdCwgc2QtPmV0aGVy X3Nob3N0LCBzaXplb2Yoc2QtPmV0aGVyX3Nob3N0KSk7DQorCQkodm9pZClt ZW1jcHkoKGNhZGRyX3QpZWRzdCwgKGNhZGRyX3Qpc2QtPmV0aGVyX2Rob3N0 LA0KKwkJCXNpemVvZihzZC0+ZXRoZXJfZGhvc3QpKTsNCisJCSh2b2lkKW1l bWNweSgoY2FkZHJfdClnZW5fdGguaXNvODgwMjVfc2hvc3QsDQorCQkJKGNh ZGRyX3Qpc2QtPmV0aGVyX3Nob3N0LCBzaXplb2Yoc2QtPmV0aGVyX3Nob3N0 KSk7DQogCQlyaWZfbGVuID0gMDsNCiAJCWJyZWFrOw0KLQ0KKwl9DQogCWRl ZmF1bHQ6DQogCQlwcmludGYoIiVzJWQ6IGNhbid0IGhhbmRsZSBhZiVkXG4i LCBpZnAtPmlmX25hbWUsIGlmcC0+aWZfdW5pdCwNCiAJCQlkc3QtPnNhX2Zh bWlseSk7DQogCQlzZW5kZXJyKEVBRk5PU1VQUE9SVCk7DQorCQlicmVhazsN CiAJfQ0KIA0KKwlpZiAodHlwZSAhPSAwKSB7DQorICAgICAgICAJc3RydWN0 IGxsYyAqbDsNCisJCU1fUFJFUEVORChtLCBzaXplb2YgKHN0cnVjdCBsbGMp LCBNX0RPTlRXQUlUKTsNCisJCWlmIChtID09IDApDQorCQkJc2VuZGVycihF Tk9CVUZTKTsNCisJCWwgPSBtdG9kKG0sIHN0cnVjdCBsbGMgKik7DQorCQls LT5sbGNfdW4udHlwZV9zbmFwLmV0aGVyX3R5cGUgPSBodG9ucyh0eXBlKTsN CisJCWwtPmxsY19kc2FwID0gbC0+bGxjX3NzYXAgPSBMTENfU05BUF9MU0FQ Ow0KKwkJbC0+bGxjX3VuLnR5cGVfc25hcC5jb250cm9sID0gTExDX1VJOw0K KwkJbC0+bGxjX3VuLnR5cGVfc25hcC5vcmdfY29kZVswXSA9DQorCQkJbC0+ bGxjX3VuLnR5cGVfc25hcC5vcmdfY29kZVsxXSA9DQorCQkJbC0+bGxjX3Vu LnR5cGVfc25hcC5vcmdfY29kZVsyXSA9IDA7DQorCX0NCisNCiAJLyoNCiAJ ICogQWRkIGxvY2FsIG5ldCBoZWFkZXIuICBJZiBubyBzcGFjZSBpbiBmaXJz dCBtYnVmLA0KIAkgKiBhbGxvY2F0ZSBhbm90aGVyLg0KIAkgKi8NCi0JDQog CU1fUFJFUEVORChtLCBJU084ODAyNV9IRFJfTEVOICsgcmlmX2xlbiwgTV9E T05UV0FJVCk7DQogCWlmIChtID09IDApDQogCQlzZW5kZXJyKEVOT0JVRlMp Ow0KIA0KKwkodm9pZCltZW1jcHkoKGNhZGRyX3QpJmdlbl90aC5pc284ODAy NV9kaG9zdCwgKGNhZGRyX3QpZWRzdCwNCisJCSAgICAgc2l6ZW9mKGVkc3Qp KTsNCisNCiAJLyogQ29weSBhcyBtdWNoIG9mIHRoZSBnZW5lcmljIGhlYWRl ciBhcyBpcyBuZWVkZWQgaW50byB0aGUgbWJ1ZiAqLw0KIAl0aCA9IG10b2Qo bSwgc3RydWN0IGlzbzg4MDI1X2hlYWRlciAqKTsNCiAJbWVtY3B5KHRoLCAm Z2VuX3RoLCBJU084ODAyNV9IRFJfTEVOICsgcmlmX2xlbik7DQpAQCAtMjgw LDIxICszNzksMjIgQEANCiAgICAgICAgICAqIG9uIHRoZSB3aXJlKS4gSG93 ZXZlciwgd2UgZG9uJ3QgZG8gdGhhdCBoZXJlIGZvciBzZWN1cml0eQ0KICAg ICAgICAgICogcmVhc29ucyBhbmQgY29tcGF0aWJpbGl0eSB3aXRoIHRoZSBv cmlnaW5hbCBiZWhhdmlvci4NCiAgICAgICAgICAqLyAgICAgDQotICAgICAg ICBpZiAoKGlmcC0+aWZfZmxhZ3MgJiBJRkZfU0lNUExFWCkgJiYNCi0gICAg ICAgICAgIChsb29wX2NvcHkgIT0gLTEpKSB7DQorICAgICAgICBpZiAoKGlm cC0+aWZfZmxhZ3MgJiBJRkZfU0lNUExFWCkgJiYgKGxvb3BfY29weSAhPSAt MSkpIHsNCiAgICAgICAgICAgICAgICAgaWYgKChtLT5tX2ZsYWdzICYgTV9C Q0FTVCkgfHwgKGxvb3BfY29weSA+IDApKSB7IA0KLSAgICAgICAgICAgICAg ICAgICAgICAgIHN0cnVjdCBtYnVmICpuID0gbV9jb3B5KG0sIDAsIChpbnQp TV9DT1BZQUxMKTsNCi0gICAgICAgICAgICAgICAgICAgICAgICAodm9pZCkg aWZfc2ltbG9vcChpZnAsDQotCQkJICAgIG4sIGRzdC0+c2FfZmFtaWx5LCBJ U084ODAyNV9IRFJfTEVOKTsNCi0gICAgICAgICAgICAgICAgfSBlbHNlIGlm IChiY21wKHRoLT5pc284ODAyNV9kaG9zdCwNCi0gICAgICAgICAgICAgICAg ICAgIHRoLT5pc284ODAyNV9zaG9zdCwgRVRIRVJfQUREUl9MRU4pID09IDAp IHsNCi0gICAgICAgICAgICAgICAgICAgICAgICAodm9pZCkgaWZfc2ltbG9v cChpZnAsDQotCQkJICAgIG0sIGRzdC0+c2FfZmFtaWx5LCBJU084ODAyNV9I RFJfTEVOKTsNCi0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4oMCk7 ICAgICAgLyogWFhYICovDQotICAgICAgICAgICAgICAgIH0gICAgICAgDQor ICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IG1idWYgKm47DQorCQkJ biA9IG1fY29weShtLCAwLCAoaW50KU1fQ09QWUFMTCk7DQorICAgICAgICAg ICAgICAgICAgICAgICAgKHZvaWQpaWZfc2ltbG9vcChpZnAsIG4sIGRzdC0+ c2FfZmFtaWx5LA0KKwkJCQkJICBJU084ODAyNV9IRFJfTEVOKTsNCisgICAg ICAgICAgICAgICAgfSBlbHNlDQorCQkJaWYgKGJjbXAodGgtPmlzbzg4MDI1 X2Rob3N0LCB0aC0+aXNvODgwMjVfc2hvc3QsDQorCQkJCSBFVEhFUl9BRERS X0xFTikgPT0gMCkgew0KKwkJCQkodm9pZClpZl9zaW1sb29wKGlmcCwgbSwg ZHN0LT5zYV9mYW1pbHksDQorCQkJCQkJIElTTzg4MDI1X0hEUl9MRU4pOw0K KyAgICAgICAgICAgICAgICAgICAgICAgIAlyZXR1cm4oMCk7ICAgICAgLyog WFhYICovDQorCQkJfSAgICAgICANCiAgICAgICAgIH0gICAgICANCiANCi0J aWYgKCEgSUZfSEFORE9GRl9BREooJmlmcC0+aWZfc25kLCBtLCBpZnAsIElT Tzg4MDI1X0hEUl9MRU4gKyA4KSkgew0KKwlpZiAoISBJRl9IQU5ET0ZGX0FE SigmaWZwLT5pZl9zbmQsIG0sIGlmcCwgSVNPODgwMjVfSERSX0xFTiArIChz aXplb2Yoc3RydWN0IGxsYykpKSApIHsNCiAJCXByaW50ZigiaXNvODgwMjVf b3V0cHV0OiBwYWNrZXQgZHJvcHBlZCBRRlVMTC5cbiIpOw0KIAkJc2VuZGVy cihFTk9CVUZTKTsNCiAJfQ0KQEAgLTMxMCw5MiArNDEwLDE1MSBAQA0KICAq IElTTyA4ODAyNSBkZS1lbmNhcHN1bGF0aW9uDQogICovDQogdm9pZA0KLWlz bzg4MDI1X2lucHV0KHN0cnVjdCBpZm5ldCAqaWZwLCBzdHJ1Y3QgaXNvODgw MjVfaGVhZGVyICp0aCwgc3RydWN0IG1idWYgKm0pDQoraXNvODgwMjVfaW5w dXQoaWZwLCB0aCwgbSkNCisJc3RydWN0IGlmbmV0ICppZnA7DQorCXN0cnVj dCBpc284ODAyNV9oZWFkZXIgKnRoOw0KKwlzdHJ1Y3QgbWJ1ZiAqbTsNCiB7 DQogCXJlZ2lzdGVyIHN0cnVjdCBpZnF1ZXVlICppbnE7DQotCXVfc2hvcnQg ZXRoZXJfdHlwZTsNCi0JcmVnaXN0ZXIgc3RydWN0IGxsYyAqbCA9IG10b2Qo bSwgc3RydWN0IGxsYyAqKTsNCisJcmVnaXN0ZXIgc3RydWN0IGxsYyAqbDsN CiANCiAJaWYgKChpZnAtPmlmX2ZsYWdzICYgSUZGX1VQKSA9PSAwKSB7DQog CQltX2ZyZWVtKG0pOw0KIAkJcmV0dXJuOw0KIAl9DQogDQotCXN3aXRjaCAo bC0+bGxjX2NvbnRyb2wpIHsNCi0JY2FzZSBMTENfVUk6DQotCQlicmVhazsN Ci0JY2FzZSBMTENfVEVTVDoNCi0JY2FzZSBMTENfVEVTVF9QOg0KLQl7DQot CQlzdHJ1Y3Qgc29ja2FkZHIgc2E7DQotCQlzdHJ1Y3QgYXJwY29tICphYyA9 IChzdHJ1Y3QgYXJwY29tICopaWZwOw0KLQkJc3RydWN0IGlzbzg4MDI1X3Nv Y2thZGRyX2RhdGEgKnRoMjsNCi0JCWludCBpOw0KLQkJdV9jaGFyIGMgPSBs LT5sbGNfZHNhcDsNCi0NCi0JCWlmICh0aC0+aXNvODgwMjVfc2hvc3RbMF0g JiBUUl9SSUkpIHsgLyogWFhYICovDQotCQkJcHJpbnRmKCJpc284ODAyNV9p bnB1dDogZHJvcHBpbmcgc291cmNlIHJvdXRlZCBMTENfVEVTVFxuIik7DQot CQkJbV9mcmVlKG0pOw0KLQkJCXJldHVybjsNCi0JCX0NCi0JCWwtPmxsY19k c2FwID0gbC0+bGxjX3NzYXA7DQotCQlsLT5sbGNfc3NhcCA9IGM7DQotCQlp ZiAobS0+bV9mbGFncyAmIChNX0JDQVNUIHwgTV9NQ0FTVCkpDQotCQkJYmNv cHkoKGNhZGRyX3QpYWMtPmFjX2VuYWRkciwgDQotCQkJICAgICAgKGNhZGRy X3QpdGgtPmlzbzg4MDI1X2Rob3N0LCBJU084ODAyNV9BRERSX0xFTik7DQot CQlzYS5zYV9mYW1pbHkgPSBBRl9VTlNQRUM7DQotCQlzYS5zYV9sZW4gPSBz aXplb2Yoc2EpOw0KLQkJdGgyID0gKHN0cnVjdCBpc284ODAyNV9zb2NrYWRk cl9kYXRhICopc2Euc2FfZGF0YTsNCi0JCWZvciAoaSA9IDA7IGkgPCBJU084 ODAyNV9BRERSX0xFTjsgaSsrKSB7DQotCQkJdGgyLT5ldGhlcl9zaG9zdFtp XSA9IGMgPSB0aC0+aXNvODgwMjVfZGhvc3RbaV07DQotCQkJdGgyLT5ldGhl cl9kaG9zdFtpXSA9IHRoLT5pc284ODAyNV9kaG9zdFtpXSA9IHRoLT5pc284 ODAyNV9zaG9zdFtpXTsNCi0JCQl0aC0+aXNvODgwMjVfc2hvc3RbaV0gPSBj Ow0KLQkJfQ0KLQkJdGgyLT5hYyA9IFRSX0FDOw0KLQkJdGgyLT5mYyA9IFRS X0xMQ19GUkFNRTsNCi0JCWlmcC0+aWZfb3V0cHV0KGlmcCwgbSwgJnNhLCBO VUxMKTsNCi0JCXJldHVybjsNCi0JfQ0KLQlkZWZhdWx0Og0KLQkJcHJpbnRm KCJpc284ODAyNV9pbnB1dDogdW5leHBlY3RlZCBsbGMgY29udHJvbCAweCUw MnhcbiIsIGwtPmxsY19jb250cm9sKTsNCi0JCW1fZnJlZW0obSk7DQotCQly ZXR1cm47DQotCX0NCi0NCi0gICAgICAgIG0tPm1fcGt0aGRyLmxlbiAtPSA4 Ow0KLSAgICAgICAgbS0+bV9sZW4gLT0gODsNCi0gICAgICAgIG0tPm1fZGF0 YSArPSA4OyAvKiBMZW5ndGggb2YgTExDIGhlYWRlciBpbiBvdXIgY2FzZSAq Lw0KLQ0KKwlnZXRtaWNyb3RpbWUoJmlmcC0+aWZfbGFzdGNoYW5nZSk7DQog CWlmcC0+aWZfaWJ5dGVzICs9IG0tPm1fcGt0aGRyLmxlbiArIHNpemVvZigq dGgpOw0KKw0KIAlpZiAodGgtPmlzbzg4MDI1X2Rob3N0WzBdICYgMSkgew0K LQkJaWYgKGJjbXAoKGNhZGRyX3QpZXRoZXJicm9hZGNhc3RhZGRyLCAoY2Fk ZHJfdCl0aC0+aXNvODgwMjVfZGhvc3QsIHNpemVvZihldGhlcmJyb2FkY2Fz dGFkZHIpKSA9PSAwKQ0KKwkJaWYgKGJjbXAoKGNhZGRyX3QpZXRoZXJicm9h ZGNhc3RhZGRyLA0KKwkJCSAoY2FkZHJfdCl0aC0+aXNvODgwMjVfZGhvc3Qs DQorCQkJIHNpemVvZihldGhlcmJyb2FkY2FzdGFkZHIpKSA9PSAwKQ0KIAkJ CW0tPm1fZmxhZ3MgfD0gTV9CQ0FTVDsNCiAJCWVsc2UNCiAJCQltLT5tX2Zs YWdzIHw9IE1fTUNBU1Q7DQotCX0gDQotCWlmIChtLT5tX2ZsYWdzICYgKE1f QkNBU1R8TV9NQ0FTVCkpDQogCQlpZnAtPmlmX2ltY2FzdHMrKzsNCisJfSAN CiANCi0JZXRoZXJfdHlwZSA9IG50b2hzKGwtPmxsY191bi50eXBlX3NuYXAu ZXRoZXJfdHlwZSk7DQorCWwgPSBtdG9kKG0sIHN0cnVjdCBsbGMgKik7DQog DQotCXN3aXRjaCAoZXRoZXJfdHlwZSkgew0KLSNpZmRlZiBJTkVUDQotCWNh c2UgRVRIRVJUWVBFX0lQOg0KKwlzd2l0Y2ggKGwtPmxsY19kc2FwKSB7DQor I2lmZGVmIElQWA0KKwljYXNlIEVUSEVSVFlQRV9JUFhfODAyMjoJLyogVGhh bmtzIGEgYnVuY2ggTm92ZWxsICovDQorCQlpZiAobC0+bGxjX3NzYXAgIT0g RVRIRVJUWVBFX0lQWF84MDIyKQ0KKwkJCWdvdG8gZHJvcGFueXdheTsNCiAJ CXRoLT5pc284ODAyNV9zaG9zdFswXSAmPSB+KFRSX1JJSSk7IA0KLQkJaWYg KGlwZmxvd19mYXN0Zm9yd2FyZChtKSkNCi0JCQlyZXR1cm47DQotCQlzY2hl ZG5ldGlzcihORVRJU1JfSVApOw0KLQkJaW5xID0gJmlwaW50cnE7DQorCQlt X2FkaihtLCAzKTsNCisJCXNjaGVkbmV0aXNyKE5FVElTUl9JUFgpOw0KKwkJ aW5xID0gJmlweGludHJxOw0KIAkJYnJlYWs7DQotDQotCWNhc2UgRVRIRVJU WVBFX0FSUDoNCi0JCXNjaGVkbmV0aXNyKE5FVElTUl9BUlApOw0KLQkJaW5x ID0gJmFycGludHJxOw0KLSAgICAgICAgICAgICAgICBicmVhazsNCiAjZW5k aWYNCisJY2FzZSBMTENfU05BUF9MU0FQOiB7DQorCQl1X2ludDE2X3QgdHlw ZTsNCisJCWlmIChsLT5sbGNfY29udHJvbCAhPSBMTENfVUkgfHwgbC0+bGxj X3NzYXAgIT0gTExDX1NOQVBfTFNBUCkNCisJCQlnb3RvIGRyb3Bhbnl3YXk7 DQorCQlpZiAobC0+bGxjX3VuLnR5cGVfc25hcC5vcmdfY29kZVswXSAhPSAw IHx8DQorCQkgICAgbC0+bGxjX3VuLnR5cGVfc25hcC5vcmdfY29kZVsxXSAh PSAwIHx8DQorCQkgICAgbC0+bGxjX3VuLnR5cGVfc25hcC5vcmdfY29kZVsy XSAhPSAwKQ0KKwkJCWdvdG8gZHJvcGFueXdheTsNCisJCXR5cGUgPSBudG9o cyhsLT5sbGNfdW4udHlwZV9zbmFwLmV0aGVyX3R5cGUpOw0KKwkJbV9hZGoo bSwgc2l6ZW9mKHN0cnVjdCBsbGMpKTsNCisJCXN3aXRjaCAodHlwZSkgew0K KyNpZmRlZiBJTkVUDQorCQljYXNlIEVUSEVSVFlQRV9JUDoNCisJCQl0aC0+ aXNvODgwMjVfc2hvc3RbMF0gJj0gfihUUl9SSUkpOyANCisJCQlpZiAoaXBm bG93X2Zhc3Rmb3J3YXJkKG0pKQ0KKwkJCQlyZXR1cm47DQorCQkJc2NoZWRu ZXRpc3IoTkVUSVNSX0lQKTsNCisJCQlpbnEgPSAmaXBpbnRycTsNCisJCQli cmVhazsNCisNCisJCWNhc2UgRVRIRVJUWVBFX0FSUDoNCisJCQlzY2hlZG5l dGlzcihORVRJU1JfQVJQKTsNCisJCQlpbnEgPSAmYXJwaW50cnE7DQorCQkJ YnJlYWs7DQorI2VuZGlmDQorI2lmZGVmIElQWAkvKiBYWFg6IHRoaXMsIEkg dGhpbmssIGlzIGJvZ3VzLiAqLw0KKwkJY2FzZSBFVEhFUlRZUEVfSVBYOg0K KwkJCXRoLT5pc284ODAyNV9zaG9zdFswXSAmPSB+KFRSX1JJSSk7IA0KKwkJ CXNjaGVkbmV0aXNyKE5FVElTUl9JUFgpOw0KKwkJCWlucSA9ICZpcHhpbnRy cTsNCisJCQlicmVhazsNCisjZW5kaWYNCisjaWZkZWYgSU5FVDYNCisJCWNh c2UgRVRIRVJUWVBFX0lQVjY6DQorCQkJdGgtPmlzbzg4MDI1X3Nob3N0WzBd ICY9IH4oVFJfUklJKTsgDQorCQkJc2NoZWRuZXRpc3IoTkVUSVNSX0lQVjYp Ow0KKwkJCWlucSA9ICZpcDZpbnRycTsNCisJCQlicmVhazsNCisjZW5kaWYN CisJCWRlZmF1bHQ6DQorCQkJcHJpbnRmKCJpc284ODAyNV9pbnB1dDogdW5l eHBlY3RlZCBsbGNfc25hcCBldGhlcl90eXBlICAweCUwMnhcbiIsIHR5cGUp Ow0KKwkJCW1fZnJlZW0obSk7DQorCQkJcmV0dXJuOw0KKwkJfQ0KKwkJYnJl YWs7DQorCX0NCisJY2FzZSBMTENfSVNPX0xTQVA6DQorCQlzd2l0Y2ggKGwt PmxsY19jb250cm9sKSB7DQorCQljYXNlIExMQ19VSToNCisJCQlnb3RvIGRy b3Bhbnl3YXk7DQorCQkJYnJlYWs7DQorICAgICAgICAgICAgICAgIGNhc2Ug TExDX1hJRDoNCisgICAgICAgICAgICAgICAgY2FzZSBMTENfWElEX1A6DQor CQkJaWYobS0+bV9sZW4gPCBJU084ODAyNV9BRERSX0xFTikNCisJCQkJZ290 byBkcm9wYW55d2F5Ow0KKwkJCWwtPmxsY193aW5kb3cgPSAwOw0KKwkJCWwt PmxsY19maWQgPSA5OyAgDQorCQkJbC0+bGxjX2NsYXNzID0gMTsNCisJCQls LT5sbGNfZHNhcCA9IGwtPmxsY19zc2FwID0gMDsNCisJCQkvKiBGYWxsIHRo cm91Z2ggdG8gKi8gIA0KKwkJY2FzZSBMTENfVEVTVDoNCisJCWNhc2UgTExD X1RFU1RfUDoNCisJCXsNCisJCQlzdHJ1Y3Qgc29ja2FkZHIgc2E7DQorCQkJ c3RydWN0IGFycGNvbSAqYWMgPSAoc3RydWN0IGFycGNvbSAqKWlmcDsNCisJ CQlzdHJ1Y3QgaXNvODgwMjVfc29ja2FkZHJfZGF0YSAqdGgyOw0KKwkJCWlu dCBpOw0KKwkJCXVfY2hhciBjID0gbC0+bGxjX2RzYXA7DQorDQorCQkJaWYg KHRoLT5pc284ODAyNV9zaG9zdFswXSAmIFRSX1JJSSkgeyAvKiBYWFggKi8N CisJCQkJcHJpbnRmKCJpc284ODAyNV9pbnB1dDogZHJvcHBpbmcgc291cmNl IHJvdXRlZCBMTENfVEVTVFxuIik7DQorCQkJCW1fZnJlZShtKTsNCisJCQkJ cmV0dXJuOw0KKwkJCX0NCisJCQlsLT5sbGNfZHNhcCA9IGwtPmxsY19zc2Fw Ow0KKwkJCWwtPmxsY19zc2FwID0gYzsNCisJCQlpZiAobS0+bV9mbGFncyAm IChNX0JDQVNUIHwgTV9NQ0FTVCkpDQorCQkJCWJjb3B5KChjYWRkcl90KWFj LT5hY19lbmFkZHIsIA0KKwkJCSAgICAgIAkJKGNhZGRyX3QpdGgtPmlzbzg4 MDI1X2Rob3N0LA0KKwkJCQkJSVNPODgwMjVfQUREUl9MRU4pOw0KKwkJCXNh LnNhX2ZhbWlseSA9IEFGX1VOU1BFQzsNCisJCQlzYS5zYV9sZW4gPSBzaXpl b2Yoc2EpOw0KKwkJCXRoMiA9IChzdHJ1Y3QgaXNvODgwMjVfc29ja2FkZHJf ZGF0YSAqKXNhLnNhX2RhdGE7DQorCQkJZm9yIChpID0gMDsgaSA8IElTTzg4 MDI1X0FERFJfTEVOOyBpKyspIHsNCisJCQkJdGgyLT5ldGhlcl9zaG9zdFtp XSA9IGMgPSB0aC0+aXNvODgwMjVfZGhvc3RbaV07DQorCQkJCXRoMi0+ZXRo ZXJfZGhvc3RbaV0gPSB0aC0+aXNvODgwMjVfZGhvc3RbaV0gPQ0KKwkJCQkJ dGgtPmlzbzg4MDI1X3Nob3N0W2ldOw0KKwkJCQl0aC0+aXNvODgwMjVfc2hv c3RbaV0gPSBjOw0KKwkJCX0NCisJCQl0aDItPmFjID0gVFJfQUM7DQorCQkJ dGgyLT5mYyA9IFRSX0xMQ19GUkFNRTsNCisJCQlpZnAtPmlmX291dHB1dChp ZnAsIG0sICZzYSwgTlVMTCk7DQorCQkJcmV0dXJuOw0KKwkJfQ0KKwkJZGVm YXVsdDoNCisJCQlwcmludGYoImlzbzg4MDI1X2lucHV0OiB1bmV4cGVjdGVk IGxsYyBjb250cm9sIDB4JTAyeFxuIiwgbC0+bGxjX2NvbnRyb2wpOw0KKwkJ CW1fZnJlZW0obSk7DQorCQkJcmV0dXJuOw0KKwkJfQ0KKwkJYnJlYWs7DQog CWRlZmF1bHQ6DQotCSAgICBtX2ZyZWVtKG0pOw0KLQkgICAgcmV0dXJuOw0K KwkJcHJpbnRmKCJpc284ODAyNV9pbnB1dDogdW5rbm93biBkc2FwIDB4JXhc biIsIGwtPmxsY19kc2FwKTsNCisJCWlmcC0+aWZfbm9wcm90bysrOw0KKwlk cm9wYW55d2F5Og0KKwkJbV9mcmVlbShtKTsNCisJCXJldHVybjsNCiAJfQ0K IA0KIAlpZiAoISBJRl9IQU5ET0ZGKGlucSwgbSwgTlVMTCkpDQpJbmRleDog aXNvODgwMjUuaA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6 IC9jdnMvc3JjL3N5cy9uZXQvaXNvODgwMjUuaCx2DQpyZXRyaWV2aW5nIHJl dmlzaW9uIDEuNA0KZGlmZiAtdSAtcjEuNCBpc284ODAyNS5oDQotLS0gaXNv ODgwMjUuaAkyMDAwLzAzLzE5IDIxOjM0OjM3CTEuNA0KKysrIGlzbzg4MDI1 LmgJMjAwMS8wMy8wOCAwMjowMTo0Mw0KQEAgLTc1LDYgKzc1LDggQEANCiAg KiBNaW5pbXVtIGFuZCBtYXhpbXVtIHBhY2tldCBwYXlsb2FkIGxlbmd0aHMu DQogICovDQogI2RlZmluZQlJU084ODAyNV9NSU5fTEVOCTAgDQorI2RlZmlu ZSBJU084ODAyNV9NQVhfTEVOXzQJNDQ2NA0KKyNkZWZpbmUJSVNPODgwMjVf TUFYX0xFTl8xNgkxNzk2MAkNCiAjZGVmaW5lCUlTTzg4MDI1X01BWF9MRU4J MTc5NjAJDQogDQogLyoNCkBAIC04NywxMyArODksMTggQEANCiAgKiBJU08g ODAyLjUgcGh5c2ljYWwgaGVhZGVyDQogICovDQogc3RydWN0IGlzbzg4MDI1 X2hlYWRlciB7DQotCXVfY2hhcglhYzsJCQkJICAgIC8qIGFjY2VzcyBjb250 cm9sIGZpZWxkICovDQotCXVfY2hhcglmYzsJCQkJICAgIC8qIGZyYW1lIGNv bnRyb2wgZmllbGQgKi8NCi0JdV9jaGFyCWlzbzg4MDI1X2Rob3N0W0lTTzg4 MDI1X0FERFJfTEVOXTsgIC8qIGRlc3RpbmF0aW9uIGFkZHJlc3MgKi8NCi0J dV9jaGFyCWlzbzg4MDI1X3Nob3N0W0lTTzg4MDI1X0FERFJfTEVOXTsgIC8q IHNvdXJjZSBhZGRyZXNzICovDQotCXVfc2hvcnQJcmNmOwkJCQkgICAgLyog cm91dGUgY29udHJvbCBmaWVsZCAqLw0KLQl1X3Nob3J0CXJkW1JJRl9NQVhf UkRdOwkJCSAgICAvKiByb3V0aW5nIGRlc2lnbmF0b3JzICovDQotfTsNCisJ dV9pbnQ4X3QJYWM7CQkJCSAgICAvKiBhY2Nlc3MgY29udHJvbCBmaWVsZCAq Lw0KKwl1X2ludDhfdAlmYzsJCQkJICAgIC8qIGZyYW1lIGNvbnRyb2wgZmll bGQgKi8NCisJdV9pbnQ4X3QJaXNvODgwMjVfZGhvc3RbSVNPODgwMjVfQURE Ul9MRU5dOyAgLyogZGVzdGluYXRpb24gYWRkcmVzcyAqLw0KKwl1X2ludDhf dAlpc284ODAyNV9zaG9zdFtJU084ODAyNV9BRERSX0xFTl07ICAvKiBzb3Vy Y2UgYWRkcmVzcyAqLw0KKwl1X2ludDE2X3QJcmNmOwkJCQkgICAgLyogcm91 dGUgY29udHJvbCBmaWVsZCAqLw0KKwl1X2ludDE2X3QJcmRbUklGX01BWF9S RF07CQkJICAgIC8qIHJvdXRpbmcgZGVzaWduYXRvcnMgKi8NCit9IF9fYXR0 cmlidXRlX18gKChfX3BhY2tlZF9fKSk7DQorDQorc3RydWN0IGlzbzg4MDI1 X3JpZiB7DQorCXVfaW50MTZfdAlyY2Y7CQkJCSAgICAvKiByb3V0ZSBjb250 cm9sIGZpZWxkICovDQorCXVfaW50MTZfdAlyZFtSSUZfTUFYX1JEXTsJCQkg ICAgLyogcm91dGluZyBkZXNpZ25hdG9ycyAqLw0KK30gX19hdHRyaWJ1dGVf XyAoKF9fcGFja2VkX18pKTsNCiANCiBzdHJ1Y3QgaXNvODgwMjVfc29ja2Fk ZHJfZGF0YSB7DQogCXVfY2hhciBldGhlcl9kaG9zdFtJU084ODAyNV9BRERS X0xFTl07DQpJbmRleDogaWZfbGxjLmgNCj09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0NClJDUyBmaWxlOiAvY3ZzL3NyYy9zeXMvbmV0L2lmX2xsYy5oLHYNCnJl dHJpZXZpbmcgcmV2aXNpb24gMS43DQpkaWZmIC11IC1yMS43IGlmX2xsYy5o DQotLS0gaWZfbGxjLmgJMTk5OS8wOC8yOCAwMDo0ODoxOAkxLjcNCisrKyBp Zl9sbGMuaAkyMDAxLzAzLzA5IDA5OjE0OjAzDQpAQCAtNDYsNDQgKzQ2LDQ1 IEBADQogICovDQogDQogc3RydWN0IGxsYyB7DQotCXVfY2hhcglsbGNfZHNh cDsNCi0JdV9jaGFyCWxsY19zc2FwOw0KKwl1X2ludDhfdAlsbGNfZHNhcDsN CisJdV9pbnQ4X3QJbGxjX3NzYXA7DQogCXVuaW9uIHsNCiAJICAgIHN0cnVj dCB7DQotCQl1X2NoYXIgY29udHJvbDsNCi0JCXVfY2hhciBmb3JtYXRfaWQ7 DQotCQl1X2NoYXIgY2xhc3M7DQotCQl1X2NoYXIgd2luZG93X3gyOw0KLQkg ICAgfSB0eXBlX3U7DQotCSAgICBzdHJ1Y3Qgew0KLQkJdV9jaGFyIG51bV9z bmRfeDI7DQotCQl1X2NoYXIgbnVtX3Jjdl94MjsNCi0JICAgIH0gdHlwZV9p Ow0KLQkgICAgc3RydWN0IHsNCi0JCXVfY2hhciBjb250cm9sOw0KLQkJdV9j aGFyIG51bV9yY3ZfeDI7DQotCSAgICB9IHR5cGVfczsNCisJCXVfaW50OF90 IGNvbnRyb2w7DQorCQl1X2ludDhfdCBmb3JtYXRfaWQ7DQorCQl1X2ludDhf dCBjbGFzczsNCisJCXVfaW50OF90IHdpbmRvd194MjsNCisJICAgIH0gdHlw ZV91IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsNCisJICAgIHN0cnVj dCB7DQorCQl1X2ludDhfdCBudW1fc25kX3gyOw0KKwkJdV9pbnQ4X3QgbnVt X3Jjdl94MjsNCisJICAgIH0gdHlwZV9pIF9fYXR0cmlidXRlX18oKF9fcGFj a2VkX18pKTsNCisJICAgIHN0cnVjdCB7DQorCQl1X2ludDhfdCBjb250cm9s Ow0KKwkJdV9pbnQ4X3QgbnVtX3Jjdl94MjsNCisJICAgIH0gdHlwZV9zIF9f YXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsNCiAJICAgIHN0cnVjdCB7DQot CSAgICAgICAgdV9jaGFyIGNvbnRyb2w7DQorCSAgICAgICAgdV9pbnQ4X3Qg Y29udHJvbDsNCiAJCXN0cnVjdCBmcm1yaW5mbyB7DQotCQkJdV9jaGFyIHJl al9wZHVfMDsNCi0JCQl1X2NoYXIgcmVqX3BkdV8xOw0KLQkJCXVfY2hhciBm cm1yX2NvbnRyb2w7DQotCQkJdV9jaGFyIGZybXJfY29udHJvbF9leHQ7DQot CQkJdV9jaGFyIGZybXJfY2F1c2U7DQotCQl9IGZybXJpbmZvOw0KLQkgICAg fSB0eXBlX2ZybXI7DQorCQkJdV9pbnQ4X3QgcmVqX3BkdV8wOw0KKwkJCXVf aW50OF90IHJlal9wZHVfMTsNCisJCQl1X2ludDhfdCBmcm1yX2NvbnRyb2w7 DQorCQkJdV9pbnQ4X3QgZnJtcl9jb250cm9sX2V4dDsNCisJCQl1X2ludDhf dCBmcm1yX2NhdXNlOw0KKwkJfSBmcm1yaW5mbyBfX2F0dHJpYnV0ZV9fKChf X3BhY2tlZF9fKSk7DQorCSAgICB9IHR5cGVfZnJtciBfX2F0dHJpYnV0ZV9f KChfX3BhY2tlZF9fKSk7DQogCSAgICBzdHJ1Y3Qgew0KLQkJdV9jaGFyIGNv bnRyb2w7DQotCQl1X2NoYXIgb3JnX2NvZGVbM107DQorCQl1X2ludDhfdCBj b250cm9sOw0KKwkJdV9pbnQ4X3Qgb3JnX2NvZGVbM107DQogCQl1X3Nob3J0 IGV0aGVyX3R5cGU7DQotCSAgICB9IHR5cGVfc25hcDsNCisJICAgIH0gdHlw ZV9zbmFwIF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsNCiAJICAgIHN0 cnVjdCB7DQotCQl1X2NoYXIgY29udHJvbDsNCi0JCXVfY2hhciBjb250cm9s X2V4dDsNCi0JICAgIH0gdHlwZV9yYXc7DQotCX0gbGxjX3VuOw0KLX07DQor CQl1X2ludDhfdCBjb250cm9sOw0KKwkJdV9pbnQ4X3QgY29udHJvbF9leHQ7 DQorCSAgICB9IHR5cGVfcmF3IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18p KTsNCisJfSBsbGNfdW4gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOw0K K30gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOw0KKw0KICNkZWZpbmUg bGxjX2NvbnRyb2wgICAgICAgICAgICBsbGNfdW4udHlwZV91LmNvbnRyb2wN CiAjZGVmaW5lCWxsY19jb250cm9sX2V4dCAgICAgICAgbGxjX3VuLnR5cGVf cmF3LmNvbnRyb2xfZXh0DQogI2RlZmluZSBsbGNfZmlkICAgICAgICAgICAg ICAgIGxsY191bi50eXBlX3UuZm9ybWF0X2lkDQpAQCAtMTAyLDYgKzEwMyw4 IEBADQogI2RlZmluZSBMTENfSVNGUkFNRUxFTiA0DQogI2RlZmluZSBMTENf VUZSQU1FTEVOICAzDQogI2RlZmluZSBMTENfRlJNUkxFTiAgICA3DQorI2Rl ZmluZSBMTENfU05BUEZSQU1FTEVOIDgNCisNCiANCiAvKg0KICAqIFVubnVt YmVyZWQgTExDIGZvcm1hdCBjb21tYW5kcw0K --0-1205283771-984134286=:54019-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-tokenring" in the body of the message From owner-freebsd-tokenring Fri Mar 9 4:12:38 2001 Delivered-To: freebsd-tokenring@freebsd.org Received: from relay.butya.kz (butya-gw.butya.kz [212.154.129.94]) by hub.freebsd.org (Postfix) with ESMTP id C9C4E37B718; Fri, 9 Mar 2001 04:12:33 -0800 (PST) (envelope-from bp@butya.kz) Received: by relay.butya.kz (Postfix, from userid 1000) id C33D428E32; Fri, 9 Mar 2001 18:12:29 +0600 (ALMT) Received: from localhost (localhost [127.0.0.1]) by relay.butya.kz (Postfix) with ESMTP id B510328DD7; Fri, 9 Mar 2001 18:12:29 +0600 (ALMT) Date: Fri, 9 Mar 2001 18:12:29 +0600 (ALMT) From: Boris Popov To: "Matthew N. Dodd" Cc: freebsd-tokenring@freebsd.org, freebsd-net@freebsd.org Subject: Re: Token Ring and IPX. In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-tokenring@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Fri, 9 Mar 2001, Matthew N. Dodd wrote: > I've got a patch against -CURRENT to get our token ring code working > against Novell 802.2 style IPX. Whee, thanks! -- Boris Popov http://www.butya.kz/~bp/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-tokenring" in the body of the message