Error when trying to restore a directory containing a symlink

When trying to restore a directory containing a symlink via burp-ui the server returns 500 Internal Server Error

  • burp-ui: v0.1.3 (stable)
  • burp: 1.3.48
  • OS: Ubuntu 14.04.4 LTS
  • Python: 2.7.6

File:

lrwxrwxrwx 1 ubuntu ubuntu 34 Mar 16 18:13 md4.c -> openssl-1.0.2e/../crypto/md4/md4.c

Stacktrace:

Error - expected 6389407921797894394 more bytes
--------------------------------------------------------------------------------
ERROR in app [/usr/local/lib/python2.7/dist-packages/burpui/../flask/app.py:1423]:
Exception on /api/restore/archive/node.s/3 [POST]
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/burpui/../flask/app.py", line 1475, in full_dispatch_request
    rv = self.dispatch_request()
  File "/usr/local/lib/python2.7/dist-packages/burpui/../flask/app.py", line 1461, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/usr/local/lib/python2.7/dist-packages/burpui/api/__init__.py", line 125, in decorated_view
    return func(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/burpui/../flask_restplus/api.py", line 310, in wrapper
    resp = resource(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/burpui/../flask/views.py", line 84, in view
    return self.dispatch_request(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/burpui/../flask_restplus/resource.py", line 44, in dispatch_request
    resp = meth(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/burpui/api/restore.py", line 112, in post
    archive, err = api.bui.cli.restore_files(name, backup, l, s, f, p)
  File "/usr/local/lib/python2.7/dist-packages/burpui/misc/backend/burp1.py", line 925, in restore_files
    zfh.append(path, entry)
  File "/usr/local/lib/python2.7/dist-packages/burpui/utils.py", line 168, in append
    self.arch.write(path, arcname)
  File "/usr/lib/python2.7/zipfile.py", line 1118, in write
    st = os.stat(filename)
OSError: [Errno 2] No such file or directory: '/tmp/buiTdEqrY/home/ubuntu/apps/nodejs/node/master/deps/openssl/openssl/apps/md4.c'