code: func NewRuntimeAdmitHandler(runtime container.Runtime) (*runtimeAdmitHandler, error) {
  	switch runtime.Type() {
  	case dockerTypeName:
  		v, err := runtime.APIVersion()
  		if err != nil {
  			return nil, fmt.Errorf("failed to get runtime version: %v", err)
  		}
  
  		// only Docker API version >= 1.24 supports sysctls
  		c, err := v.Compare(dockerMinimumAPIVersion)
  		if err != nil {
  			return nil, fmt.Errorf("failed to compare Docker version for sysctl support: %v", err)
  		}
  		if c >= 0 {
  			return &runtimeAdmitHandler{
  				result: lifecycle.PodAdmitResult{
  					Admit: true,
  				},
  			}, nil
  		}
  		return &runtimeAdmitHandler{
  			result: lifecycle.PodAdmitResult{
  				Admit:   false,
  				Reason:  UnsupportedReason,
  				Message: "Docker API version before 1.24 does not support sysctls",
  			},
  		}, nil
  	default:
  		// Return admit for other runtimes.
  		return &runtimeAdmitHandler{
  			result: lifecycle.PodAdmitResult{
  				Admit: true,
  			},
  		}, nil
  	}
  }
docs: // NewRuntimeAdmitHandler returns a sysctlRuntimeAdmitHandler which checks whether
  // the given runtime support sysctls.