public ReplyData get_public_key(IPAddress remoteIP, int remotePort, List <string> arguments, string body, string method, Dictionary <string, string> Headers) { ReplyData rd = new ReplyData(); Console.WriteLine("====> Request: Get_Public_Key (domain)"); string pub = Session.Instance.DomainsMem.Itms[arguments[0]].Obj.Public_Key; users.users_reply ur = new users.users_reply(); if (pub == "") { ur.status = "fail"; } else { ur.status = "success"; } ur.data = new Dictionary <string, string>(); ur.data.Add("public_key", pub); rd.Status = 200; rd.Body = JsonConvert.SerializeObject(ur); return(rd); }
public ReplyData user_login(IPAddress remoteIP, int remotePort, List <string> args, string body, string method, Dictionary <string, string> Headers) { Console.WriteLine("====> Starting User Login <====="); ReplyData data = new ReplyData(); Login_Reply lr = new Login_Reply(); Dictionary <string, string> arguments = Tools.PostBody2Dict(body); lr.created_at = Tools.getTimestamp(); lr.expires_in = 1 * 24 * 60 * 60; // 1 DAY lr.token_type = "Bearer"; lr.scope = arguments["scope"]; lr.refresh_token = Tools.SHA256Hash(lr.expires_in.ToString() + ";" + remoteIP.ToString() + ";" + arguments["username"]); lr.access_token = Tools.SHA256Hash(Tools.getTimestamp() + ";" + lr.refresh_token); UserAccounts uac = UserAccounts.GetAccounts(); if (uac.Login(arguments["username"], arguments["password"], lr.access_token)) { Console.WriteLine("===> Login success"); data.Body = JsonConvert.SerializeObject(lr); data.Status = 200; return(data); } else { Console.WriteLine("====> Login failed"); users.users_reply failreply = new users.users_reply(); failreply.status = "fail"; failreply.data = new Dictionary <string, string>(); failreply.data.Add("reason", "Unknown"); data.Status = 200; data.Body = JsonConvert.SerializeObject(failreply); return(data); } }