15 lines
398 B
Go
15 lines
398 B
Go
package main
|
|
|
|
func mssqlUuidToBigEndian(mssqlUuid []byte) []byte {
|
|
if len(mssqlUuid) != 16 {
|
|
return mssqlUuid
|
|
}
|
|
pgUuid := make([]byte, 16)
|
|
pgUuid[0], pgUuid[1], pgUuid[2], pgUuid[3] = mssqlUuid[3], mssqlUuid[2], mssqlUuid[1], mssqlUuid[0]
|
|
pgUuid[4], pgUuid[5] = mssqlUuid[5], mssqlUuid[4]
|
|
pgUuid[6], pgUuid[7] = mssqlUuid[7], mssqlUuid[6]
|
|
copy(pgUuid[8:], mssqlUuid[8:])
|
|
|
|
return pgUuid
|
|
}
|