List_Insert

include vmm.inc

mov esi, List ; list handle

mov eax, NewNode ; address of node to insert

mov ecx, Node ; address of node to insert after (0 to attach to head)

VMMcall List_Insert


The List_Insert service inserts a node immediately after the specified node in a list. A virtual device can insert a node into any list that has a matching node size. This can be used, for example, to move a node from one list to another.

Parameters

List

Specifies the handle identifying a list. The handle must have been previously created using the List_Create service.

NewNode

Specifies the address of the node to insert. The node must have been previously created using the List_Allocate service.

Node

Specifies the address of a node in the list. The address must have been previously retrieved using the List_Get_First or List_Get_Next service. If this parameter is zero, the service attaches the new node to the head of the list.

Return Value

This service has no return value.

Comments

This service inserts the new node between the specified node and the node immediately following the specified node. A virtual device can retrieve the address of the new node by calling the List_Get_Next service, and specifying the Node parameter.

Uses

Flags

See Also

List_Attach, List_Attach_Tail