code: def nl_wait_for_ack(sk):
      
      cb = nl_cb_clone(sk.s_cb)
      nl_cb_set(cb, NL_CB_ACK, NL_CB_CUSTOM, lambda *_: NL_STOP, None)
      return int(nl_recvmsgs(sk, cb))
docs: Wait for ACK.
  
      https://github.com/thom311/libnl/blob/libnl3_2_25/lib/nl.c#L1058
  
      Waits until an ACK is received for the latest not yet acknowledged Netlink message.
  
      Positional arguments:
      sk -- Netlink socket (nl_sock class instance).
  
      Returns:
      Number of received messages or a negative error code from nl_recvmsgs().