mirror of https://gitlab.com/bashrc2/epicyon
Include port with domain
parent
aa87daa0a1
commit
6c85b39adc
|
@ -66,7 +66,7 @@ followerOfPerson(username,domain,'giraffe','trees.com',federationList)
|
||||||
#sys.exit()
|
#sys.exit()
|
||||||
|
|
||||||
|
|
||||||
privateKeyPem,publicKeyPem,person,wfEndpoint=createPerson(username,domain,https,True)
|
privateKeyPem,publicKeyPem,person,wfEndpoint=createPerson(username,domain,port,https,True)
|
||||||
#deleteAllPosts(username,domain)
|
#deleteAllPosts(username,domain)
|
||||||
setPreferredUsername(username,domain,'badger')
|
setPreferredUsername(username,domain,'badger')
|
||||||
setBio(username,domain,'Some personal info')
|
setBio(username,domain,'Some personal info')
|
||||||
|
|
|
@ -114,7 +114,8 @@ def testHttpsigBase(withDigest):
|
||||||
username='socrates'
|
username='socrates'
|
||||||
domain='argumentative.social'
|
domain='argumentative.social'
|
||||||
https=True
|
https=True
|
||||||
privateKeyPem,publicKeyPem,person,wfEndpoint=createPerson(username,domain,https,False)
|
port=80
|
||||||
|
privateKeyPem,publicKeyPem,person,wfEndpoint=createPerson(username,domain,port,https,False)
|
||||||
messageBodyJson = '{"a key": "a value", "another key": "A string"}'
|
messageBodyJson = '{"a key": "a value", "another key": "A string"}'
|
||||||
if not withDigest:
|
if not withDigest:
|
||||||
headers = {'host': domain}
|
headers = {'host': domain}
|
||||||
|
|
|
@ -21,7 +21,7 @@ def generateRSAKey() -> (str,str):
|
||||||
publicKeyPem = key.publickey().exportKey("PEM").decode("utf-8")
|
publicKeyPem = key.publickey().exportKey("PEM").decode("utf-8")
|
||||||
return privateKeyPem,publicKeyPem
|
return privateKeyPem,publicKeyPem
|
||||||
|
|
||||||
def createPerson(username: str,domain: str,https: bool, saveToFile: bool) -> (str,str,{},{}):
|
def createPerson(username: str,domain: str,port: int,https: bool, saveToFile: bool) -> (str,str,{},{}):
|
||||||
"""Returns the private key, public key, actor and webfinger endpoint
|
"""Returns the private key, public key, actor and webfinger endpoint
|
||||||
"""
|
"""
|
||||||
prefix='https'
|
prefix='https'
|
||||||
|
@ -29,10 +29,14 @@ def createPerson(username: str,domain: str,https: bool, saveToFile: bool) -> (st
|
||||||
prefix='http'
|
prefix='http'
|
||||||
|
|
||||||
privateKeyPem,publicKeyPem=generateRSAKey()
|
privateKeyPem,publicKeyPem=generateRSAKey()
|
||||||
webfingerEndpoint=createWebfingerEndpoint(username,domain,https,publicKeyPem)
|
webfingerEndpoint=createWebfingerEndpoint(username,domain,port,https,publicKeyPem)
|
||||||
if saveToFile:
|
if saveToFile:
|
||||||
storeWebfingerEndpoint(username,domain,webfingerEndpoint)
|
storeWebfingerEndpoint(username,domain,webfingerEndpoint)
|
||||||
|
|
||||||
|
handle=username.lower()+'@'+domain.lower()
|
||||||
|
if port!=80 and port!=443:
|
||||||
|
domain=domain+':'+str(port)
|
||||||
|
|
||||||
newPerson = {'@context': ['https://www.w3.org/ns/activitystreams',
|
newPerson = {'@context': ['https://www.w3.org/ns/activitystreams',
|
||||||
'https://w3id.org/security/v1',
|
'https://w3id.org/security/v1',
|
||||||
{'Emoji': 'toot:Emoji',
|
{'Emoji': 'toot:Emoji',
|
||||||
|
@ -75,7 +79,6 @@ def createPerson(username: str,domain: str,https: bool, saveToFile: bool) -> (st
|
||||||
|
|
||||||
if saveToFile:
|
if saveToFile:
|
||||||
# save person to file
|
# save person to file
|
||||||
handle=username.lower()+'@'+domain.lower()
|
|
||||||
baseDir=os.getcwd()
|
baseDir=os.getcwd()
|
||||||
peopleSubdir='/accounts'
|
peopleSubdir='/accounts'
|
||||||
if not os.path.isdir(baseDir+peopleSubdir):
|
if not os.path.isdir(baseDir+peopleSubdir):
|
||||||
|
|
|
@ -9,6 +9,8 @@ __status__ = "Production"
|
||||||
import requests
|
import requests
|
||||||
import json
|
import json
|
||||||
|
|
||||||
|
baseDirectory=None
|
||||||
|
|
||||||
def createSession(onionRoute: bool):
|
def createSession(onionRoute: bool):
|
||||||
session = requests.session()
|
session = requests.session()
|
||||||
if onionRoute:
|
if onionRoute:
|
||||||
|
@ -42,3 +44,6 @@ def postJson(session,postJsonObject,federationList,inboxUrl: str,headers) -> str
|
||||||
|
|
||||||
postResult = session.post(url = inboxUrl, data = json.dumps(postJsonObject), headers=headers)
|
postResult = session.post(url = inboxUrl, data = json.dumps(postJsonObject), headers=headers)
|
||||||
return postResult.text
|
return postResult.text
|
||||||
|
|
||||||
|
def getBaseDirectory():
|
||||||
|
baseDirectory = os.getcwd()
|
||||||
|
|
|
@ -77,13 +77,16 @@ def storeWebfingerEndpoint(username: str,domain: str,wfJson) -> bool:
|
||||||
commentjson.dump(wfJson, fp, indent=4, sort_keys=False)
|
commentjson.dump(wfJson, fp, indent=4, sort_keys=False)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def createWebfingerEndpoint(username,domain,https,publicKeyPem) -> {}:
|
def createWebfingerEndpoint(username,domain,port,https,publicKeyPem) -> {}:
|
||||||
"""Creates a webfinger endpoint for a user
|
"""Creates a webfinger endpoint for a user
|
||||||
"""
|
"""
|
||||||
prefix='https'
|
prefix='https'
|
||||||
if not https:
|
if not https:
|
||||||
prefix='http'
|
prefix='http'
|
||||||
|
|
||||||
|
if port!=80 and port!=443:
|
||||||
|
domain=domain+':'+str(port)
|
||||||
|
|
||||||
account = {
|
account = {
|
||||||
"aliases": [
|
"aliases": [
|
||||||
prefix+"://"+domain+"/@"+username,
|
prefix+"://"+domain+"/@"+username,
|
||||||
|
|
Loading…
Reference in New Issue