code: func (i *Handle) doGetServicesCmd(svc *Service) ([]*Service, error) {
  	var res []*Service
  
  	msgs, err := i.doCmdwithResponse(svc, nil, ipvsCmdGetService)
  	if err != nil {
  		return nil, err
  	}
  
  	for _, msg := range msgs {
  		srv, err := i.parseService(msg)
  		if err != nil {
  			return nil, err
  		}
  		res = append(res, srv)
  	}
  
  	return res, nil
  }
docs: // doGetServicesCmd a wrapper which could be used commonly for both GetServices() and GetService(*Service)