Skip to content

Commit 5aaecb2

Browse files
authored
Revert "Update Thrift dependency version (and generated bindings) (osquery#59)" (osquery#61)
This reverts commit eb3599e. The commit was intended to merge breaking changes from upstream Thrift into the library without causing breakage for our users. This was unsuccessful, and will be reverted until we can implement a suitable strategy.
1 parent eb3599e commit 5aaecb2

File tree

12 files changed

+3467
-2856
lines changed

12 files changed

+3467
-2856
lines changed

Gopkg.lock

Lines changed: 3 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Gopkg.toml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11

22
[[constraint]]
3+
# This version includes concurrency fixes, but excludes changes to the
4+
# library APIs. Using a version beyond this would require users to build the
5+
# Thrift compiler from source to get API-compatible generated code. After the
6+
# next Thrift release, this should become that tagged release (and the code
7+
# generated appropriately).
38
name = "git.apache.org/thrift.git"
4-
version = "0.11.0"
9+
revision = "0dd823580c78a79ae9696eb9b3650e400fff140f"
510

611
[[constraint]]
712
name = "github.com/Microsoft/go-winio"

Makefile

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ deps:
77
dep ensure -vendor-only
88

99
gen: ./osquery.thrift
10+
rm -rf ./gen
1011
mkdir ./gen
1112
thrift --gen go:package_prefix=github.com/kolide/osquery-go/gen/ -out ./gen ./osquery.thrift
1213
rm -rf gen/osquery/extension-remote gen/osquery/extension_manager-remote
@@ -35,7 +36,4 @@ example_config: examples/config/*.go
3536
test: all
3637
go test -race -cover -v $(shell go list ./... | grep -v /vendor/)
3738

38-
clean:
39-
rm -rf ./build ./gen
40-
4139
.PHONY: all

client.go

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package osquery
22

33
import (
4-
"context"
54
"time"
65

76
"github.com/kolide/osquery-go/gen/osquery"
@@ -55,34 +54,34 @@ func (c *ExtensionManagerClient) Close() {
5554

5655
// Ping requests metadata from the extension manager.
5756
func (c *ExtensionManagerClient) Ping() (*osquery.ExtensionStatus, error) {
58-
return c.Client.Ping(context.Background())
57+
return c.Client.Ping()
5958
}
6059

6160
// Call requests a call to an extension (or core) registry plugin.
6261
func (c *ExtensionManagerClient) Call(registry, item string, request osquery.ExtensionPluginRequest) (*osquery.ExtensionResponse, error) {
63-
return c.Client.Call(context.Background(), registry, item, request)
62+
return c.Client.Call(registry, item, request)
6463
}
6564

6665
// Extensions requests the list of active registered extensions.
6766
func (c *ExtensionManagerClient) Extensions() (osquery.InternalExtensionList, error) {
68-
return c.Client.Extensions(context.Background())
67+
return c.Client.Extensions()
6968
}
7069

7170
// RegisterExtension registers the extension plugins with the osquery process.
7271
func (c *ExtensionManagerClient) RegisterExtension(info *osquery.InternalExtensionInfo, registry osquery.ExtensionRegistry) (*osquery.ExtensionStatus, error) {
73-
return c.Client.RegisterExtension(context.Background(), info, registry)
72+
return c.Client.RegisterExtension(info, registry)
7473
}
7574

7675
// Options requests the list of bootstrap or configuration options.
7776
func (c *ExtensionManagerClient) Options() (osquery.InternalOptionList, error) {
78-
return c.Client.Options(context.Background())
77+
return c.Client.Options()
7978
}
8079

8180
// Query requests a query to be run and returns the extension response.
8281
// Consider using the QueryRow or QueryRows helpers for a more friendly
8382
// interface.
8483
func (c *ExtensionManagerClient) Query(sql string) (*osquery.ExtensionResponse, error) {
85-
return c.Client.Query(context.Background(), sql)
84+
return c.Client.Query(sql)
8685
}
8786

8887
// QueryRows is a helper that executes the requested query and returns the
@@ -118,5 +117,5 @@ func (c *ExtensionManagerClient) QueryRow(sql string) (map[string]string, error)
118117

119118
// GetQueryColumns requests the columns returned by the parsed query.
120119
func (c *ExtensionManagerClient) GetQueryColumns(sql string) (*osquery.ExtensionResponse, error) {
121-
return c.Client.GetQueryColumns(context.Background(), sql)
120+
return c.Client.GetQueryColumns(sql)
122121
}

client_test.go

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
package osquery
22

33
import (
4-
"context"
54
"errors"
65
"testing"
76

87
"github.com/kolide/osquery-go/gen/osquery"
9-
"github.com/kolide/osquery-go/mock"
8+
"github.com/kolide/osquery-go/gen/osquery/mock"
109
"github.com/stretchr/testify/assert"
1110
)
1211

@@ -15,7 +14,7 @@ func TestQueryRows(t *testing.T) {
1514
client := &ExtensionManagerClient{Client: mock}
1615

1716
// Transport related error
18-
mock.QueryFunc = func(ctx context.Context, sql string) (*osquery.ExtensionResponse, error) {
17+
mock.QueryFunc = func(sql string) (*osquery.ExtensionResponse, error) {
1918
return nil, errors.New("boom!")
2019
}
2120
rows, err := client.QueryRows("select 1")
@@ -24,7 +23,7 @@ func TestQueryRows(t *testing.T) {
2423
assert.NotNil(t, err)
2524

2625
// Nil status
27-
mock.QueryFunc = func(ctx context.Context, sql string) (*osquery.ExtensionResponse, error) {
26+
mock.QueryFunc = func(sql string) (*osquery.ExtensionResponse, error) {
2827
return &osquery.ExtensionResponse{}, nil
2928
}
3029
rows, err = client.QueryRows("select 1")
@@ -33,7 +32,7 @@ func TestQueryRows(t *testing.T) {
3332
assert.NotNil(t, err)
3433

3534
// Query error
36-
mock.QueryFunc = func(ctx context.Context, sql string) (*osquery.ExtensionResponse, error) {
35+
mock.QueryFunc = func(sql string) (*osquery.ExtensionResponse, error) {
3736
return &osquery.ExtensionResponse{
3837
Status: &osquery.ExtensionStatus{Code: 1, Message: "bad query"},
3938
}, nil
@@ -47,7 +46,7 @@ func TestQueryRows(t *testing.T) {
4746
expectedRows := []map[string]string{
4847
{"1": "1"},
4948
}
50-
mock.QueryFunc = func(ctx context.Context, sql string) (*osquery.ExtensionResponse, error) {
49+
mock.QueryFunc = func(sql string) (*osquery.ExtensionResponse, error) {
5150
return &osquery.ExtensionResponse{
5251
Status: &osquery.ExtensionStatus{Code: 0, Message: "OK"},
5352
Response: expectedRows,
@@ -65,7 +64,7 @@ func TestQueryRows(t *testing.T) {
6564
{"1": "1"},
6665
{"1": "2"},
6766
}
68-
mock.QueryFunc = func(ctx context.Context, sql string) (*osquery.ExtensionResponse, error) {
67+
mock.QueryFunc = func(sql string) (*osquery.ExtensionResponse, error) {
6968
return &osquery.ExtensionResponse{
7069
Status: &osquery.ExtensionStatus{Code: 0, Message: "OK"},
7170
Response: expectedRows,

gen/osquery/GoUnusedProtection__.go

Lines changed: 2 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gen/osquery/mock/osquery.go

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
// Automatically generated by mockimpl. DO NOT EDIT!
2+
3+
package mock
4+
5+
import "github.com/kolide/osquery-go/gen/osquery"
6+
7+
var _ osquery.ExtensionManager = (*ExtensionManager)(nil)
8+
9+
type CloseFunc func()
10+
11+
type PingFunc func() (*osquery.ExtensionStatus, error)
12+
13+
type CallFunc func(registry string, item string, req osquery.ExtensionPluginRequest) (*osquery.ExtensionResponse, error)
14+
15+
type ShutdownFunc func() error
16+
17+
type ExtensionsFunc func() (osquery.InternalExtensionList, error)
18+
19+
type RegisterExtensionFunc func(info *osquery.InternalExtensionInfo, registry osquery.ExtensionRegistry) (*osquery.ExtensionStatus, error)
20+
21+
type DeregisterExtensionFunc func(uuid osquery.ExtensionRouteUUID) (*osquery.ExtensionStatus, error)
22+
23+
type OptionsFunc func() (osquery.InternalOptionList, error)
24+
25+
type QueryFunc func(sql string) (*osquery.ExtensionResponse, error)
26+
27+
type GetQueryColumnsFunc func(sql string) (*osquery.ExtensionResponse, error)
28+
29+
type ExtensionManager struct {
30+
CloseFunc CloseFunc
31+
CloseFuncInvoked bool
32+
33+
PingFunc PingFunc
34+
PingFuncInvoked bool
35+
36+
CallFunc CallFunc
37+
CallFuncInvoked bool
38+
39+
ShutdownFunc ShutdownFunc
40+
ShutdownFuncInvoked bool
41+
42+
ExtensionsFunc ExtensionsFunc
43+
ExtensionsFuncInvoked bool
44+
45+
RegisterExtensionFunc RegisterExtensionFunc
46+
RegisterExtensionFuncInvoked bool
47+
48+
DeregisterExtensionFunc DeregisterExtensionFunc
49+
DeregisterExtensionFuncInvoked bool
50+
51+
OptionsFunc OptionsFunc
52+
OptionsFuncInvoked bool
53+
54+
QueryFunc QueryFunc
55+
QueryFuncInvoked bool
56+
57+
GetQueryColumnsFunc GetQueryColumnsFunc
58+
GetQueryColumnsFuncInvoked bool
59+
}
60+
61+
func (m *ExtensionManager) Close() {
62+
m.CloseFuncInvoked = true
63+
m.CloseFunc()
64+
}
65+
66+
func (m *ExtensionManager) Ping() (*osquery.ExtensionStatus, error) {
67+
m.PingFuncInvoked = true
68+
return m.PingFunc()
69+
}
70+
71+
func (m *ExtensionManager) Call(registry string, item string, req osquery.ExtensionPluginRequest) (*osquery.ExtensionResponse, error) {
72+
m.CallFuncInvoked = true
73+
return m.CallFunc(registry, item, req)
74+
}
75+
76+
func (m *ExtensionManager) Shutdown() error {
77+
m.ShutdownFuncInvoked = true
78+
return m.ShutdownFunc()
79+
}
80+
81+
func (m *ExtensionManager) Extensions() (osquery.InternalExtensionList, error) {
82+
m.ExtensionsFuncInvoked = true
83+
return m.ExtensionsFunc()
84+
}
85+
86+
func (m *ExtensionManager) RegisterExtension(info *osquery.InternalExtensionInfo, registry osquery.ExtensionRegistry) (*osquery.ExtensionStatus, error) {
87+
m.RegisterExtensionFuncInvoked = true
88+
return m.RegisterExtensionFunc(info, registry)
89+
}
90+
91+
func (m *ExtensionManager) DeregisterExtension(uuid osquery.ExtensionRouteUUID) (*osquery.ExtensionStatus, error) {
92+
m.DeregisterExtensionFuncInvoked = true
93+
return m.DeregisterExtensionFunc(uuid)
94+
}
95+
96+
func (m *ExtensionManager) Options() (osquery.InternalOptionList, error) {
97+
m.OptionsFuncInvoked = true
98+
return m.OptionsFunc()
99+
}
100+
101+
func (m *ExtensionManager) Query(sql string) (*osquery.ExtensionResponse, error) {
102+
m.QueryFuncInvoked = true
103+
return m.QueryFunc(sql)
104+
}
105+
106+
func (m *ExtensionManager) GetQueryColumns(sql string) (*osquery.ExtensionResponse, error) {
107+
m.GetQueryColumnsFuncInvoked = true
108+
return m.GetQueryColumnsFunc(sql)
109+
}

gen/osquery/osquery-consts.go

Lines changed: 1 addition & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)