Sync from SUSE:SLFO:Main cni revision 2f7877d974ac4e17d77ef611d670faf0
This commit is contained in:
commit
a9edbe3f83
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
167
0001-fix-upstream-CVE-2021-38561.patch
Normal file
167
0001-fix-upstream-CVE-2021-38561.patch
Normal file
@ -0,0 +1,167 @@
|
||||
From 383b2e75a7a4198c42f8f87833eefb772868a56f Mon Sep 17 00:00:00 2001
|
||||
From: Russ Cox <rsc@golang.org>
|
||||
Date: Mon, 9 Aug 2021 15:09:12 -0400
|
||||
Subject: [PATCH] language: turn parsing panics into ErrSyntax
|
||||
|
||||
We keep finding new panics in the language parser.
|
||||
Limit the damage by reporting those inputs as syntax errors.
|
||||
|
||||
Change-Id: I786fe127c3df7e4c8e042d15095d3acf3c4e4a50
|
||||
Reviewed-on: https://go-review.googlesource.com/c/text/+/340830
|
||||
Trust: Russ Cox <rsc@golang.org>
|
||||
Run-TryBot: Russ Cox <rsc@golang.org>
|
||||
TryBot-Result: Go Bot <gobot@golang.org>
|
||||
Reviewed-by: Roland Shoemaker <roland@golang.org>
|
||||
---
|
||||
internal/language/language.go | 43 +++++++++++++++++++++++++++++++----
|
||||
internal/language/parse.go | 7 ++++++
|
||||
language/parse.go | 22 ++++++++++++++++++
|
||||
3 files changed, 68 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/internal/language/language.go b/internal/language/language.go
|
||||
index f41aedcfc..6105bc7fa 100644
|
||||
--- a/internal/language/language.go
|
||||
+++ b/internal/language/language.go
|
||||
@@ -251,6 +251,13 @@ func (t Tag) Parent() Tag {
|
||||
|
||||
// ParseExtension parses s as an extension and returns it on success.
|
||||
func ParseExtension(s string) (ext string, err error) {
|
||||
+ defer func() {
|
||||
+ if recover() != nil {
|
||||
+ ext = ""
|
||||
+ err = ErrSyntax
|
||||
+ }
|
||||
+ }()
|
||||
+
|
||||
scan := makeScannerString(s)
|
||||
var end int
|
||||
if n := len(scan.token); n != 1 {
|
||||
@@ -461,7 +468,14 @@ func (t Tag) findTypeForKey(key string) (start, sep, end int, hasExt bool) {
|
||||
// ParseBase parses a 2- or 3-letter ISO 639 code.
|
||||
// It returns a ValueError if s is a well-formed but unknown language identifier
|
||||
// or another error if another error occurred.
|
||||
-func ParseBase(s string) (Language, error) {
|
||||
+func ParseBase(s string) (l Language, err error) {
|
||||
+ defer func() {
|
||||
+ if recover() != nil {
|
||||
+ l = 0
|
||||
+ err = ErrSyntax
|
||||
+ }
|
||||
+ }()
|
||||
+
|
||||
if n := len(s); n < 2 || 3 < n {
|
||||
return 0, ErrSyntax
|
||||
}
|
||||
@@ -472,7 +486,14 @@ func ParseBase(s string) (Language, error) {
|
||||
// ParseScript parses a 4-letter ISO 15924 code.
|
||||
// It returns a ValueError if s is a well-formed but unknown script identifier
|
||||
// or another error if another error occurred.
|
||||
-func ParseScript(s string) (Script, error) {
|
||||
+func ParseScript(s string) (scr Script, err error) {
|
||||
+ defer func() {
|
||||
+ if recover() != nil {
|
||||
+ scr = 0
|
||||
+ err = ErrSyntax
|
||||
+ }
|
||||
+ }()
|
||||
+
|
||||
if len(s) != 4 {
|
||||
return 0, ErrSyntax
|
||||
}
|
||||
@@ -489,7 +510,14 @@ func EncodeM49(r int) (Region, error) {
|
||||
// ParseRegion parses a 2- or 3-letter ISO 3166-1 or a UN M.49 code.
|
||||
// It returns a ValueError if s is a well-formed but unknown region identifier
|
||||
// or another error if another error occurred.
|
||||
-func ParseRegion(s string) (Region, error) {
|
||||
+func ParseRegion(s string) (r Region, err error) {
|
||||
+ defer func() {
|
||||
+ if recover() != nil {
|
||||
+ r = 0
|
||||
+ err = ErrSyntax
|
||||
+ }
|
||||
+ }()
|
||||
+
|
||||
if n := len(s); n < 2 || 3 < n {
|
||||
return 0, ErrSyntax
|
||||
}
|
||||
@@ -578,7 +606,14 @@ type Variant struct {
|
||||
|
||||
// ParseVariant parses and returns a Variant. An error is returned if s is not
|
||||
// a valid variant.
|
||||
-func ParseVariant(s string) (Variant, error) {
|
||||
+func ParseVariant(s string) (v Variant, err error) {
|
||||
+ defer func() {
|
||||
+ if recover() != nil {
|
||||
+ v = Variant{}
|
||||
+ err = ErrSyntax
|
||||
+ }
|
||||
+ }()
|
||||
+
|
||||
s = strings.ToLower(s)
|
||||
if id, ok := variantIndex[s]; ok {
|
||||
return Variant{id, s}, nil
|
||||
diff --git a/internal/language/parse.go b/internal/language/parse.go
|
||||
index c696fd0bd..47ee0fed1 100644
|
||||
--- a/internal/language/parse.go
|
||||
+++ b/internal/language/parse.go
|
||||
@@ -232,6 +232,13 @@ func Parse(s string) (t Tag, err error) {
|
||||
if s == "" {
|
||||
return Und, ErrSyntax
|
||||
}
|
||||
+ defer func() {
|
||||
+ if recover() != nil {
|
||||
+ t = Und
|
||||
+ err = ErrSyntax
|
||||
+ return
|
||||
+ }
|
||||
+ }()
|
||||
if len(s) <= maxAltTaglen {
|
||||
b := [maxAltTaglen]byte{}
|
||||
for i, c := range s {
|
||||
diff --git a/language/parse.go b/language/parse.go
|
||||
index 11acfd885..59b041008 100644
|
||||
--- a/language/parse.go
|
||||
+++ b/language/parse.go
|
||||
@@ -43,6 +43,13 @@ func Parse(s string) (t Tag, err error) {
|
||||
// https://www.unicode.org/reports/tr35/#Unicode_Language_and_Locale_Identifiers.
|
||||
// The resulting tag is canonicalized using the canonicalization type c.
|
||||
func (c CanonType) Parse(s string) (t Tag, err error) {
|
||||
+ defer func() {
|
||||
+ if recover() != nil {
|
||||
+ t = Tag{}
|
||||
+ err = language.ErrSyntax
|
||||
+ }
|
||||
+ }()
|
||||
+
|
||||
tt, err := language.Parse(s)
|
||||
if err != nil {
|
||||
return makeTag(tt), err
|
||||
@@ -79,6 +86,13 @@ func Compose(part ...interface{}) (t Tag, err error) {
|
||||
// tag is returned after canonicalizing using CanonType c. If one or more errors
|
||||
// are encountered, one of the errors is returned.
|
||||
func (c CanonType) Compose(part ...interface{}) (t Tag, err error) {
|
||||
+ defer func() {
|
||||
+ if recover() != nil {
|
||||
+ t = Tag{}
|
||||
+ err = language.ErrSyntax
|
||||
+ }
|
||||
+ }()
|
||||
+
|
||||
var b language.Builder
|
||||
if err = update(&b, part...); err != nil {
|
||||
return und, err
|
||||
@@ -142,6 +156,14 @@ var errInvalidWeight = errors.New("ParseAcceptLanguage: invalid weight")
|
||||
// Tags with a weight of zero will be dropped. An error will be returned if the
|
||||
// input could not be parsed.
|
||||
func ParseAcceptLanguage(s string) (tag []Tag, q []float32, err error) {
|
||||
+ defer func() {
|
||||
+ if recover() != nil {
|
||||
+ tag = nil
|
||||
+ q = nil
|
||||
+ err = language.ErrSyntax
|
||||
+ }
|
||||
+ }()
|
||||
+
|
||||
var entry string
|
||||
for s != "" {
|
||||
if entry, s = split(s, ','); entry == "" {
|
4
99-loopback.conf
Normal file
4
99-loopback.conf
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"cniVersion": "0.4.0",
|
||||
"type": "loopback"
|
||||
}
|
20
_service
Normal file
20
_service
Normal file
@ -0,0 +1,20 @@
|
||||
<services>
|
||||
<service name="tar_scm" mode="disabled">
|
||||
<param name="url">https://github.com/containernetworking/cni.git</param>
|
||||
<param name="scm">git</param>
|
||||
<param name="filename">cni</param>
|
||||
<param name="exclude">.git</param>
|
||||
<param name="versionformat">@PARENT_TAG@</param>
|
||||
<param name="revision">v1.1.2</param>
|
||||
<param name="versionrewrite-pattern">v(.*)</param>
|
||||
<param name="changesgenerate">enable</param>
|
||||
</service>
|
||||
<service name="recompress" mode="disabled">
|
||||
<param name="file">cni-*.tar</param>
|
||||
<param name="compression">gz</param>
|
||||
</service>
|
||||
<service name="set_version" mode="disabled">
|
||||
<param name="basename">cni</param>
|
||||
</service>
|
||||
<service name="go_modules" mode="disabled"/>
|
||||
</services>
|
4
_servicedata
Normal file
4
_servicedata
Normal file
@ -0,0 +1,4 @@
|
||||
<servicedata>
|
||||
<service name="tar_scm">
|
||||
<param name="url">https://github.com/containernetworking/cni.git</param>
|
||||
<param name="changesrevision">3363d143688bb83ca18489ac8b9dc204c1d49c4a</param></service></servicedata>
|
BIN
cni-1.1.2.tar.gz
(Stored with Git LFS)
Normal file
BIN
cni-1.1.2.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
310
cni.changes
Normal file
310
cni.changes
Normal file
@ -0,0 +1,310 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 9 09:40:04 UTC 2023 - Dan Čermák <dcermak@suse.com>
|
||||
|
||||
- Bump BuildRequired golang version to >= 1.21, fixes bsc#1216006
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 30 11:08:28 UTC 2022 - Andrea Manzini <andrea.manzini@suse.com>
|
||||
|
||||
- added patch 0001-fix-upstream-CVE-2021-38561.patch for [bsc#1206711]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 29 14:06:02 UTC 2022 - andrea.manzini@suse.com
|
||||
|
||||
- Update to version 1.1.2:
|
||||
* Fix successfully unmarshalled nil raw result
|
||||
* spec: fix format
|
||||
* invoke: if Result CNIVersion is empty use netconf CNIVersion
|
||||
* cnitool: address golint error
|
||||
* libcni: handle empty version when parsing version
|
||||
* Switch to ginkgo/v2
|
||||
* add security heading to README
|
||||
* Maintainers: add Mike Zappa
|
||||
* introduce hybridnet to thrid-party plugins
|
||||
* Fix incorrect pointer inputs to `json.Unmarshal`
|
||||
* fix version of cni v0.8.1 does not have a directory of github.com/containernetworking/cni/pkg/types/100 refer to https://github.com/containernetworking/cni/tree/v0.8.1/pkg/types
|
||||
* Spec: Container runtime shall tear down namespaces
|
||||
* Update README.md
|
||||
* Updated README.md to include Netlox loxilight CNI
|
||||
* documentation: update Multus link in README.md to point to the k8snetworkplumbingwg repository
|
||||
* [exec-plugins]: support plugin lists
|
||||
* skel: remove superfluous err nil check in (*dispatcher).pluginMain
|
||||
* Remove Gabe Rosenhouse as maintainer
|
||||
* skel: print out CNI versions supported in help text.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 10 14:06:19 UTC 2022 - Andrea Manzini <andrea.manzini@suse.com>
|
||||
|
||||
- Update to version 1.1.2:
|
||||
* spec: fix format
|
||||
* libcni: handle empty version when parsing version
|
||||
* [exec-plugins]: support plugin lists
|
||||
|
||||
This is a minor update to the CNI libraries and tooling.
|
||||
This does not bump the protocol / spec version, which remains at v1.0.0
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 26 11:05:40 UTC 2022 - Enrico Belleri <idesmi@protonmail.com>
|
||||
|
||||
- Update to version v1.0.1:
|
||||
* Rewritten spec
|
||||
+ non-List configurations are removed
|
||||
+ the version field in the interfaces array was redundant and
|
||||
is removed
|
||||
* libcni improvements
|
||||
- Employ RPM macros.go where feasible
|
||||
- Use vendor tarball
|
||||
- Remove ./build.sh
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 31 10:38:40 UTC 2021 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
|
||||
|
||||
- Update to version 0.8.1:
|
||||
* This is a security release that fixes a single bug: bsc#1181961 aka CVE-2021-20206
|
||||
- Tighten up plugin-finding logic (#811).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Apr 24 09:19:04 UTC 2021 - Dirk Müller <dmueller@suse.com>
|
||||
|
||||
- use buildmode=pie (cnitool is installed into sbindir)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 16 05:16:27 UTC 2021 - Jeff Kowalczyk <jkowalczyk@suse.com>
|
||||
|
||||
- Set GO111MODULE=auto to build with go1.16+
|
||||
* Default changed to GO111MODULE=on in go1.16
|
||||
* Set temporarily until using upstream release with go.mod
|
||||
* Drop BuildRequires: golang-packaging not currently using macros
|
||||
* Add BuildRequires: golang(API) >= 1.13 recommended dependency expression
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 1 12:47:37 UTC 2020 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
|
||||
|
||||
- Update to version 0.8.0:
|
||||
* Specification and Conventions changes
|
||||
+ docs: add ips and mac to well-known capabilities
|
||||
+ add interface name validation
|
||||
+ Add GUID to well known Capabilities
|
||||
+ Add DeviceID attribute to RuntimeConfig
|
||||
+ Typo fixes for infiniband GUID
|
||||
+ Fix linting issues in docs, add headers to json example, update errors into table
|
||||
* Documentation changes
|
||||
+ Update cnitool docs
|
||||
+ Remove extra ',' chars which makes conflist examples invalid.
|
||||
* libcni changes
|
||||
+ Remove Result.String method
|
||||
+ libcni: add config caching [v2]
|
||||
+ clean up : fix staticcheck warnings
|
||||
+ libcni: add InitCNIConfigWithCacheDir() and deprecate RuntimeConfig.CacheDir
|
||||
+ skel: clean up errors in skel and add some well-known error codes
|
||||
+ libcni: find plugin in exec
|
||||
+ validate containerID and networkName
|
||||
+ skel: remove needless functions and types
|
||||
+ libcni: also cache IfName
|
||||
+ libcni: fix cache file 'result' key name
|
||||
+ Bump Go version to 1.13
|
||||
+ When CNI version isn't supplied in config, use default.
|
||||
+ intercept netplugin std error
|
||||
+ invoke: capture and return stderr if plugin exits unexpectedly
|
||||
+ Retry exec commands on text file busy
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 13 10:32:53 UTC 2020 - Sascha Grunert <sgrunert@suse.com>
|
||||
|
||||
- Set correct CNI version for 99-loopback.conf
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 16 07:36:57 UTC 2019 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
|
||||
|
||||
- Update to version 0.7.1 (bsc#1160460):
|
||||
* Library changes:
|
||||
+ invoke : ensure custom envs of CNIArgs are prepended to process envs
|
||||
+ add GetNetworkListCachedResult to CNI interface
|
||||
+ delegate : allow delegation funcs override CNI_COMMAND env automatically in heritance
|
||||
* Documentation & Convention changes:
|
||||
+ Update cnitool documentation for spec v0.4.0
|
||||
+ Add cni-route-override to CNI plugin list
|
||||
* Build and test changes:
|
||||
+ Release: bump go to v1.12
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri May 17 12:26:06 UTC 2019 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
|
||||
|
||||
- Update to version 0.7.0:
|
||||
* Spec changes:
|
||||
+ Use more RFC2119 style language in specification (must, should...)
|
||||
+ add notes about ADD/DEL ordering
|
||||
+ Make the container ID required and unique.
|
||||
+ remove the version parameter from ADD and DEL commands.
|
||||
+ Network interface name matters
|
||||
+ be explicit about optional and required structure members
|
||||
+ add CHECK method
|
||||
+ Add a well-known error for "try again"
|
||||
+ SPEC.md: clarify meaning of 'routes'
|
||||
* Library changes:
|
||||
+ pkg/types: Makes IPAM concrete type
|
||||
+ libcni: return error if Type is empty
|
||||
+ skel: VERSION shouldn't block on stdin
|
||||
+ non-pointer instances of types.Route now correctly marshal to JSON
|
||||
+ libcni: add ValidateNetwork and ValidateNetworkList functions
|
||||
+ pkg/skel: return error if JSON config has no network name
|
||||
+ skel: add support for plugin version string
|
||||
+ libcni: make exec handling an interface for better downstream testing
|
||||
+ libcni: api now takes a Context to allow operations to be timed out or cancelled
|
||||
+ types/version: add helper to parse PrevResult
|
||||
+ skel: only print about message, not errors
|
||||
+ skel,invoke,libcni: implementation of CHECK method
|
||||
+ cnitool: Honor interface name supplied via CNI_IFNAME environment variable.
|
||||
+ cnitool: validate correct number of args
|
||||
+ Don't copy gw from IP4.Gateway to Route.GW When converting from 0.2.0
|
||||
+ add PrintTo method to Result interface
|
||||
+ Return a better error when the plugin returns none
|
||||
- Install sleep binary into CNI plugin directory
|
||||
- Restore build.sh script which was removed upstream
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 5 08:21:05 UTC 2018 - dcassany@suse.com
|
||||
|
||||
- Refactor %license usage to a simpler form
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 4 11:27:31 UTC 2018 - dcassany@suse.com
|
||||
|
||||
- Make use of %license macro
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 4 11:32:32 UTC 2018 - jmassaguerpla@suse.com
|
||||
|
||||
- Remove creating subvolumes. This should be in another package (kubernetes-kubelet)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 29 11:12:16 UTC 2018 - kmacinnes@suse.com
|
||||
|
||||
- Use full/absolute path for mksubvolume
|
||||
- Change snapper Requires to a Requires(post)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 18 14:46:16 UTC 2018 - kmacinnes@suse.com
|
||||
|
||||
- Add snapper as a requirement, to provide mksubvolume
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 15 16:58:15 UTC 2018 - alvaro.saurin@suse.com
|
||||
|
||||
- Make /var/lib/cni writable
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 19 13:04:22 UTC 2017 - alvaro.saurin@suse.com
|
||||
|
||||
- Remove the dependency with the cni-plugins
|
||||
- Recommend the cni-plugins
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 28 15:15:11 UTC 2017 - opensuse-packaging@opensuse.org
|
||||
|
||||
- Update to version 0.6.0:
|
||||
* Conventions: add convention around chaining interfaces
|
||||
* pkg/types: safer typecasting for TextUnmarshaler when loading args
|
||||
* pkg/types: modify LoadArgs to return a named error when an unmarshalable condition is detected
|
||||
* Update note about next Community Sync, 2017-06-21
|
||||
* types: fix marshalling of omitted "interfaces" key in IPConfig JSON
|
||||
* Update and document release process
|
||||
* scripts/release.sh: Add in s390x architecture
|
||||
* cnitool: add support for CNI_ARGS
|
||||
* README plugins list: add Linen CNI plugin
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 10 12:23:00 UTC 2017 - opensuse-packaging@opensuse.org
|
||||
|
||||
- Update to version 0.5.2:
|
||||
* Rename build script to avoid conflict with bazel
|
||||
* Enable s390x build
|
||||
* Update community sync detail
|
||||
* Added entry for CNI-Genie
|
||||
* travis: shift forward to Go 1.8 and 1.7
|
||||
* spec/plugins: fix 'ip'->'ips' in the spec, bump to 0.3.1
|
||||
* libcni: Improved error messages.
|
||||
* libcni: Fixed tests that were checking error strings.
|
||||
* Documentation: Added documentation for `cnitool`.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 23 10:20:35 UTC 2017 - opensuse-packaging@opensuse.org
|
||||
|
||||
- Update to version 0.5.1:
|
||||
* readme.md: Add link to community sync
|
||||
* pkg/ip: do not leak types from vendored netlink package
|
||||
* pkg/ip: SetupVeth returns net.Interface
|
||||
* pkg/ip: improve docstring for SetupVeth
|
||||
* Added Romana to list of CNI providers...
|
||||
* plugins/meta/flannel: If net config is missing do not return err on DEL
|
||||
* plugins/*: Don't error if the device doesn't exist
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 22 15:35:19 UTC 2017 - alvaro.saurin@suse.com
|
||||
|
||||
- Update to version 0.5.0:
|
||||
* Documentation: Add conventions doc
|
||||
* noop: allow specifying debug file in config JSON
|
||||
* Spec/Conventions: Update to include plugin config
|
||||
* spec: add network configuration list specification
|
||||
* api,libcni: add network config list-based plugin chaining
|
||||
* Update CONVENTIONS.md
|
||||
* skel: adds PluginMainWithError which returns a *types.Error
|
||||
* testutils: pass netConf in for version operations; pass raw result out for tests
|
||||
* types: make Result an interface and move existing Result to separate package
|
||||
* macvlan/ipvlan: use common RenameLink method
|
||||
* plugins/flannel: organize test JSON alphabetically
|
||||
* pkg/ipam: add testcases
|
||||
* spec/plugins: return interface details and multiple IP addresses to runtime
|
||||
* spec, libcni, pkg/invoke: Use OS-agnostic separator when parsing CNI_PATH
|
||||
* pkg/utils/sysctl/sysctl_linux.go: fix build tag.
|
||||
* pkg/utils/sysctl/sysctl_linux.go: fix typo.
|
||||
* invoke: Enable plugin file names with extensions
|
||||
* CONVENTIONS.md: Update details on port-mappings
|
||||
* Update with feedback
|
||||
* More markups
|
||||
* spec: Remove `routes` from Network Configuration
|
||||
* docs: consolidate host-local documentation
|
||||
* pkg/ns: refactored so that builds succeed on non-linux platforms
|
||||
* Fix grammar
|
||||
* plugins/main/ptp: set the Sandbox property on the response
|
||||
* README: List multus as 3rd party plugin
|
||||
* Replace Michael Bridgen with Bryan Boreham
|
||||
* pkg/ns, pkg/types: refactored non linux build fix code to
|
||||
* pkg/ip: refactored so that builds succeed on non-linux platforms
|
||||
* vendor: Update vishvanana/netlink dependency
|
||||
* libcni: up-convert a Config to a ConfigList when no other configs are found.
|
||||
* docs: CNI versioning for 0.3.0 upgrade
|
||||
* docs: Edits to v0.3.0 upgrade guidance
|
||||
* docs: minor improvements to 0.3.0 upgrade guidance
|
||||
* docs: add small upgrade instructions
|
||||
* docs: minor improvements to spec-upgrades
|
||||
* docs: fill-out and correct version conversion table
|
||||
* docs: table formatting is hard
|
||||
* pkg/testutils: return errors after restoring stdout
|
||||
* pkg/types: misc current types testcase cleanups
|
||||
* Minor rewording about default config version
|
||||
* spec,libcni: add support for injecting runtimeConfig into plugin stdin data
|
||||
* Check n.IPAM before use it in LoadIPAMConfig function
|
||||
* do not error if last_reserved_ip is missing for host local ipam
|
||||
* add test for ensuring initial subnet creation does not contain an error
|
||||
* fix unrelated failing tests
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 01 08:52:47 UTC 2017 - opensuse-packaging@opensuse.org
|
||||
|
||||
- Update to version 0.4.0:
|
||||
* plugins/noop: return a helpful message for test authors
|
||||
* host-local: trim whitespace from container IDs and disk file contents
|
||||
* travis: roll forward the versions of Go that we test
|
||||
* MAINTAINERS: hi CaseyC!
|
||||
* ipam/host-local: Move allocator and config to backend
|
||||
* ipam/host-local: add ResolvConf argument for DNS configuration
|
||||
* spec: notice of version
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 23 12:17:48 UTC 2017 - alvaro.saurin@suse.com
|
||||
|
||||
- Initial version
|
||||
|
||||
|
102
cni.spec
Normal file
102
cni.spec
Normal file
@ -0,0 +1,102 @@
|
||||
#
|
||||
# spec file for package cni
|
||||
#
|
||||
# Copyright (c) 2023 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%global provider_prefix github.com/containernetworking/cni
|
||||
%global import_path %{provider_prefix}
|
||||
%define cni_etc_dir %{_sysconfdir}/cni
|
||||
%define cni_bin_dir %{_libexecdir}/cni
|
||||
%define cni_doc_dir %{_docdir}/cni
|
||||
Name: cni
|
||||
Version: 1.1.2
|
||||
Release: 0
|
||||
Summary: Container Network Interface - networking for Linux containers
|
||||
License: Apache-2.0
|
||||
Group: System/Management
|
||||
URL: https://github.com/containernetworking/cni
|
||||
Source0: %{name}-%{version}.tar.gz
|
||||
Source1: 99-loopback.conf
|
||||
Source2: vendor.tar.gz
|
||||
# PATCH-FIX-UPSTREAM bsc#1206711
|
||||
Patch0: 0001-fix-upstream-CVE-2021-38561.patch
|
||||
BuildRequires: golang-packaging
|
||||
BuildRequires: shadow
|
||||
BuildRequires: systemd-rpm-macros
|
||||
BuildRequires: golang(API) >= 1.21
|
||||
Requires(post): %fillup_prereq
|
||||
Recommends: cni-plugins
|
||||
%{?systemd_requires}
|
||||
|
||||
%description
|
||||
The CNI (Container Network Interface) project consists of a
|
||||
specification and libraries for writing plugins to configure
|
||||
network interfaces in Linux containers, along with a number of
|
||||
supported plugins. CNI concerns itself only with network
|
||||
connectivity of containers and removing allocated resources when
|
||||
the container is deleted. Because of this focus, CNI has a wide
|
||||
range of support and the specification is simple to implement.
|
||||
|
||||
%prep
|
||||
%autosetup -a2 -N
|
||||
pushd vendor/golang.org/x/text
|
||||
%autopatch -p1
|
||||
popd
|
||||
|
||||
%build
|
||||
export GOFLAGS=-mod=vendor
|
||||
%goprep %{import_path}
|
||||
%gobuild libcni
|
||||
%gobuild cnitool
|
||||
for d in plugins/test/*; do
|
||||
if [ -d $d ]; then
|
||||
%gobuild $d
|
||||
fi
|
||||
done
|
||||
|
||||
%install
|
||||
# install the plugins
|
||||
install -m 755 -d %{buildroot}%{cni_bin_dir}
|
||||
install -D %{_builddir}/go/bin/noop %{buildroot}%{cni_bin_dir}/
|
||||
install -D %{_builddir}/go/bin/sleep %{buildroot}%{cni_bin_dir}/
|
||||
|
||||
# undo a copy: cnitool must go to sbin/
|
||||
install -m 755 -d %{buildroot}%{_sbindir}
|
||||
install -D %{_builddir}/go/bin/cnitool %{buildroot}%{_sbindir}/
|
||||
|
||||
# config
|
||||
install -m 755 -d %{buildroot}%{cni_etc_dir}
|
||||
install -m 755 -d %{buildroot}%{cni_etc_dir}/net.d
|
||||
install -D -p -m 0644 %{SOURCE1} %{buildroot}%{cni_etc_dir}/net.d/99-loopback.conf.sample
|
||||
|
||||
# documentation
|
||||
install -m 755 -d "%{buildroot}%{cni_doc_dir}"
|
||||
|
||||
%post
|
||||
%{fillup_only -n %{name}}
|
||||
|
||||
%files
|
||||
%doc CONTRIBUTING.md README.md DCO
|
||||
%license LICENSE
|
||||
%dir %{cni_etc_dir}
|
||||
%dir %{cni_etc_dir}/net.d
|
||||
%config %{cni_etc_dir}/net.d/*
|
||||
%dir %{cni_bin_dir}
|
||||
%dir %{cni_doc_dir}
|
||||
%{cni_bin_dir}/{noop,sleep}
|
||||
%{_sbindir}/cnitool
|
||||
|
||||
%changelog
|
BIN
vendor.tar.gz
(Stored with Git LFS)
Normal file
BIN
vendor.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user