freebsd-dev/sys/netncp
bmilekic fd2da3a771 Implement m_getm() which will perform an "all or nothing" mbuf + cluster
allocation, as required.

If m_getm() receives NULL as a first argument, then it allocates `len'
(second argument) bytes worth of mbufs + clusters and returns the chain
only if it was able to allocate everything.
If the first argument is non-NULL, then it should be an existing mbuf
chain (e.g. pre-allocated mbuf sitting on a ring, on some list, etc.) and
so it will allocate `len' bytes worth of clusters and mbufs, as needed,
and append them to the tail of the passed in chain, only if it was able
to allocate everything requested.

If allocation fails, only what was allocated by the routine will be freed,
and NULL will be returned.

Also, get rid of existing m_getm() in netncp code and replace calls to it
to calls to this new generic code.

Heavily Reviewed by: bp
2001-02-14 05:13:04 +00:00
..
ncp_cfg.h Initial import of ncp library sources. 1999-10-12 11:56:41 +00:00
ncp_conn.c Mechanical change to use <sys/queue.h> macro API instead of 2001-02-04 13:13:25 +00:00
ncp_conn.h Convert lockmgr locks from using simple locks to using mutexes. 2000-10-04 01:29:17 +00:00
ncp_crypt.c Remove unneeded #include <sys/proc.h> lines. 2000-10-29 13:57:19 +00:00
ncp_file.h Add support for C++ in the headers. Some style cleanup. 1999-10-31 03:39:03 +00:00
ncp_lib.h Common option '-N' do not require an argument. 2001-01-07 07:03:59 +00:00
ncp_login.c Remove unnessary includes. 1999-10-12 10:37:00 +00:00
ncp_mod.c nwfs depends on ncp 2000-04-29 13:34:28 +00:00
ncp_ncp.c Add missing initialization which could lead to kernel panic. 1999-10-29 10:21:07 +00:00
ncp_ncp.h Forward declare some structs so that this header is more self-suifficent. 2000-01-14 19:54:42 +00:00
ncp_nls.c Enable '=' character in the filename. 2000-01-29 02:10:37 +00:00
ncp_nls.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ncp_rcfile.h Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
ncp_rq.c Implement m_getm() which will perform an "all or nothing" mbuf + cluster 2001-02-14 05:13:04 +00:00
ncp_rq.h Forward declare some structs so that this header is more self-suifficent. 2000-01-14 19:54:42 +00:00
ncp_sock.c * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
ncp_sock.h Forward declare some structs so that this header is more self-suifficent. 2000-01-14 19:54:42 +00:00
ncp_subr.c Mechanical change to use <sys/queue.h> macro API instead of 2001-02-04 13:13:25 +00:00
ncp_subr.h Forward declare some structs so that this header is more self-suifficent. 2000-01-14 19:54:42 +00:00
ncp_user.h Update to version 1.3.4 of ncplib. Cleanup header files. 1999-12-12 05:50:07 +00:00
ncp.h Update to version 1.3.4 of ncplib. Cleanup header files. 1999-12-12 05:50:07 +00:00
nwerror.h Update to version 1.3.4 of ncplib. Cleanup header files. 1999-12-12 05:50:07 +00:00