From owner-freebsd-hackers Mon May 14 12:24: 5 2001 Delivered-To: freebsd-hackers@freebsd.org Received: from ns.wuppy.net.ru (ns.WUPPY.NET.RU [212.30.189.130]) by hub.freebsd.org (Postfix) with ESMTP id 3620937B42C for ; Mon, 14 May 2001 12:24:02 -0700 (PDT) (envelope-from romanp@unshadow.net) Received: by ns.wuppy.net.ru (Postfix, from userid 66) id A01711DD0; Mon, 14 May 2001 23:23:48 +0400 (MSD) Received: from localhost (localhost [127.0.0.1]) by abyss.unshadow.net (8.12.0.Beta7/8.12.0.Beta5) with ESMTP id f4EJO7au003487 for ; Mon, 14 May 2001 23:24:07 +0400 (MSD) Date: Mon, 14 May 2001 23:24:07 +0400 (MSD) From: "Roman V. Palagin" To: Subject: How to transfer data from netgraph node to user program? Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Hello! I've wrote netgraph node which collects some information from network. Now I want to transfer collected data into user program. I've NGM_XXX_STAT message which initiates data transfer and program which uses libnetgraph to communicate with node. When I send NGM_XXX_STAT message node must starts data transfer but I don't know exactly how much data should be transfered so I can't use synhronous reply. Also, NgSendMsg(..., NGM_XXX_STAT, ...) doesn't return until handler of NGM_XXX_STAT is finished, so I can't use ng_send_msg() in NGM_XXX_STAT handler - nobody will read sended messages and I finished up with "No buffer space available". The question is: how I can initiate smth. like asynchronous reply (so I can get data via NgRecvMsg later in my prgram)? Or I'm going wrong way and should use another scheme for data transfer? Data size ranges from 10Kb to 500Kb. - Roman --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message