
  PROCEDURE [INLINE] nlp$cc_incr_connection_count
    (    device_id: nlt$device_identifier);

?? PUSH (LISTEXT := ON) ??
{
{  PURPOSE:
{     The purpose of this request is to increment the count of
{   active connections for the specified device.
{
{   NOTE: This request is intended for use solely by the Channel
{         Connection Entity.
{

    VAR
      active_connection_count_p: ^integer,
      actual_count: integer,
      new_count: integer,
      old_count: integer,
      result: osc$cs_successful .. osc$cs_variable_locked;

    old_count := 0;
    new_count := 1;
    active_connection_count_p := ^nlv$sm_devices.list^ [device_id].active_connection_count;
    REPEAT
      #COMPARE_SWAP (active_connection_count_p^, old_count, new_count, actual_count, result);
      IF result = osc$cs_failed THEN
        old_count := actual_count;
        new_count := old_count + 1;
      IFEND;
    UNTIL result = osc$cs_successful;

  PROCEND nlp$cc_incr_connection_count;

*copyc ost$signature_lock_status
*copyc nlv$sm_devices
?? POP ??

