Quantcast
Channel: Hortonworks » All Replies
Viewing all articles
Browse latest Browse all 3435

Creating Thrift Client in C#, getting Error Unsupported mechanism type

$
0
0

I am developing, a thrift client application in c# to connect to the Hadoop HiveServer2. now problem is for setting hive.server2.authentication = NONE, when i connect to the server using SASL, i always receive “Unsupported mechanism type” error…

please let me know what is going on here…

Code C#:


public class TSaslClientTransport : TTransport
{
byte START = 0x01;
byte OK = 0x02;
byte BAD = 0x03;
byte ERROR = 0x04;
byte COMPLETE = 0x05;

protected TTransport underlyingTransport;
byte[] messageHeader = new byte[1 + 4];

public override void Open()
{
SaslPlain plain = new SaslPlain("user", "password");

byte[] initilaResponse = null;
if (plain.HasInitial)
{
initilaResponse = plain.GetResponse(new byte[0]);
}

Byte[] machinism = GetBytes("PLAIN");
messageHeader[0] = START;

encodeBigEndian(machinism.Length, messageHeader, 1);
underlyingTransport.Open();

underlyingTransport.Write(messageHeader);
underlyingTransport.Write(machinism);

underlyingTransport.Flush();

Byte by = plain.IsCompleted ? COMPLETE : OK;

messageHeader[0] = by;

encodeBigEndian(initilaResponse.Length, messageHeader, 1);

underlyingTransport.Write(messageHeader);
underlyingTransport.Write(initilaResponse);

underlyingTransport.Flush();

underlyingTransport.Flush();

var userpass = plain.GetResponse(new byte[0]);
messageHeader[0] = OK;
encodeBigEndian(userpass.Length, messageHeader, 1);
underlyingTransport.Write(messageHeader);
underlyingTransport.Write(userpass);

underlyingTransport.Flush();
}
}


Viewing all articles
Browse latest Browse all 3435

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>