github.com/sijibomii/docker@v0.0.0-20231230191044-5cf6ca554647/image/compat_windows.go (about)

     1  package image
     2  
     3  import (
     4  	"fmt"
     5  
     6  	"github.com/docker/docker/pkg/system"
     7  )
     8  
     9  // Windows OS features
    10  const (
    11  	FeatureWin32k = "win32k" // The kernel windowing stack is required
    12  )
    13  
    14  func getOSVersion() string {
    15  	v := system.GetOSVersion()
    16  	return fmt.Sprintf("%d.%d.%d", v.MajorVersion, v.MinorVersion, v.Build)
    17  }
    18  
    19  func hasOSFeature(f string) bool {
    20  	switch f {
    21  	case FeatureWin32k:
    22  		return system.HasWin32KSupport()
    23  	default:
    24  		// Unrecognized feature.
    25  		return false
    26  	}
    27  }