X-Git-Url: https://git.r.bdr.sh/rbdr/mobius/blobdiff_plain/eabc4b6cacc4749db226af272e71fcff1556f433..b196a50a44a5c72fc43df39fce4407d05ec8863b:/hotline/field.go diff --git a/hotline/field.go b/hotline/field.go index 7955fe3..2be4c4a 100644 --- a/hotline/field.go +++ b/hotline/field.go @@ -16,7 +16,8 @@ const fieldRefNum = 107 const fieldTransferSize = 108 const fieldChatOptions = 109 const fieldUserAccess = 110 -//const fieldUserAlias = 111 TODO: implement + +// const fieldUserAlias = 111 TODO: implement const fieldUserFlags = 112 const fieldOptions = 113 const fieldChatID = 114 @@ -28,6 +29,8 @@ const fieldServerName = 162 const fieldFileNameWithInfo = 200 const fieldFileName = 201 const fieldFilePath = 202 +const fieldFileResumeData = 203 +const fieldFileTransferOptions = 204 const fieldFileTypeString = 205 const fieldFileCreatorString = 206 const fieldFileSize = 207 @@ -37,7 +40,7 @@ const fieldFileComment = 210 const fieldFileNewName = 211 const fieldFileNewPath = 212 const fieldFileType = 213 -const fieldQuotingMsg = 214 // Defined but unused in the Hotline Protocol spec +const fieldQuotingMsg = 214 const fieldAutomaticResponse = 215 const fieldFolderItemCount = 220 const fieldUsernameWithInfo = 300 @@ -87,3 +90,12 @@ func NewField(id uint16, data []byte) Field { func (f Field) Payload() []byte { return concat.Slices(f.ID, f.FieldSize, f.Data) } + +func getField(id int, fields *[]Field) *Field { + for _, field := range *fields { + if id == int(binary.BigEndian.Uint16(field.ID)) { + return &field + } + } + return nil +}