about summary refs log tree commit diff stats
Commit message (Expand)AuthorAgeFilesLines
...
* 7699Kartik K. Agaram2021-02-082-11/+442
* 7698 - starting to test-drive baremetal shellKartik Agaram2021-02-074-5/+259
* 7697Kartik Agaram2021-02-071-4/+6
* 7696Kartik Agaram2021-02-071-1/+0
* 7695 - baremetal: second bg assertion for spacesKartik Agaram2021-02-071-1/+60
* 7694 - baremetal: asserting bg color in testsKartik Agaram2021-02-072-7/+103
* 7693 - baremetal: pass background color everywhereKartik Agaram2021-02-0714-117/+137
* 7692Kartik Agaram2021-02-073-6/+33
* 7691Kartik Agaram2021-02-072-5/+21
* 7690Kartik Agaram2021-02-0751-662/+662
* 7689 - permit metadata on Mu literal integersKartik Agaram2021-02-062-0/+33
* 7688Kartik Agaram2021-02-061-1/+1
* 7687Kartik Agaram2021-02-051-0/+3
* 7686Kartik Agaram2021-02-041-2/+2
* 7685Kartik Agaram2021-02-032-739/+727
* 7684 - baremetal will have no mouseKartik Agaram2021-02-032-8/+9
* 7683Kartik Agaram2021-02-011-1/+1
* 7682Kartik Agaram2021-02-012-32/+20
* 7681Kartik Agaram2021-02-011-4/+3
* 7680Kartik Agaram2021-01-319-624/+681
* 7679 - baremetal: delete mouse handlerKartik Agaram2021-01-311-203/+14
* 7678Kartik Agaram2021-01-301-0/+1
* 7677Kartik Agaram2021-01-301-48/+0
* 7676Kartik Agaram2021-01-301-3/+5
* 7675 - drop Travis CIKartik Agaram2021-01-282-26/+0
* 7674 - beginning of mouse driverKartik Agaram2021-01-281-12/+199
* 7673Kartik Agaram2021-01-282-2/+2
* 7672Kartik Agaram2021-01-272-51/+55
* 7671Kartik Agaram2021-01-275-53/+56
* 7670Kartik Agaram2021-01-271-23/+24
* 7569Kartik Agaram2021-01-271-2/+10
* 7568Kartik Agaram2021-01-271-0/+5
* 7567 - baremetal: shift-key supportKartik Agaram2021-01-273-31/+119
* 7566Kartik Agaram2021-01-271-3/+3
* 7565Kartik Agaram2021-01-241-1/+1
* 7564Kartik Agaram2021-01-241-18/+16
* 7563Kartik Agaram2021-01-241-45/+13
* 7562 - bochs working againKartik Agaram2021-01-242-24/+28
* 7561Kartik Agaram2021-01-241-11/+35
* 7560Kartik Agaram2021-01-241-1/+1
* 7559 - reorganize sectors built in raw hexKartik Agaram2021-01-2410-148/+273
* 7558Kartik Agaram2021-01-244-63/+63
* 7557Kartik Agaram2021-01-241-1/+1
* 7556Kartik Agaram2021-01-242-2/+2
* 7555 - snapshotKartik Agaram2021-01-241-13/+30
* 7554 - bug in an error handlerKartik Agaram2021-01-241-1/+1
* 7553Kartik Agaram2021-01-241-1/+17
* 7552 - I better understand a couple of thingsKartik Agaram2021-01-232-232/+256
* 7551Kartik Agaram2021-01-232-4/+4
* 7550Kartik Agaram2021-01-232-155/+153
.lower(name) if headers[name] then headers[name] = headers[name] .. ", " .. value else headers[name] = value end end end return headers end function _M.parse_from(from) local _, __, name, address = string.find(from, "^%s*(.-)%s*%<(.-)%>") if not address then _, __, address = string.find(from, "%s*(.+)%s*") end name = name or "" address = address or "" if name == "" then name = address end name = string.gsub(name, '"', "") return name, address end function _M.split_mbox(mbox_s) local mbox = {} mbox_s = string.gsub(mbox_s, "\r\n", "\n") .."\n\nFrom \n" local nj, i, j = 1, 1, 1 while 1 do i, nj = string.find(mbox_s, "\n\nFrom .-\n", j) if not i then break end local message = string.sub(mbox_s, j, i-1) table.insert(mbox, message) j = nj+1 end return mbox end function _M.parse(mbox_s) local mbox = _M.split_mbox(mbox_s) for i = 1, #mbox do mbox[i] = _M.parse_message(mbox[i]) end return mbox end function _M.parse_message(message_s) local message = {} message.headers, message.body = _M.split_message(message_s) message.headers = _M.parse_headers(message.headers) return message end return _M