code: func (n *network) initSubnetSandbox(s *subnet, restore bool) error {
  	brName := n.generateBridgeName(s)
  	vxlanName := n.generateVxlanName(s)
  
  	if restore {
  		if err := n.restoreSubnetSandbox(s, brName, vxlanName); err != nil {
  			return err
  		}
  	} else {
  		if err := n.setupSubnetSandbox(s, brName, vxlanName); err != nil {
  			return err
  		}
  	}
  
  	s.vxlanName = vxlanName
  	s.brName = brName
  
  	return nil
  }
docs: // Must be called with the network lock