summaryrefslogtreecommitdiff
path: root/src/libpiano
AgeCommit message (Collapse)AuthorFilesLines
2017-03-25Switch to #pragma onceLars-Dominik Braun3-9/+3
2017-03-25piano: Replace deprecated json_object_object_getLars-Dominik Braun1-74/+105
2015-08-10Move feature test macros to config.hLars-Dominik Braun5-14/+5
I removed most of the *BSD-related stuff, because I can’t test these. If this breaks your build, send me a patch please.
2015-08-10Add feature to change Pandora settingsLars-Dominik Braun3-0/+72
Currently exposed settings: Username, password and explicit content filter. New key for settings is ‘!’, changeable with “act_settings”. Fixes issues #524 and #506.
2015-04-06Switch back to libcurlLars-Dominik Braun1-6/+11
Drops libwaitress. Adds the new dependency libcurl and drops gnutls. I wouldn’t say writing my own HTTP library was a mistake – it was not and the experience gained was worth it. Instead I have to acknowledge that libcurl is just better than my own implementation. Sure, it does a lot more than HTTP – one could call that bloat. Yet if you just want to get the job done™ reusing code is the way to go. See #512 and #513.
2015-03-07Fix upcoming songs assertion failureLars-Dominik Braun1-1/+1
This should not be an assertion, it is expected to happen. Test with `echo -e "s0\nu" > ctl`. Fixes #509.
2014-07-07piano: Update API doc URLLars-Dominik Braun1-1/+1
2014-06-21piano: Fix segfault in GET_STATION_INFO response parserLars-Dominik Braun1-1/+8
Pandora added two new integer values to the feedback object, which breaks the assumption that all values are arrays. Since we know the names of the interesting keys (thumbsUp and thumbsDown) just use them instead of iterating over all available keys. Fixes #460.
2014-05-08piano: Fix include guard of crypt.hLars-Dominik Braun1-3/+3
Missed that one in 4d8ad7d87072bc1631d0b949930f4869e56b7b99. Fixes #449.
2014-04-22Fix include guardsLars-Dominik Braun2-6/+6
Macros starting with _ are reserved (see http://www.gnu.org/software/libc/manual/html_node/Reserved-Names.html). Fixes #440.
2014-03-14piano: Request track lengthLars-Dominik Braun3-0/+5
The returned length is used as first length estimate before enough audio data arrives to show the real length and for the eventcmd API. See #427 and #64.
2014-01-31Switch to clang for debugging build + fix issuesLars-Dominik Braun2-18/+22
2013-08-07piano: Generic linked listsLars-Dominik Braun5-156/+194
Introduces generic linked list structure and functions (like append, delete, …). Removes a lot of copy&pasted code and improves code readability/reusability. Heads up: This change breaks libpiano’s ABI.
2013-07-28piano: Replace station with same idLars-Dominik Braun1-3/+19
2013-07-02piano: Check for libgcrypt errorsLars-Dominik Braun2-10/+25
Fixes mysterious segfaults from issue #369 and #293.
2013-06-08Fix build in FreeBSDWilliam Grzybowski3-1/+6
2013-03-08piano: Add error message for code 1039Lars-Dominik Braun2-1/+5
See #352.
2012-09-21piano: Fix memory leak pointed out by clangLars-Dominik Braun1-0/+2
2012-07-06Add feature: Create new station from selected songLars-Dominik Braun2-5/+35
New keybinding ‘v’, new setting act_createstationfromsong.
2012-06-26piano: Remove move songLars-Dominik Braun3-59/+0
Doesn’t work with JSON API. See #280.
2012-06-14piano: Remove unused structLars-Dominik Braun2-11/+4
2012-06-09piano: Select quality instead of audio formatLars-Dominik Braun4-36/+46
Pandora limited the audio formats we can request explicitly. Don’t rely on this and use the formats available with the given partner credentials. Closes #271.
2012-06-07piano: More error messagesLars-Dominik Braun2-1/+9
2012-06-06piano: Error message for LICENSING_RESTRICTIONSLars-Dominik Braun1-0/+5
Closes #272
2012-05-23piano: Fix ambiguous error message/return valueLars-Dominik Braun3-0/+17
Closes #263.
2012-05-11piano: Add stationToken to addFeedback requestLars-Dominik Braun1-0/+3
Fixes thumbs up/down and move song.
2012-05-06piano: Fix memory leakLars-Dominik Braun1-8/+9
2012-05-06piano: Fix insane strcpyLars-Dominik Braun1-11/+29
2012-05-04Lofi AAC supportLars-Dominik Braun2-1/+6
32kbit/s. Closes #233.
2012-05-02piano: Bring back detailUrl and coverArtLars-Dominik Braun1-0/+2
2012-05-02Really delete seed suggestionsLars-Dominik Braun3-52/+0
There does not seem to be an API call for that.
2012-05-02piano: Audio format supportLars-Dominik Braun3-27/+29
Ask Pandora for audio format requested by user. Closes #244.
2012-05-01piano: Remove old blowfish keysLars-Dominik Braun2-436/+0
2012-05-01Don’t hardcode passwordsLars-Dominik Braun6-31/+64
It’s a bad idea to hardcode these, although playback does not work with non-android login yet.
2012-05-01piano: Split piano.c into request.c and response.cLars-Dominik Braun5-1099/+1169
2012-05-01piano: Move to JSON API (v5)Lars-Dominik Braun5-1710/+749
In random order: Thanks to Chris Eby for his work on pithos, to an anonymous coward for sending me his Android client, to Alex Howard for sending me the webOS client, to ZigZagJoe for providing a temporary fix and thanks to everyone who sent Pandora a message. Although there are a few rough edges here and there this fixes #236.
2012-01-20piano: DAILY_SKIP_LIMIT_REACHED addedLars-Dominik Braun3-0/+7
See #214
2012-01-20piano: Make sync response parser NUL-byte awareLars-Dominik Braun4-20/+26
Fixes #207
2012-01-13piano: New error EXCESSIVE_ACTIVITYLars-Dominik Braun3-0/+7
See #208
2012-01-10getFragment does not support TLS any moreLars-Dominik Braun2-0/+7
You can’t handle the load? Closes #202
2011-12-24Fix warnings found by -Wwrite-stringsLars-Dominik Braun1-3/+4
Can’t fix all of them; ezxml is a mess :(
2011-12-23Fix warnings found by -Wcast-qualLars-Dominik Braun1-4/+4
2011-12-23Fix warnings found by -Wmissing-declarationsLars-Dominik Braun4-19/+23
2011-12-08piano: Fix memsetLars-Dominik Braun1-1/+1
See #192
2011-11-21piano: Update authenticateListener parametersLars-Dominik Braun1-0/+8
There are a few more parameters which I did not notice, since Pandora uses a strange JSON API (which returns XML!) for authentication now. See issue #187.
2011-11-09piano: Protocol version bump (v33)Lars-Dominik Braun4-253/+235
addFeedback call changed. Input keys changed. Thanks to ZigZagJoe. Closes #171
2011-10-22piano: A few more assertionsLars-Dominik Braun1-0/+8
2011-10-22Support seed stationsLars-Dominik Braun3-4/+38
Fixes #165
2011-09-22piano: Protocol version bump (v32)Lars-Dominik Braun3-51/+47
Keys stay the same. Quickmix and seed suggestion API calls changed. Listener id is not part of the url any more. Bookmark API calls seem to be deprecated.
2011-07-15piano: Check for exception only in ParseSimpleLars-Dominik Braun1-13/+3
Fixes false bookmarking error message (bookmarking still worked). Closes #140