Jonathan Turner 8 лет назад
Родитель
Сommit
7ab64be085
96 измененных файлов с 332 добавлено и 333 удалено
  1. 7 7
      README.md
  2. 12 12
      client/ASExchange.go
  3. 4 4
      client/TGSExchange.go
  4. 2 2
      client/cache.go
  5. 9 9
      client/client.go
  6. 4 4
      client/client_ad_integration_test.go
  7. 5 5
      client/client_integration_test.go
  8. 5 5
      client/http.go
  9. 2 2
      client/network.go
  10. 4 4
      client/session.go
  11. 1 1
      config/krb5conf.go
  12. 1 1
      credentials/ccache.go
  13. 3 3
      credentials/ccache_test.go
  14. 3 3
      credentials/credentials.go
  15. 5 5
      crypto/aes128-cts-hmac-sha1-96.go
  16. 2 2
      crypto/aes128-cts-hmac-sha1-96_test.go
  17. 4 4
      crypto/aes128-cts-hmac-sha256-128.go
  18. 2 2
      crypto/aes128-cts-hmac-sha256-128_test.go
  19. 5 5
      crypto/aes256-cts-hmac-sha1-96.go
  20. 2 2
      crypto/aes256-cts-hmac-sha1-96_test.go
  21. 4 4
      crypto/aes256-cts-hmac-sha384-192.go
  22. 2 2
      crypto/aes256-cts-hmac-sha384-192_test.go
  23. 1 1
      crypto/common/common.go
  24. 5 5
      crypto/crypto.go
  25. 5 5
      crypto/des3-cbc-sha1-kd.go
  26. 4 4
      crypto/rc4-hmac.go
  27. 2 2
      crypto/rfc3961/encryption.go
  28. 2 3
      crypto/rfc3961/keyDerivation.go
  29. 2 2
      crypto/rfc3962/encryption.go
  30. 1 1
      crypto/rfc3962/keyDerivation.go
  31. 1 1
      crypto/rfc4757/encryption.go
  32. 3 3
      crypto/rfc8009/encryption.go
  33. 2 2
      crypto/rfc8009/keyDerivation.go
  34. 6 6
      examples/example-AD.go
  35. 8 8
      examples/example.go
  36. 4 4
      examples/httpServer.go
  37. 3 3
      gssapi/NegotiationToken.go
  38. 4 4
      gssapi/gssapi.go
  39. 7 7
      gssapi/krb5Token.go
  40. 5 5
      gssapi/krb5Token_test.go
  41. 1 1
      keytab/keytab.go
  42. 4 4
      messages/APRep.go
  43. 2 2
      messages/APRep_test.go
  44. 9 9
      messages/APReq.go
  45. 2 2
      messages/APReq_test.go
  46. 10 10
      messages/KDCRep.go
  47. 5 5
      messages/KDCRep_test.go
  48. 12 12
      messages/KDCReq.go
  49. 2 2
      messages/KDCReq_test.go
  50. 6 6
      messages/KRBCred.go
  51. 2 2
      messages/KRBCred_test.go
  52. 6 6
      messages/KRBError.go
  53. 2 2
      messages/KRBError_test.go
  54. 4 4
      messages/KRBPriv.go
  55. 2 2
      messages/KRBPriv_test.go
  56. 4 4
      messages/KRBSafe.go
  57. 2 2
      messages/KRBSafe_test.go
  58. 17 17
      messages/Ticket.go
  59. 3 3
      messages/Ticket_test.go
  60. 1 1
      mstypes/claims_set_metadata.go
  61. 1 1
      mstypes/filetime.go
  62. 1 1
      mstypes/group_membership.go
  63. 1 1
      mstypes/kerb_sid_and_attributes.go
  64. 1 1
      mstypes/rpc_unicode_string.go
  65. 1 1
      mstypes/sid.go
  66. 1 1
      mstypes/user_session_key.go
  67. 2 2
      pac/client_claims.go
  68. 2 2
      pac/client_info.go
  69. 1 1
      pac/client_info_test.go
  70. 5 5
      pac/credentials_info.go
  71. 2 2
      pac/device_claims.go
  72. 2 2
      pac/device_info.go
  73. 2 2
      pac/kerb_validation_info.go
  74. 2 2
      pac/kerb_validation_info_test.go
  75. 1 1
      pac/pac_info_buffer.go
  76. 4 4
      pac/pac_type.go
  77. 2 2
      pac/pac_type_test.go
  78. 2 2
      pac/s4u_delegation_info.go
  79. 2 2
      pac/signature_data.go
  80. 2 2
      pac/signature_data_test.go
  81. 1 1
      pac/upn_dns_info.go
  82. 1 1
      pac/upn_dns_info_test.go
  83. 9 9
      service/APExchange.go
  84. 10 10
      service/APExchange_test.go
  85. 5 5
      service/authenticator.go
  86. 1 1
      service/cache.go
  87. 2 2
      service/http.go
  88. 7 7
      service/http_test.go
  89. 3 3
      types/Authenticator.go
  90. 1 1
      types/Authenticator_test.go
  91. 1 1
      types/AuthorizationData_test.go
  92. 1 1
      types/Cryptosystem_test.go
  93. 1 1
      types/KerberosFlags_test.go
  94. 1 1
      types/PAData.go
  95. 1 1
      types/PAData_test.go
  96. 1 1
      types/TypedData_test.go

+ 7 - 7
README.md

@@ -1,13 +1,13 @@
 # gokrb5
-[![GoDoc](https://godoc.org/gopkg.in/jcmturner/gokrb5.v2?status.svg)](https://godoc.org/gopkg.in/jcmturner/gokrb5.v2) [![Go Report Card](https://goreportcard.com/badge/gopkg.in/jcmturner/gokrb5.v2)](https://goreportcard.com/report/gopkg.in/jcmturner/gokrb5.v2) [![Build Status](https://travis-ci.org/jcmturner/gokrb5.svg?branch=master)](https://travis-ci.org/jcmturner/gokrb5)
+[![GoDoc](https://godoc.org/gopkg.in/jcmturner/gokrb5.v3?status.svg)](https://godoc.org/gopkg.in/jcmturner/gokrb5.v3) [![Go Report Card](https://goreportcard.com/badge/gopkg.in/jcmturner/gokrb5.v3)](https://goreportcard.com/report/gopkg.in/jcmturner/gokrb5.v3) [![Build Status](https://travis-ci.org/jcmturner/gokrb5.svg?branch=master)](https://travis-ci.org/jcmturner/gokrb5)
 
 To get the package, execute:
 ```
-go get gopkg.in/jcmturner/gokrb5.v2
+go get gopkg.in/jcmturner/gokrb5.v3
 ```
 To import this package, add the following line to your code:
 ```go
-import "gopkg.in/jcmturner/gokrb5.v2/<sub package>"
+import "gopkg.in/jcmturner/gokrb5.v3/<sub package>"
 
 ```
 
@@ -51,7 +51,7 @@ Currently the following is working/tested:
 The gokrb5 libraries use the same krb5.conf configuration file format as MIT Kerberos, described [here](https://web.mit.edu/kerberos/krb5-latest/doc/admin/conf_files/krb5_conf.html).
 Config instances can be created by loading from a file path or by passing a string, io.Reader or bufio.Scanner to the relevant method:
 ```go
-import "gopkg.in/jcmturner/gokrb5.v2/config"
+import "gopkg.in/jcmturner/gokrb5.v3/config"
 cfg, err := config.Load("/path/to/config/file")
 cfg, err := config.NewConfigFromString(krb5Str) //String must have appropriate newline separations
 cfg, err := config.NewConfigFromReader(reader)
@@ -60,7 +60,7 @@ cfg, err := config.NewConfigFromScanner(scanner)
 ### Keytab files
 Standard keytab files can be read from a file or from a slice of bytes:
 ```go
-import 	"gopkg.in/jcmturner/gokrb5.v2/keytab"
+import 	"gopkg.in/jcmturner/gokrb5.v3/keytab"
 ktFromFile, err := keytab.Load("/path/to/file.keytab")
 ktFromBytes, err := keytab.Parse(b)
 
@@ -71,7 +71,7 @@ ktFromBytes, err := keytab.Parse(b)
 ### Kerberos Client
 Create a client instance with either a password or a keytab:
 ```go
-import 	"gopkg.in/jcmturner/gokrb5.v2/client"
+import 	"gopkg.in/jcmturner/gokrb5.v3/client"
 cl := client.NewClientWithPassword("username", "REALM.COM", "password")
 cl := client.NewClientWithKeytab("username", "REALM.COM", kt)
 
@@ -186,7 +186,7 @@ if validuser, ok := ctx.Value(service.CTXKeyAuthenticated).(bool); ok && validus
 #### Generic Kerberised Service - Validating Client Details
 To validate the AP_REQ sent by the client on the service side call this method:
 ```go
-import 	"gopkg.in/jcmturner/gokrb5.v2/service"
+import 	"gopkg.in/jcmturner/gokrb5.v3/service"
 if ok, creds, err := service.ValidateAPREQ(mt.APReq, kt, r.RemoteAddr); ok {
         // Perform application specifc actions
         // creds object has details about the client identity

+ 12 - 12
client/ASExchange.go

@@ -1,14 +1,14 @@
 package client
 
 import (
-	"gopkg.in/jcmturner/gokrb5.v2/crypto"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/etype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/errorcode"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/keyusage"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/patype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/etype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/errorcode"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/keyusage"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/patype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 // ASExchange performs an AS exchange for the client to retrieve a TGT.
@@ -83,21 +83,21 @@ func setPAData(cl *Client, krberr messages.KRBError, ASReq *messages.ASReq) erro
 		if err != nil {
 			return krberror.Errorf(err, krberror.KRBMsgError, "Error creating PAEncTSEnc for Pre-Authentication")
 		}
-		var etype etype.EType
+		var et etype.EType
 		if krberr.ErrorCode == 0 {
 			// This is not in response to an error from the KDC. It is preemptive
-			etype, err = crypto.GetEtype(ASReq.ReqBody.EType[0]) // Take the first as preference
+			et, err = crypto.GetEtype(ASReq.ReqBody.EType[0]) // Take the first as preference
 			if err != nil {
 				return krberror.Errorf(err, krberror.EncryptingError, "error getting etype for pre-auth encryption")
 			}
 		} else {
 			// Get the etype to use from the PA data in the KRBError e-data
-			etype, err = preAuthEType(krberr)
+			et, err = preAuthEType(krberr)
 			if err != nil {
 				return krberror.Errorf(err, krberror.EncryptingError, "error getting etype for pre-auth encryption")
 			}
 		}
-		key, err := cl.Key(etype, krberr)
+		key, err := cl.Key(et, krberr)
 		if err != nil {
 			return krberror.Errorf(err, krberror.EncryptingError, "Error getting key from credentials")
 		}

+ 4 - 4
client/TGSExchange.go

@@ -4,10 +4,10 @@ import (
 	"strings"
 	"time"
 
-	"gopkg.in/jcmturner/gokrb5.v2/iana/nametype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/nametype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 // TGSExchange performs a TGS exchange to retrieve a ticket to the specified SPN.

+ 2 - 2
client/cache.go

@@ -1,8 +1,8 @@
 package client
 
 import (
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"strings"
 	"sync"
 	"time"

+ 9 - 9
client/client.go

@@ -5,15 +5,15 @@ import (
 	"errors"
 	"fmt"
 
-	"gopkg.in/jcmturner/gokrb5.v2/config"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/etype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/errorcode"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/nametype"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/config"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/etype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/errorcode"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/nametype"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 // Client side configuration and state.

+ 4 - 4
client/client_ad_integration_test.go

@@ -6,10 +6,10 @@ package client
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/config"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/config"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 )
 

+ 5 - 5
client/client_integration_test.go

@@ -10,11 +10,11 @@ import (
 	"testing"
 
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/config"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/config"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 )
 
 func TestClient_SuccessfulLogin_Keytab(t *testing.T) {

+ 5 - 5
client/http.go

@@ -3,11 +3,11 @@ package client
 import (
 	"encoding/base64"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/gssapi"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/gssapi"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"net/http"
 	"strings"
 )

+ 2 - 2
client/network.go

@@ -6,8 +6,8 @@ import (
 	"errors"
 	"fmt"
 	"gopkg.in/jcmturner/dnsutils.v1"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/errorcode"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/errorcode"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
 	"io"
 	"math/rand"
 	"net"

+ 4 - 4
client/session.go

@@ -5,10 +5,10 @@ import (
 	"sync"
 	"time"
 
-	"gopkg.in/jcmturner/gokrb5.v2/iana/nametype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/nametype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 // Sessions keyed on the realm name

+ 1 - 1
config/krb5conf.go

@@ -15,7 +15,7 @@ import (
 	"time"
 
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
 )
 
 // Config represents the KRB5 configuration.

+ 1 - 1
credentials/ccache.go

@@ -5,7 +5,7 @@ import (
 	"encoding/binary"
 	"errors"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"io/ioutil"
 	"strings"
 	"time"

+ 3 - 3
credentials/ccache_test.go

@@ -3,9 +3,9 @@ package credentials
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/nametype"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/nametype"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"testing"
 )
 

+ 3 - 3
credentials/credentials.go

@@ -3,9 +3,9 @@ package credentials
 
 import (
 	"github.com/hashicorp/go-uuid"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/nametype"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/nametype"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"strings"
 	"time"
 )

+ 5 - 5
crypto/aes128-cts-hmac-sha1-96.go

@@ -4,11 +4,11 @@ import (
 	"crypto/aes"
 	"crypto/hmac"
 	"crypto/sha1"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc3961"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc3962"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/chksumtype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc3961"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc3962"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/chksumtype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
 	"hash"
 )
 

+ 2 - 2
crypto/aes128-cts-hmac-sha1-96_test.go

@@ -3,8 +3,8 @@ package crypto
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc3962"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc3962"
 	"testing"
 )
 

+ 4 - 4
crypto/aes128-cts-hmac-sha256-128.go

@@ -4,10 +4,10 @@ import (
 	"crypto/aes"
 	"crypto/hmac"
 	"crypto/sha256"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc8009"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/chksumtype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc8009"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/chksumtype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
 	"hash"
 )
 

+ 2 - 2
crypto/aes128-cts-hmac-sha256-128_test.go

@@ -3,8 +3,8 @@ package crypto
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc8009"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc8009"
 	"testing"
 )
 

+ 5 - 5
crypto/aes256-cts-hmac-sha1-96.go

@@ -4,11 +4,11 @@ import (
 	"crypto/aes"
 	"crypto/hmac"
 	"crypto/sha1"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc3961"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc3962"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/chksumtype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc3961"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc3962"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/chksumtype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
 	"hash"
 )
 

+ 2 - 2
crypto/aes256-cts-hmac-sha1-96_test.go

@@ -3,8 +3,8 @@ package crypto
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc3962"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc3962"
 	"testing"
 )
 

+ 4 - 4
crypto/aes256-cts-hmac-sha384-192.go

@@ -4,10 +4,10 @@ import (
 	"crypto/aes"
 	"crypto/hmac"
 	"crypto/sha512"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc8009"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/chksumtype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc8009"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/chksumtype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
 	"hash"
 )
 

+ 2 - 2
crypto/aes256-cts-hmac-sha384-192_test.go

@@ -3,8 +3,8 @@ package crypto
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc8009"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc8009"
 	"testing"
 )
 

+ 1 - 1
crypto/common/common.go

@@ -8,7 +8,7 @@ import (
 	"encoding/hex"
 	"errors"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/etype"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/etype"
 )
 
 // ZeroPad pads bytes with zeros to nearest multiple of message size m.

+ 5 - 5
crypto/crypto.go

@@ -4,11 +4,11 @@ package crypto
 import (
 	"encoding/hex"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/etype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/chksumtype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/patype"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/etype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/chksumtype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/patype"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 // GetEtype returns an instances of the required etype struct for the etype ID.

+ 5 - 5
crypto/des3-cbc-sha1-kd.go

@@ -5,10 +5,10 @@ import (
 	"crypto/hmac"
 	"crypto/sha1"
 	"errors"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc3961"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/chksumtype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc3961"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/chksumtype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
 	"hash"
 )
 
@@ -149,7 +149,7 @@ func (e Des3CbcSha1Kd) DecryptData(key, data []byte) ([]byte, error) {
 }
 
 // DecryptMessage decrypts the message provided and verifies the integrity of the message.
-func (e Des3CbcSha1Kd) DecryptMessage(key, ciphertext []byte, usage uint32) (message []byte, err error) {
+func (e Des3CbcSha1Kd) DecryptMessage(key, ciphertext []byte, usage uint32) ([]byte, error) {
 	return rfc3961.DES3DecryptMessage(key, ciphertext, usage, e)
 }
 

+ 4 - 4
crypto/rc4-hmac.go

@@ -4,10 +4,10 @@ import (
 	"bytes"
 	"crypto/md5"
 	"golang.org/x/crypto/md4"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc3961"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/rfc4757"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/chksumtype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc3961"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/rfc4757"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/chksumtype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
 	"hash"
 	"io"
 )

+ 2 - 2
crypto/rfc3961/encryption.go

@@ -8,8 +8,8 @@ import (
 	"crypto/rand"
 	"errors"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/etype"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/etype"
 )
 
 // DES3EncryptData encrypts the data provided using DES3 and methods specific to the etype provided.

+ 2 - 3
crypto/rfc3961/keyDerivation.go

@@ -1,12 +1,11 @@
 package rfc3961
 
 import (
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/etype"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/etype"
 )
 
 const (
-	prfconstant   = "prf"
-	s2kParamsZero = 4294967296
+	prfconstant = "prf"
 )
 
 // DeriveRandom implements the RFC 3961 defined function: DR(Key, Constant) = k-truncate(E(Key, Constant, initial-cipher-state)).

+ 2 - 2
crypto/rfc3962/encryption.go

@@ -6,8 +6,8 @@ import (
 	"errors"
 	"fmt"
 	aescts "gopkg.in/jcmturner/aescts.v1"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/etype"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/etype"
 )
 
 // EncryptData encrypts the data provided using methods specific to the etype provided as defined in RFC 3962.

+ 1 - 1
crypto/rfc3962/keyDerivation.go

@@ -5,7 +5,7 @@ import (
 	"encoding/hex"
 	"errors"
 	"github.com/jcmturner/gofork/x/crypto/pbkdf2"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/etype"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/etype"
 )
 
 const (

+ 1 - 1
crypto/rfc4757/encryption.go

@@ -7,7 +7,7 @@ import (
 	"crypto/rc4"
 	"errors"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/etype"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/etype"
 )
 
 // EncryptData encrypts the data provided using methods specific to the etype provided as defined in RFC 4757.

+ 3 - 3
crypto/rfc8009/encryption.go

@@ -8,9 +8,9 @@ import (
 	"errors"
 	"fmt"
 	aescts "gopkg.in/jcmturner/aescts.v1"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/common"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/etype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/common"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/etype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
 )
 
 // EncryptData encrypts the data provided using methods specific to the etype provided as defined in RFC 8009.

+ 2 - 2
crypto/rfc8009/keyDerivation.go

@@ -6,8 +6,8 @@ import (
 	"encoding/hex"
 	"errors"
 	"golang.org/x/crypto/pbkdf2"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto/etype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto/etype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
 )
 
 const (

+ 6 - 6
examples/example-AD.go

@@ -5,12 +5,12 @@ package main
 import (
 	"encoding/hex"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/client"
-	"gopkg.in/jcmturner/gokrb5.v2/config"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/service"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/client"
+	"gopkg.in/jcmturner/gokrb5.v3/config"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/service"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"io/ioutil"
 	"log"
 	"net/http"

+ 8 - 8
examples/example.go

@@ -5,12 +5,12 @@ package main
 import (
 	"encoding/hex"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/client"
-	"gopkg.in/jcmturner/gokrb5.v2/config"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/service"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/client"
+	"gopkg.in/jcmturner/gokrb5.v3/config"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/service"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"io/ioutil"
 	"log"
 	"net/http"
@@ -28,8 +28,8 @@ If this does not suit your setup then you will need to set the IP addresses for
 You will also need to update the IPs referenced in the testdata/test_vectors.go file in the TEST_KRB5CONF constant.
 
 Before running execute the following commands (note that the KDC can take a long time to start up):
-cd $GOPATH/src/gopkg.in/jcmturner/gokrb5.v2/testenv/krb5kdc-vagrant && vagrant up
-cd $GOPATH/src/gopkg.in/jcmturner/gokrb5.v2/testenv/krbhttp-vagrant && vagrant up
+cd $GOPATH/src/gopkg.in/jcmturner/gokrb5.v3/testenv/krb5kdc-vagrant && vagrant up
+cd $GOPATH/src/gopkg.in/jcmturner/gokrb5.v3/testenv/krbhttp-vagrant && vagrant up
 */
 func main() {
 	s := httpServer()

+ 4 - 4
examples/httpServer.go

@@ -5,10 +5,10 @@ package main
 import (
 	"encoding/hex"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/service"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/service"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"log"
 	"net/http"
 	"os"

+ 3 - 3
gssapi/NegotiationToken.go

@@ -4,9 +4,9 @@ import (
 	"errors"
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 /*

+ 4 - 4
gssapi/gssapi.go

@@ -5,10 +5,10 @@ import (
 	"errors"
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/asn1tools"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/asn1tools"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 // SPNEGO_OID is the OID for SPNEGO header type.

+ 7 - 7
gssapi/krb5Token.go

@@ -6,13 +6,13 @@ import (
 	"errors"
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/asn1tools"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/chksumtype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/asn1tools"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/chksumtype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 // GSSAPI MechToken IDs and flags.

+ 5 - 5
gssapi/krb5Token_test.go

@@ -3,11 +3,11 @@ package gssapi
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"math"
 	"testing"
 )

+ 1 - 1
keytab/keytab.go

@@ -6,7 +6,7 @@ import (
 	"encoding/binary"
 	"errors"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"io/ioutil"
 	"time"
 	"unsafe"

+ 4 - 4
messages/APRep.go

@@ -3,10 +3,10 @@ package messages
 import (
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/asnAppTag"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/asnAppTag"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"time"
 )
 

+ 2 - 2
messages/APRep_test.go

@@ -3,8 +3,8 @@ package messages
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 	"time"
 )

+ 9 - 9
messages/APReq.go

@@ -3,15 +3,15 @@ package messages
 import (
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/asn1tools"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto"
-	"gopkg.in/jcmturner/gokrb5.v2/iana"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/asnAppTag"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/keyusage"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/nametype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/asn1tools"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto"
+	"gopkg.in/jcmturner/gokrb5.v3/iana"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/asnAppTag"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/keyusage"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/nametype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 /*AP-REQ          ::= [APPLICATION 14] SEQUENCE {

+ 2 - 2
messages/APReq_test.go

@@ -3,8 +3,8 @@ package messages
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 )
 

+ 10 - 10
messages/KDCRep.go

@@ -6,16 +6,16 @@ package messages
 import (
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/config"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/asnAppTag"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/flags"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/keyusage"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/patype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/config"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/asnAppTag"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/flags"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/keyusage"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/patype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"time"
 )
 

+ 5 - 5
messages/KDCRep_test.go

@@ -4,11 +4,11 @@ import (
 	"encoding/hex"
 	"fmt"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/etypeID"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/etypeID"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 	"time"
 )

+ 12 - 12
messages/KDCReq.go

@@ -11,18 +11,18 @@ import (
 	"time"
 
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/asn1tools"
-	"gopkg.in/jcmturner/gokrb5.v2/config"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto"
-	"gopkg.in/jcmturner/gokrb5.v2/iana"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/asnAppTag"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/flags"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/keyusage"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/nametype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/patype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/asn1tools"
+	"gopkg.in/jcmturner/gokrb5.v3/config"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto"
+	"gopkg.in/jcmturner/gokrb5.v3/iana"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/asnAppTag"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/flags"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/keyusage"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/nametype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/patype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 type marshalKDCReq struct {

+ 2 - 2
messages/KDCReq_test.go

@@ -5,8 +5,8 @@ import (
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 	"time"
 )

+ 6 - 6
messages/KRBCred.go

@@ -3,12 +3,12 @@ package messages
 import (
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/asnAppTag"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/keyusage"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/asnAppTag"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/keyusage"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"time"
 )
 

+ 2 - 2
messages/KRBCred_test.go

@@ -4,8 +4,8 @@ import (
 	"encoding/hex"
 	"fmt"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 	"time"
 )

+ 6 - 6
messages/KRBError.go

@@ -4,12 +4,12 @@ package messages
 import (
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/iana"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/asnAppTag"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/errorcode"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/iana"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/asnAppTag"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/errorcode"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"time"
 )
 

+ 2 - 2
messages/KRBError_test.go

@@ -3,8 +3,8 @@ package messages
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 	"time"
 )

+ 4 - 4
messages/KRBPriv.go

@@ -3,10 +3,10 @@ package messages
 import (
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/asnAppTag"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/asnAppTag"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"time"
 )
 

+ 2 - 2
messages/KRBPriv_test.go

@@ -3,8 +3,8 @@ package messages
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 	"time"
 )

+ 4 - 4
messages/KRBSafe.go

@@ -3,10 +3,10 @@ package messages
 import (
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/asnAppTag"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/asnAppTag"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"time"
 )
 

+ 2 - 2
messages/KRBSafe_test.go

@@ -3,8 +3,8 @@ package messages
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/msgtype"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/msgtype"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 	"time"
 )

+ 17 - 17
messages/Ticket.go

@@ -4,17 +4,17 @@ import (
 	"crypto/rand"
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/asn1tools"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto"
-	"gopkg.in/jcmturner/gokrb5.v2/iana"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/adtype"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/asnAppTag"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/errorcode"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/keyusage"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/pac"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/asn1tools"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto"
+	"gopkg.in/jcmturner/gokrb5.v3/iana"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/adtype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/asnAppTag"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/errorcode"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/keyusage"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/pac"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"time"
 )
 
@@ -220,10 +220,10 @@ func (t *Ticket) GetPACType(keytab keytab.Keytab, sa string) (bool, pac.PACType,
 			}
 			if ad2[0].ADType == adtype.ADWin2KPAC {
 				isPAC = true
-				var pac pac.PACType
-				err = pac.Unmarshal(ad2[0].ADData)
+				var p pac.PACType
+				err = p.Unmarshal(ad2[0].ADData)
 				if err != nil {
-					return isPAC, pac, fmt.Errorf("Error unmarshaling PAC: %v", err)
+					return isPAC, p, fmt.Errorf("Error unmarshaling PAC: %v", err)
 				}
 				var upn []string
 				if sa != "" {
@@ -233,10 +233,10 @@ func (t *Ticket) GetPACType(keytab keytab.Keytab, sa string) (bool, pac.PACType,
 				}
 				key, err := keytab.GetEncryptionKey(upn, t.Realm, t.EncPart.KVNO, t.EncPart.EType)
 				if err != nil {
-					return isPAC, pac, NewKRBError(t.SName, t.Realm, errorcode.KRB_AP_ERR_NOKEY, fmt.Sprintf("Could not get key from keytab: %v", err))
+					return isPAC, p, NewKRBError(t.SName, t.Realm, errorcode.KRB_AP_ERR_NOKEY, fmt.Sprintf("Could not get key from keytab: %v", err))
 				}
-				err = pac.ProcessPACInfoBuffers(key)
-				return isPAC, pac, err
+				err = p.ProcessPACInfoBuffers(key)
+				return isPAC, p, err
 			}
 		}
 	}

+ 3 - 3
messages/Ticket_test.go

@@ -4,9 +4,9 @@ import (
 	"encoding/hex"
 	"fmt"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"testing"
 	"time"
 )

+ 1 - 1
mstypes/claims_set_metadata.go

@@ -2,7 +2,7 @@ package mstypes
 
 import (
 	"encoding/binary"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // ClaimsSetMetadata implements https://msdn.microsoft.com/en-us/library/hh554073.aspx

+ 1 - 1
mstypes/filetime.go

@@ -3,7 +3,7 @@ package mstypes
 
 import (
 	"encoding/binary"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 	"time"
 )
 

+ 1 - 1
mstypes/group_membership.go

@@ -2,7 +2,7 @@ package mstypes
 
 import (
 	"encoding/binary"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // GroupMembership implements https://msdn.microsoft.com/en-us/library/cc237945.aspx

+ 1 - 1
mstypes/kerb_sid_and_attributes.go

@@ -2,7 +2,7 @@ package mstypes
 
 import (
 	"encoding/binary"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // Attributes of a security group membership and can be combined by using the bitwise OR operation.

+ 1 - 1
mstypes/rpc_unicode_string.go

@@ -2,7 +2,7 @@ package mstypes
 
 import (
 	"encoding/binary"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // RPCUnicodeString implements https://msdn.microsoft.com/en-us/library/cc230365.aspx

+ 1 - 1
mstypes/sid.go

@@ -4,7 +4,7 @@ import (
 	"encoding/binary"
 	"encoding/hex"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // RPCSID implements https://msdn.microsoft.com/en-us/library/cc230364.aspx

+ 1 - 1
mstypes/user_session_key.go

@@ -2,7 +2,7 @@ package mstypes
 
 import (
 	"encoding/binary"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // CypherBlock implements https://msdn.microsoft.com/en-us/library/cc237040.aspx

+ 2 - 2
pac/client_claims.go

@@ -2,8 +2,8 @@ package pac
 
 import (
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/mstypes"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/mstypes"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // ClientClaimsInfo implements https://msdn.microsoft.com/en-us/library/hh536365.aspx

+ 2 - 2
pac/client_info.go

@@ -2,8 +2,8 @@ package pac
 
 import (
 	"encoding/binary"
-	"gopkg.in/jcmturner/gokrb5.v2/mstypes"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/mstypes"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // ClientInfo implements https://msdn.microsoft.com/en-us/library/cc237951.aspx

+ 1 - 1
pac/client_info_test.go

@@ -3,7 +3,7 @@ package pac
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 	"time"
 )

+ 5 - 5
pac/credentials_info.go

@@ -3,11 +3,11 @@ package pac
 import (
 	"encoding/binary"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/keyusage"
-	"gopkg.in/jcmturner/gokrb5.v2/mstypes"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/keyusage"
+	"gopkg.in/jcmturner/gokrb5.v3/mstypes"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 // https://msdn.microsoft.com/en-us/library/cc237931.aspx

+ 2 - 2
pac/device_claims.go

@@ -2,8 +2,8 @@ package pac
 
 import (
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/mstypes"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/mstypes"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // DeviceClaimsInfo implements https://msdn.microsoft.com/en-us/library/hh554226.aspx

+ 2 - 2
pac/device_info.go

@@ -2,8 +2,8 @@ package pac
 
 import (
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/mstypes"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/mstypes"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // DeviceInfo implements https://msdn.microsoft.com/en-us/library/hh536402.aspx

+ 2 - 2
pac/kerb_validation_info.go

@@ -4,8 +4,8 @@ package pac
 import (
 	"errors"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/mstypes"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/mstypes"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // KERB_VALIDATION_INFO flags.

+ 2 - 2
pac/kerb_validation_info_test.go

@@ -3,8 +3,8 @@ package pac
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/mstypes"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/mstypes"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 	"time"
 )

+ 1 - 1
pac/pac_info_buffer.go

@@ -2,7 +2,7 @@ package pac
 
 import (
 	"encoding/binary"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 const (

+ 4 - 4
pac/pac_type.go

@@ -4,10 +4,10 @@ import (
 	"encoding/binary"
 	"errors"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/keyusage"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/keyusage"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 )
 
 // PACType implements: https://msdn.microsoft.com/en-us/library/cc237950.aspx

+ 2 - 2
pac/pac_type_test.go

@@ -4,8 +4,8 @@ import (
 	"encoding/hex"
 	"fmt"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 )
 

+ 2 - 2
pac/s4u_delegation_info.go

@@ -2,8 +2,8 @@ package pac
 
 import (
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/mstypes"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/mstypes"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 // S4UDelegationInfo implements https://msdn.microsoft.com/en-us/library/cc237944.aspx

+ 2 - 2
pac/signature_data.go

@@ -2,8 +2,8 @@ package pac
 
 import (
 	"encoding/binary"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/chksumtype"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/chksumtype"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 )
 
 /*

+ 2 - 2
pac/signature_data_test.go

@@ -3,8 +3,8 @@ package pac
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/chksumtype"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/chksumtype"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 )
 

+ 1 - 1
pac/upn_dns_info.go

@@ -2,7 +2,7 @@ package pac
 
 import (
 	"encoding/binary"
-	"gopkg.in/jcmturner/gokrb5.v2/ndr"
+	"gopkg.in/jcmturner/gokrb5.v3/ndr"
 	"sort"
 )
 

+ 1 - 1
pac/upn_dns_info_test.go

@@ -3,7 +3,7 @@ package pac
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 )
 

+ 9 - 9
service/APExchange.go

@@ -2,15 +2,15 @@ package service
 
 import (
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/crypto"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/errorcode"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/flags"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/keyusage"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/krberror"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/crypto"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/errorcode"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/flags"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/keyusage"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/krberror"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"time"
 )
 

+ 10 - 10
service/APExchange_test.go

@@ -3,16 +3,16 @@ package service
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/client"
-	"gopkg.in/jcmturner/gokrb5.v2/config"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/errorcode"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/flags"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/nametype"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/client"
+	"gopkg.in/jcmturner/gokrb5.v3/config"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/errorcode"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/flags"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/nametype"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"testing"
 	"time"
 )

+ 5 - 5
service/authenticator.go

@@ -5,11 +5,11 @@ import (
 	"errors"
 	"fmt"
 	goidentity "gopkg.in/jcmturner/goidentity.v1"
-	"gopkg.in/jcmturner/gokrb5.v2/client"
-	"gopkg.in/jcmturner/gokrb5.v2/config"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/gssapi"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/client"
+	"gopkg.in/jcmturner/gokrb5.v3/config"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/gssapi"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
 	"strings"
 	"time"
 )

+ 1 - 1
service/cache.go

@@ -2,7 +2,7 @@
 package service
 
 import (
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"sync"
 	"time"
 )

+ 2 - 2
service/http.go

@@ -4,8 +4,8 @@ import (
 	"context"
 	"encoding/base64"
 	"fmt"
-	"gopkg.in/jcmturner/gokrb5.v2/gssapi"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/gssapi"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
 	"log"
 	"net/http"
 	"strings"

+ 7 - 7
service/http_test.go

@@ -4,13 +4,13 @@ import (
 	"encoding/hex"
 	"fmt"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/client"
-	"gopkg.in/jcmturner/gokrb5.v2/credentials"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/nametype"
-	"gopkg.in/jcmturner/gokrb5.v2/keytab"
-	"gopkg.in/jcmturner/gokrb5.v2/messages"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
-	"gopkg.in/jcmturner/gokrb5.v2/types"
+	"gopkg.in/jcmturner/gokrb5.v3/client"
+	"gopkg.in/jcmturner/gokrb5.v3/credentials"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/nametype"
+	"gopkg.in/jcmturner/gokrb5.v3/keytab"
+	"gopkg.in/jcmturner/gokrb5.v3/messages"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/types"
 	"io/ioutil"
 	"log"
 	"net/http"

+ 3 - 3
types/Authenticator.go

@@ -5,9 +5,9 @@ import (
 	"crypto/rand"
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/asn1tools"
-	"gopkg.in/jcmturner/gokrb5.v2/iana"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/asnAppTag"
+	"gopkg.in/jcmturner/gokrb5.v3/asn1tools"
+	"gopkg.in/jcmturner/gokrb5.v3/iana"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/asnAppTag"
 	"math"
 	"math/big"
 	"time"

+ 1 - 1
types/Authenticator_test.go

@@ -4,7 +4,7 @@ import (
 	"encoding/hex"
 	"fmt"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 	"time"
 )

+ 1 - 1
types/AuthorizationData_test.go

@@ -4,7 +4,7 @@ import (
 	"encoding/hex"
 	"fmt"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 )
 

+ 1 - 1
types/Cryptosystem_test.go

@@ -3,7 +3,7 @@ package types
 import (
 	"encoding/hex"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 )
 

+ 1 - 1
types/KerberosFlags_test.go

@@ -3,7 +3,7 @@ package types
 import (
 	"github.com/jcmturner/gofork/encoding/asn1"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/flags"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/flags"
 	"testing"
 )
 

+ 1 - 1
types/PAData.go

@@ -5,7 +5,7 @@ package types
 import (
 	"fmt"
 	"github.com/jcmturner/gofork/encoding/asn1"
-	"gopkg.in/jcmturner/gokrb5.v2/iana/patype"
+	"gopkg.in/jcmturner/gokrb5.v3/iana/patype"
 	"time"
 )
 

+ 1 - 1
types/PAData_test.go

@@ -4,7 +4,7 @@ import (
 	"encoding/hex"
 	"fmt"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 	"time"
 )

+ 1 - 1
types/TypedData_test.go

@@ -4,7 +4,7 @@ import (
 	"encoding/hex"
 	"fmt"
 	"github.com/stretchr/testify/assert"
-	"gopkg.in/jcmturner/gokrb5.v2/testdata"
+	"gopkg.in/jcmturner/gokrb5.v3/testdata"
 	"testing"
 )