<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="plugin.audio.groove" name="Grooveshark XBMC"
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="plugin.audio.groove" name="Grooveshark XBMC"
- version="2.0.5" provider-name="Stephen Denham">
+ version="2.0.6" provider-name="Stephen Denham">
<requires>
<import addon="xbmc.python" version="2.1.0" />
<import addon="script.module.simplejson"/>
<requires>
<import addon="xbmc.python" version="2.1.0" />
<import addon="script.module.simplejson"/>
<platform>all</platform>
<summary lang="en">Grooveshark addon for XBMC.</summary>
<description lang="en">
<platform>all</platform>
<summary lang="en">Grooveshark addon for XBMC.</summary>
<description lang="en">
- Grooveshark addon for XBMC. You should enter your Grooveshark Anywhere username and password in the addon settings.
+ Grooveshark addon for XBMC. You must enter your Grooveshark Anywhere username and password in the addon settings.
</description>
<license>GNU GENERAL PUBLIC LICENSE. Version 2, June 1991</license>
<email>stephen dot denham at gmail dot com</email>
</description>
<license>GNU GENERAL PUBLIC LICENSE. Version 2, June 1991</license>
<email>stephen dot denham at gmail dot com</email>
+2.0.6
+
+Replace md5 with hashlib.
+
2.0.5
Fix add to playlist.
2.0.5
Fix add to playlist.
# You should have received a copy of the GNU General Public License
# along with xbmc-groove. If not, see <http://www.gnu.org/licenses/>.
# You should have received a copy of the GNU General Public License
# along with xbmc-groove. If not, see <http://www.gnu.org/licenses/>.
-import urllib2, pprint, md5, os, pickle, tempfile, time, re, simplejson, base64, sys, socket
+import urllib2, pprint, os, pickle, tempfile, time, re, simplejson, base64, sys, socket, hashlib
from blowfish import Blowfish
SESSION_EXPIRY = 1209600 # 2 weeks
from blowfish import Blowfish
SESSION_EXPIRY = 1209600 # 2 weeks
_sessionID = ''
_userID = 0
_lastSessionTime = 0
_sessionID = ''
_userID = 0
_lastSessionTime = 0
- _key = md5.new(os.path.basename("GroovesharkAPI.py")).hexdigest()
+ _key = hashlib.md5(os.path.basename("GroovesharkAPI.py")).hexdigest()
_debugging = False
# Constructor
_debugging = False
# Constructor
# Authenticates the user for current API session
def _authenticate(self, login, password):
# Authenticates the user for current API session
def _authenticate(self, login, password):
- md5pwd = md5.new(password).hexdigest()
+ md5pwd = hashlib.md5(password).hexdigest()
params = {'login': login, 'password': md5pwd}
result = self._callRemote('authenticate', params)
params = {'login': login, 'password': md5pwd}
result = self._callRemote('authenticate', params)